Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
wiki:system_configuration [2025/04/13 16:41] – [rtcqs] autostaticwiki:system_configuration [2026/08/11 20:04] (current) – [Power management] autostatic
Line 291: Line 291:
  
 And ''/dev/cpu_dma_latency'' should now have read-write permissions for root and the audio group (mode 0660). Now you can set CPU latency as low as you like. Bear in mind that setting it to 0 will put your CPU's in an always-on state which wil run them hotter. So be prepared for some extra fan noise. And ''/dev/cpu_dma_latency'' should now have read-write permissions for root and the audio group (mode 0660). Now you can set CPU latency as low as you like. Bear in mind that setting it to 0 will put your CPU's in an always-on state which wil run them hotter. So be prepared for some extra fan noise.
 +
 +=== USB autosuspend ===
 +When using an USB audio interface it is recommended to disable the power management of the USB subsystem. This way your USB audio interface won't be disconnected when the kernel thinks it is in an idle state. Disabling the power management can be done by adding the following kernel parameter to your the ''GRUB_CMDLINE_LINUX_DEFAULT'' line in your GRUB configuration:
 +  usbcore.autosuspend=-1
 +
 +And then run ''sudo update-grub''. After a reboot this setting will then be picked up. To activate the setting immediately use the following command:
 +  echo "-1" | sudo tee /sys/module/usbcore/parameters/autosuspend
 +
 ==== Filesystems ==== ==== Filesystems ====
  
Line 569: Line 577:
  
   rtcqs - version 0.6.6   rtcqs - version 0.6.6
 +  
   Root User   Root User
   =========   =========
   [ OK ] Not running as root.   [ OK ] Not running as root.
 +  
   Group Limits   Group Limits
   ============   ============
   [ OK ] User music is member of a group that has sufficient rtprio (95) and memlock (unlimited) limits set.   [ OK ] User music is member of a group that has sufficient rtprio (95) and memlock (unlimited) limits set.
 +  
   CPU Frequency Scaling   CPU Frequency Scaling
   =====================   =====================
   [ OK ] The scaling governor of all CPUs is set to performance.   [ OK ] The scaling governor of all CPUs is set to performance.
 +  
   Simultaneous Multithreading   Simultaneous Multithreading
   ===========================   ===========================
   [ OK ] Simultaneous Multithreading (SMT, also called hyper-threading) is disabled.   [ OK ] Simultaneous Multithreading (SMT, also called hyper-threading) is disabled.
 +  
   Kernel Configuration   Kernel Configuration
   ====================   ====================
   [ OK ] Valid kernel configuration found.   [ OK ] Valid kernel configuration found.
 +  
   High Resolution Timers   High Resolution Timers
   ======================   ======================
   [ OK ] High resolution timers are enabled.   [ OK ] High resolution timers are enabled.
 +  
   Tickless Kernel   Tickless Kernel
   ===============   ===============
   [ OK ] System is using a tickless kernel.   [ OK ] System is using a tickless kernel.
 +  
   Preempt RT   Preempt RT
   ==========   ==========
   [ OK ] Kernel 6.13.8-4-liquorix-amd64 is using threaded IRQs.   [ OK ] Kernel 6.13.8-4-liquorix-amd64 is using threaded IRQs.
 +  
   Spectre/Meltdown Mitigations   Spectre/Meltdown Mitigations
   ============================   ============================
   [ OK ] Spectre/Meltdown mitigations are disabled. Be warned that this makes your system more vulnerable to Spectre/Meltdown attacks.   [ OK ] Spectre/Meltdown mitigations are disabled. Be warned that this makes your system more vulnerable to Spectre/Meltdown attacks.
 +  
   RT Priorities   RT Priorities
   =============   =============
   [ OK ] Realtime priorities can be set.   [ OK ] Realtime priorities can be set.
 +  
   Swappiness   Swappiness
   ==========   ==========
   [ OK ] Your system is configured without swap, setting swappiness does not apply.   [ OK ] Your system is configured without swap, setting swappiness does not apply.
 +  
   Filesystems   Filesystems
   ===========   ===========
   [ OK ] The following mounts can be used for audio purposes: /   [ OK ] The following mounts can be used for audio purposes: /
 +  
   IRQs   IRQs
   ====   ====
Line 626: Line 634:
   [ OK ] USB port xhci_hcd with IRQ 49 does not share its IRQ.   [ OK ] USB port xhci_hcd with IRQ 49 does not share its IRQ.
   [ OK ] USB port xhci_hcd with IRQ 47 does not share its IRQ.   [ OK ] USB port xhci_hcd with IRQ 47 does not share its IRQ.
 +  
   Power Management   Power Management
   ================   ================
Line 647: Line 655:
 {{:wiki:htop_2023-10-15.png|Terminal running htop}} {{:wiki:htop_2023-10-15.png|Terminal running htop}}
  
-==== latencytop ====+==== LatencyTOP ====
  
-''latencytop'' is a very useful tool to find out what process is causing system latency to happen.+[[https://www.latencytop.org/|LatencyTOP]] is a very useful tool to find out what processes are causing system latency to happen. LatencyTOP only works on kernels that have ''CONFIG_LATENCYTOP'' enabled. This would mean building your own kernel as practically all packaged kernels do not have this feature enabled by default.
  
 {{:wiki:latencytop.png|latencytop}} {{:wiki:latencytop.png|latencytop}}
Line 656: Line 664:
  
 Just as ''latencytop'' measures system latencies, ''[[https://wiki.linuxfoundation.org/realtime/documentation/howto/tools/cyclictest/start|cyclictest]]'' measures kernel latencies. ''cyclictest'' has quite some options but one of the most used ways to run the command is: Just as ''latencytop'' measures system latencies, ''[[https://wiki.linuxfoundation.org/realtime/documentation/howto/tools/cyclictest/start|cyclictest]]'' measures kernel latencies. ''cyclictest'' has quite some options but one of the most used ways to run the command is:
-  #  cyclictest -t1 -p 80 -n -i 10000 -l 10000 -m +  #  cyclictest -t1 -p 80 -i 10000 -l 10000 -m 
-One single thread (''-t1''), priority of 80 (''-p 80''), use clock_nanosleep (''-n''), use 10000 us base interval of thread (''-i 1000''), use 1000 loops and then exit (''-l 10000''), lock current and future memory allocations (''-m''). More on clock_nanosleep can be found in its manpage (''man clock_nanosleep'').+One single thread (''-t1''), priority of 80 (''-p 80''), use 10000 µs base interval of thread (''-i 10000''), use 10000 loops and then exit (''-l 10000''), lock current and future memory allocations (''-m''). ''cyclictest'' uses clock_nanosleep by default. More on clock_nanosleep can be found in its manpage (''man clock_nanosleep'').
  
 Other examples of the usage of ''cyclictest'': Other examples of the usage of ''cyclictest'':
wiki/system_configuration.1744562491.txt.gz · Last modified: by autostatic