Snakeoil Forums

Full Version: Latency from Cyclic Test in NUC
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2
(24-Apr-2022, 08:33 PM)Valery Wrote: [ -> ]My computer is an aluminum box with an internal SSD, there is also an external HDD connected via a USB port. Intel Celeron N3050 Processor. RAM DDR3 4Gb.
[Image: my-fanless-pc.jpg]

Thanks for your info, Valery! Shy

(25-Apr-2022, 12:53 AM)koko6969koki Wrote: [ -> ]
(25-Apr-2022, 12:15 AM)hkphantomgtr Wrote: [ -> ]
(24-Apr-2022, 10:32 PM)koko6969koki Wrote: [ -> ] 

Thanks a lot for your reply, koko6969koki.  Would you please kindly use this command to run the cyclic test again to display in us (10^-6, = millisecond / 1000) ?  Shy

No problem!

I'm not a Linux expert, so I just found some cyclictest commands example online.
Can you tell me the full cyclictest commands expression that you wish me to perform? Everything from "sudo" to the end. Smile

koko6969koki, Thanks again, and I'm sorry that I've forgotten to paste the command.  Here you are.

cyclictest -t4 -p 80 -N -n -i 10000 -l 10000 -q

Then it looks stop responding for about 1 minute.  It's normal and then it will show u the result.  If you need to break it, just press Ctrl-C.  

I'm really appreciate your info.  Nuc looks promising.  BTW, are you running your NUC in fanless chassis or just with the orginal chassis (got a fan inside)?
[b]hkphantomgtr[/b],
Here are my results with the required settings:

snake@snake:~$ sudo cyclictest -t4 -p 80 -N -n -i 10000 -l 10000 -q
[sudo] password for snake:
# /dev/cpu_dma_latency set to 0us
T: 0 ( 1941) P:80 I:10000 C:  10000 Min:   2086 Act:    2467 Avg:    7128 Max:   38399
T: 1 ( 1942) P:80 I:10500 C:   9526 Min:   1844 Act:    2715 Avg:    9458 Max:   53700
T: 2 ( 1943) P:80 I:11000 C:   9093 Min:   1818 Act:    2587 Avg:    5362 Max:   38266
T: 3 ( 1944) P:80 I:11500 C:   8698 Min:   2058 Act:    2918 Avg:    8304 Max:   41602

My NUC is in its original case with a fan.
I was thinking of a fanless case, but I like original NUC's form factor that sits well in my rack.
Am using an Intel NUC 8I5BEH in its original case.  Fan does not go on because of its very low load while running SnakeOil.  Have a linear power supply to power NUC as well as an external USB card.

BIOS tweaks include turning off hyperthreading, multicore scheduling, turbo boost, secure boot, unused USB ports, SATA port, HD Audio, WLAN, Bluetooth, Virtualisation.  If not using HDMI port, can also turn that off.

A slightly different cyclictest, while using Mpd and playing music:

$ sudo cyclictest -t4 -p 90 -N -s -i 10000 -l 10000 -q

T: 0 (102034) P:90 I:10000 C:  10000 Min:   2003 Act:    2263 Avg:    2258 Max:    5748
T: 1 (102035) P:90 I:10500 C:   9526 Min:   2146 Act:    2913 Avg:    2343 Max:    5747
T: 2 (102036) P:90 I:11000 C:   9093 Min:   2181 Act:    2794 Avg:    2426 Max:    6335
T: 3 (102037) P:90 I:11500 C:   8697 Min:   2473 Act:    3033 Avg:    2774 Max:    5383

Have built my own RT kernel (5.10.41-rt42) and also using CPUset to optimise processes across CPUs
https://www.snakeoil-os.net/forums/Threa...-processes
and CamillaDSP for convolution (DSP)
https://www.snakeoil-os.net/forums/Threa...Correction
Plus tweaking of process priorities.
(27-Apr-2022, 03:14 AM)koko6969koki Wrote: [ -> ][b]hkphantomgtr[/b],
Here are my results with the required settings:

snake@snake:~$ sudo cyclictest -t4 -p 80 -N -n -i 10000 -l 10000 -q
[sudo] password for snake:
# /dev/cpu_dma_latency set to 0us
T: 0 ( 1941) P:80 I:10000 C:  10000 Min:   2086 Act:    2467 Avg:    7128 Max:   38399
T: 1 ( 1942) P:80 I:10500 C:   9526 Min:   1844 Act:    2715 Avg:    9458 Max:   53700
T: 2 ( 1943) P:80 I:11000 C:   9093 Min:   1818 Act:    2587 Avg:    5362 Max:   38266
T: 3 ( 1944) P:80 I:11500 C:   8698 Min:   2058 Act:    2918 Avg:    8304 Max:   41602

My NUC is in its original case with a fan.
I was thinking of a fanless case, but I like original NUC's form factor that sits well in my rack.

Thanks for your info, koko6969koki.  Pls check these fanless NUC chassis, such as Akasa Thermal Solution.  Without the fan your NUC will sing a lot better.
BTW, did you measure the latency after stop playing? Shy

(27-Apr-2022, 04:09 PM)Snoopy8 Wrote: [ -> ]Am using an Intel NUC 8I5BEH in its original case.  Fan does not go on because of its very low load while running SnakeOil.  Have a linear power supply to power NUC as well as an external USB card.

