[SOLVED] TSC on Atom CPU and downscaling CPU frequency
#1
I have been trying a setup consisting of an I3 laptop as a roon server and a Jetway NF9C atom board as a renderer running roonbridge.  more detail is available here https://www.stereo.net.au/forums/topic/8.../?page=124 
Some suggestions on the thread have been to use tsc as the timer and this is possible on the I3 but not on the Atom board


so@so-desktop:~$ dmesg | grep -i tsc
[    0.000000] tsc: Fast TSC calibration using PIT
[    0.000000] tsc: Detected 1862.228 MHz processor
[    0.355395] TSC synchronization [CPU#0 -> CPU#1]:
[    0.355397] Measured 64869 cycles TSC warp between CPUs, turning off TSC clock.
[    0.355403] tsc: Marking TSC unstable due to check_tsc_sync_source failed
[    0.654091] clocksource: tsc: mask: 0xffffffffffffffff max_cycles: 0x35af94fd872, max_idle_ns: 881590752918 ns

I tried another atom board with similar result. Is this an atom issue or SO?

Another suggestion was to underclock the CPU, this didnt seem possible within SO. Is it or will it be possibe?
 Go to solution Reply

#2
(16-Sep-2018, 10:35 PM)frednork Wrote: I have been trying a setup consisting of an I3 laptop as a roon server and a Jetway NF9C atom board as a renderer running roonbridge.  more detail is available here https://www.stereo.net.au/forums/topic/8.../?page=124 
Some suggestions on the thread have been to use tsc as the timer and this is possible on the I3 but not on the Atom board


so@so-desktop:~$ dmesg | grep -i tsc
[    0.000000] tsc: Fast TSC calibration using PIT
[    0.000000] tsc: Detected 1862.228 MHz processor
[    0.355395] TSC synchronization [CPU#0 -> CPU#1]:
[    0.355397] Measured 64869 cycles TSC warp between CPUs, turning off TSC clock.
[    0.355403] tsc: Marking TSC unstable due to check_tsc_sync_source failed
[    0.654091] clocksource: tsc: mask: 0xffffffffffffffff max_cycles: 0x35af94fd872, max_idle_ns: 881590752918 ns

I tried another atom board with similar result. Is this an atom issue or SO?

Another suggestion was to underclock the CPU, this didnt seem possible within SO. Is it or will it be possibe?
Did you disable hyper-threading in your NF9C?

This message "Measured 64869 cycles TSC warp between CPUs, turning off TSC clock." means the time isn't sync'ed across the CPUs. i.e. CPU A is reporting the time as X, CPU B is reporting time at that moment is 64869 cycles after X.

My stereo is out of commision at the moment as my PSAudio P5 can't power up so can't test this out atm. It could be a linux kernel issue or a system one, can't be sure at the moment.

But for now, try the following:
  1. Disable all power saving options in the BIOS
  2. Look for HyperThreading and turn it off.
  3. Make sure HPET is turned on in the BIOS (You can still tell Linux to use TSC even with this on).
If you can, generate a diagnostic file with all the options set above and send it to me to have a look.
Snakeoil Operating System - Music, your way!
Reply

#3
(17-Sep-2018, 08:41 AM)agent_kith Wrote:
(16-Sep-2018, 10:35 PM)frednork Wrote: I have been trying a setup consisting of an I3 laptop as a roon server and a Jetway NF9C atom board as a renderer running roonbridge.  more detail is available here https://www.stereo.net.au/forums/topic/8.../?page=124 
Some suggestions on the thread have been to use tsc as the timer and this is possible on the I3 but not on the Atom board


so@so-desktop:~$ dmesg | grep -i tsc
[    0.000000] tsc: Fast TSC calibration using PIT
[    0.000000] tsc: Detected 1862.228 MHz processor
[    0.355395] TSC synchronization [CPU#0 -> CPU#1]:
[    0.355397] Measured 64869 cycles TSC warp between CPUs, turning off TSC clock.
[    0.355403] tsc: Marking TSC unstable due to check_tsc_sync_source failed
[    0.654091] clocksource: tsc: mask: 0xffffffffffffffff max_cycles: 0x35af94fd872, max_idle_ns: 881590752918 ns

I tried another atom board with similar result. Is this an atom issue or SO?

Another suggestion was to underclock the CPU, this didnt seem possible within SO. Is it or will it be possibe?
Did you disable hyper-threading in your NF9C?

This message "Measured 64869 cycles TSC warp between CPUs, turning off TSC clock." means the time isn't sync'ed across the CPUs. i.e. CPU A is reporting the time as X, CPU B is reporting time at that moment is 64869 cycles after X.

My stereo is out of commision at the moment as my PSAudio P5 can't power up so can't test this out atm. It could be a linux kernel issue or a system one, can't be sure at the moment.

But for now, try the following:
  1. Disable all power saving options in the BIOS
  2. Look for HyperThreading and turn it off.
  3. Make sure HPET is turned on in the BIOS (You can still tell Linux to use TSC even with this on).
If you can, generate a diagnostic file with all the options set above and send it to me to have a look. 

Thanks for your reply,

1, 2 and 3 were already done.

Have sent the diagnostics file
Reply

#4
Can confirm the same behaviour in my own setup. Pretty sure this is the cause:
 
Code:
clocksource: Override clocksource tsc is not HRT compatible - cannot switch while in HRT/NOHZ mode

Snakeoil is using what is called a 'TICKLESS' kernel. Probably this is the cause.. Give me a few days to experiment and work out a solution. This will likely use another kernel..
Snakeoil Operating System - Music, your way!
[-] The following 1 user Likes agent_kith's post:
  • frednork
Reply

#5
Apologies.. Went out today to listen to a great HT setup. And then went out with the Mrs and only just got back home. So unfortunately can't do the kernel thing, but will try and test this tomorrow if not the day after.
Snakeoil Operating System - Music, your way!
[-] The following 1 user Likes agent_kith's post:
  • frednork
Reply

#6
@frednork 

Download the 300 Hz kernel, install it and reboot your PC. Now see if TSC is working. If you don't see this in the list, generate a diagnostics file and send it over. thanks.
Snakeoil Operating System - Music, your way!
Reply

#7
(25-Sep-2018, 08:08 PM)agent_kith Wrote: @frednork 

Download the 300 Hz kernel, install it and reboot your PC. Now see if TSC is working. If you don't see this in the list, generate a diagnostics file and send it over. thanks.
Thanks for that

Still not in list

might be a mixup with the kernel names. I couldnt load the i86 but could the amd

get
dmesg | grep -i tsc
[    0.000000] tsc: Fast TSC calibration using PIT
[    0.000000] tsc: Detected 2133.441 MHz processor
[    0.205515] TSC synchronization [CPU#0 -> CPU#1]:
[    0.205516] Measured 13912360 cycles TSC warp between CPUs, turning off TSC clock.
[    0.205522] tsc: Marking TSC unstable due to check_tsc_sync_source failed
[    0.336518] clocksource: tsc: mask: 0xffffffffffffffff max_cycles: 0x1ec0970ffc0, max_idle_ns: 440795262269 ns

Will send the diagnostic over

Cheers
Reply

#8
(26-Sep-2018, 09:05 AM)frednork Wrote: Thanks for that

Still not in list

might be a mixup with the kernel names. I couldnt load the i86 but could the amd
That's normal. Snakeoil comes in 32 bit and 64 bit variants. Since you're running the 64 bit edition, the AMD file will work, but the i686 one will not. (It's a convention I guess, folks called it amd because this is company releases the first 64 bit chip, and the name stuck).


(26-Sep-2018, 09:05 AM)frednork Wrote: get
dmesg | grep -i tsc
[    0.000000] tsc: Fast TSC calibration using PIT
[    0.000000] tsc: Detected 2133.441 MHz processor
[    0.205515] TSC synchronization [CPU#0 -> CPU#1]:
[    0.205516] Measured 13912360 cycles TSC warp between CPUs, turning off TSC clock.
[    0.205522] tsc: Marking TSC unstable due to check_tsc_sync_source failed
[    0.336518] clocksource: tsc: mask: 0xffffffffffffffff max_cycles: 0x1ec0970ffc0, max_idle_ns: 440795262269 ns

Will send the diagnostic over
Got that. So it seems the TSC just can't be sync'ed properly across the 2 CPUs. I'd play with the code abit and get back to you on another test. In the meantime, try this 300 Hz kernel and report back on the SQ. Let me know if it subjectively if it sounds better, worse or no difference.
Snakeoil Operating System - Music, your way!
Reply

#9
@frednork  Re-download and upload the amd64 version of the 300 Hz kernel and reboot. Let me know how it goes..
Snakeoil Operating System - Music, your way!
Reply

#10
(26-Sep-2018, 05:20 PM)agent_kith Wrote: @frednork  Re-download and upload the amd64 version of the 300 Hz kernel and reboot. Let me know how it goes..

Thanks again!

Unfortunately it doesnt load

Expanding kernel file...

*** ERROR *** Invalid Snakeoil OS kernel
Reply



Bookmarks

Possibly Related Threads…
Thread Author Replies Views Last Post
  [SOLVEDSamsung NB30 Atom laptop Marvell 88E8040 NIC slavedata 5 3,693 06-Jun-2018, 05:16 AM
Last Post: slavedata
  [SOLVEDread_cfg problem when running 64 bit 0.1.4 on atom system rab 13 13,374 11-Jun-2016, 05:21 PM
Last Post: agent_kith



Users browsing this thread:
1 Guest(s)

[-]
Our Sponsors

[-]
Welcome
You have to register before you can post on our site.

Username/Email:


Password:





[-]
Latest Threads
Snakeoil 1.4.3 (High End U3)
Last Post: stereodave
Today 03:42 PM
» Replies: 36
» Views: 1297
Normal/Inverted Phase Playback
Last Post: hkphantomgtr
Today 02:53 PM
» Replies: 12
» Views: 3595
CamillaDSP for Room Correction
Last Post: Snoopy8
Today 01:53 PM
» Replies: 33
» Views: 10009
Work In Progress: 1.4.4
Last Post: agent_kith
23-Apr-2025 11:35 AM
» Replies: 13
» Views: 270
Wiki update - need your help!
Last Post: Snoopy8
22-Apr-2025 02:23 PM
» Replies: 7
» Views: 181
No audio devices on RPi5 with latests bu...
Last Post: miksi
21-Apr-2025 12:52 AM
» Replies: 16
» Views: 444
new install issues
Last Post: Snoopy8
19-Apr-2025 01:08 PM
» Replies: 7
» Views: 190
Connecting Spotify to SnakeOil
Last Post: Snoopy8
16-Apr-2025 01:55 PM
» Replies: 10
» Views: 267
Misc. sharing for building Raspberry Pi ...
Last Post: hkphantomgtr
13-Apr-2025 12:47 PM
» Replies: 2
» Views: 116
[split] Snakeoil 1.4.3 (High End U3)
Last Post: agent_kith
09-Apr-2025 03:45 PM
» Replies: 1
» Views: 79

[-]
SnakeoilOS Mission Statement

Our mission is to create a free to use computer OS that is easy to install, intuitive to operate and play music that will connect and engage with you emotionally.

SnakeoilOS gives you the freedom to spend more time on listening, enjoying and exploring music. Wasting time on computers is now a thing of the past! Everything is constantly evolving/improving. Please check back often for updates.

If you like this project, do show your support with a small token donation. All donations collected will be used to run this website, and for purchasing new equipment for the project.


Powered By MyBB, © 2002-2025. Theme © Melroy van den Berg.