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
Next revisionBoth sides next revision
wiki:system_configuration [2020/03/17 21:15] – [The kernel] autostaticwiki:system_configuration [2020/06/08 11:36] – [The kernel] grammo
Line 6: Line 6:
  
 ===== How do I build a real-time audio workstation on Linux? ===== ===== How do I build a real-time audio workstation on Linux? =====
 +
 +The [[https://manual.ardour.org/setting-up-your-system/the-right-computer-system-for-digital-audio/|Ardour manual]] has a interesting introduction about getting the right computer system for digital audio. Below that article there is also a (somewhat Windows oriented) [[https://www.youtube.com/watch?v=GUsLLEkswzE| video]] by Richard Ames, which could be helpful to get a idea which things are involved for this topic. Summary: lots of things are involved for a well performing real-time audio workstation. It's not simply a matter of buying a computer with massive CPU and memory power, as the coming sections on this page shows.
 +
 +A good starting point for optimizing your system for real-time audio on GNU/Linux, is the QuickScan script below.
 ==== Preliminary ==== ==== Preliminary ====
  
Line 62: Line 66:
 This is only needed for so-called generic kernels, ie. standard kernels that are not tweaked for lowlatency performance. You can check if your kernel already includes this option with the following command: This is only needed for so-called generic kernels, ie. standard kernels that are not tweaked for lowlatency performance. You can check if your kernel already includes this option with the following command:
  
-  $ grep -e "CONFIG_IRQ_FORCED_THREADING=y" -e "CONFIG_PREEMPT=y" /boot/config-`uname -r`+  $ grep -e "CONFIG_IRQ_FORCED_THREADING=y" -e "CONFIG_PREEMPT_RT=y" /boot/config-`uname -r`
    
-If it returns ''CONFIG_IRQ_FORCED_THREADING=y'' and ''CONFIG_PREEMPT=y'' then your kernel is using IRQ threading and you don't have to proceed with the following steps. If it only returns ''CONFIG_IRQ_FORCED_THREADING=y'' you can add the ''threadirqs'' boot option as described below. If the command returns nothing you have a kernel that cannot use threaded IRQs.+If it returns ''CONFIG_IRQ_FORCED_THREADING=y'' and ''CONFIG_PREEMPT_RT=y'' then your kernel is using IRQ threading and you don't have to proceed with the following steps. If it only returns ''CONFIG_IRQ_FORCED_THREADING=y'' you can add the ''threadirqs'' boot option as described below. If the command returns nothing you have a kernel that cannot use threaded IRQs.
  
 Open ''/etc/default/grub'' with your favorite editor as root. Open ''/etc/default/grub'' with your favorite editor as root.
Line 93: Line 97:
 == Gentoo == == Gentoo ==
  
-RT kernels are available in the pro-audio overlay (http://proaudio.tuxfamily.org/wiki/index.php?title=Main_Page).+An audio overlay can be found here [[https://github.com/gentoo-audio/audio-overlay]].
  
 === Build your own real-time kernel === === Build your own real-time kernel ===
  
-If your distribution isn't any help, you can compile and install a real-time kernel manually. The examples assume building a RT kernel based on the 3.kernel version but they should generally apply fo other kernel versions too provided that there is a RT patchset available for the used kernel. +If your distribution isn't any help, you can compile and install a real-time kernel manually. The examples assume building a RT kernel based on the 4.kernel version but they should generally apply for other kernel versions too provided that there is a RT patchset available for the used kernel. 
  
 Install the necessary packages, on Debian and Ubuntu this is: Install the necessary packages, on Debian and Ubuntu this is:
Line 198: Line 202:
  
  
-Then you can compile...+Then you can compile.
   make clean   make clean
   make deb-pkg   make deb-pkg
wiki/system_configuration.txt · Last modified: 2024/01/13 15:00 by autostatic