BIOS tweaks include turning off hyperthreading, multicore scheduling, turbo boost, secure boot, unused USB ports, SATA port, HD Audio, WLAN, Bluetooth, Virtualisation.  If not using HDMI port, can also turn that off.

A slightly different cyclictest, while using Mpd and playing music:

$ sudo cyclictest -t4 -p 90 -N -s -i 10000 -l 10000 -q

T: 0 (102034) P:90 I:10000 C:  10000 Min:   2003 Act:    2263 Avg:    2258 Max:    5748
T: 1 (102035) P:90 I:10500 C:   9526 Min:   2146 Act:    2913 Avg:    2343 Max:    5747
T: 2 (102036) P:90 I:11000 C:   9093 Min:   2181 Act:    2794 Avg:    2426 Max:    6335
T: 3 (102037) P:90 I:11500 C:   8697 Min:   2473 Act:    3033 Avg:    2774 Max:    5383

Have built my own RT kernel (5.10.41-rt42) and also using CPUset to optimise processes across CPUs
https://www.snakeoil-os.net/forums/Threa...-processes
and CamillaDSP for convolution (DSP)
https://www.snakeoil-os.net/forums/Threa...Correction
Plus tweaking of process priorities.

Thanks a lot, Snoopy8.  Your value is so wonderful!!!  And I wish you would try the fanless chassis.  At least a heavier chassis reduces the resonance and vibration a lot, esp. when the sound is loud. Shy

BTW, I'll have my NUC soon. Haydn Music Server – Ediscreation  Shy
(27-Apr-2022, 09:55 PM)hkphantomgtr Wrote: [ -> ]And I wish you would try the fanless chassis.  At least a heavier chassis reduces the resonance and vibration a lot, esp. when the sound is loud. Shy
I am using Isoacoustics pucks and stands to reduce resonance and vibration throughout the music chain. Thus, adding a fanless chassis for the NUC will not do much.
FYI, I can score similar latency with TSC clocksource.  Yet with the same CMOS setting, changing to HPET will score 10 times the latency value...... even so, HPET plays much better sound.
(07-Jun-2022, 10:41 PM)hkphantomgtr Wrote: [ -> ]FYI, I can score similar latency with TSC clocksource.  Yet with the same CMOS setting, changing to HPET will score 10 times the latency value...... even so, HPET plays much better sound.
Bear in mind if you're using cyclictest from within the Snakeoil App, 10x difference is pretty insignificant. Divide the numbers by 1000 and then compare the non-decimals numbers to get a rough idea.
(08-Jun-2022, 08:10 AM)agent_kith Wrote: [ -> ]
(07-Jun-2022, 10:41 PM)hkphantomgtr Wrote: [ -> ]FYI, I can score similar latency with TSC clocksource.  Yet with the same CMOS setting, changing to HPET will score 10 times the latency value...... even so, HPET plays much better sound.
Bear in mind if you're using cyclictest from within the Snakeoil App, 10x difference is pretty insignificant. Divide the numbers by 1000 and then compare the non-decimals numbers to get a rough idea.

Hi, AK, I run the command in SSH, just as shown in #1.  Shy
[Image: ZBLL8zD]
(08-Jun-2022, 08:10 AM)agent_kith Wrote: [ -> ]Bear in mind if you're using cyclictest from within the Snakeoil App, 10x difference is pretty insignificant. Divide the numbers by 1000 and then compare the non-decimals numbers to get a rough idea.
I believe it is time to refresh Cyclictest within the SnakeOil App. Running App while playing Mpd on my 4 CPU Intel NUC with CPUSets enabled and with RT kernel:

# /dev/cpu_dma_latency set to 0us
T: 0 ( 8756) P:80 I:10000 C: 10000 Min: 1691 Act: 1893 Avg: 1911 Max: 4641
T: 1 ( 8757) P:80 I:10500 C: 9525 Min: 1805 Act: 1963 Avg: 2193 Max: 19971

Running my own:
sudo cyclictest -t4 -p 90 -N -s -i 10000 -l 10000 -q
# /dev/cpu_dma_latency set to 0us
T: 0 ( 8993) P:90 I:10000 C: 10000 Min: 1990 Act: 2210 Avg: 2206 Max: 6470
T: 1 ( 8994) P:90 I:10500 C: 9526 Min: 2081 Act: 2779 Avg: 2338 Max: 4752
T: 2 ( 8995) P:90 I:11000 C: 9093 Min: 2072 Act: 3515 Avg: 2372 Max: 5896
T: 3 ( 8996) P:90 I:11500 C: 8698 Min: 2252 Act: 3188 Avg: 2602 Max: 5586

Comments & questions:
  • App results can be misleading for those new to Cyclictest! 
  • Do realise that SnakeOil App is old (and did read a very old thread and the debates!)
  • Cyclictest has its limitations but probably easiest tool to run?  I understand that the most relevant number is the Max latency, and this should be in comments after App has run.
  • Add also in comments that App should be run when playing music, otherwise results are not relevant.
  • App should take into account number of CPUs.  Not sure whether App should run on a particular CPU?
  • How many times should Cyclictest be run?  Each run is a snapshot of the system at that time.  While my Max results are typically 5 to 7 microseconds, I can get 9 to 10 microseconds in about 1 in 10 runs. 
  • This raises the question of whether a histogram of say 10 to 20 runs, makes more sense, but then, how many people are prepared to run the App for an extended period?
  • Wiki should be updated with info from this discussion.  And it should include the comment that the results are not a contest between each person's setup!
Pages: 1 2