[LAU] realtime priority - FIFO vs Round Robin and scheduling

Joakim Hernberg jhernberg at alchemy.lu
Sun May 29 08:26:53 UTC 2016


On Fri, 27 May 2016 18:53:46 +0200
Luka Prinčič / Nova deViator <nova at deviator.si> wrote:

> i guess i need first to compile a decent proper RT kernel. will my
> NVidia drivers work with that?

Yes, unless you are still using something older like 340.xx.  Older
nvidia drivers need a switch to compile for a -rt patched kernel, see
the use of IGNORE_PREEMPT_RT_PRESENCE=1  at
https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=nvidia-340xx-rt

Newer nvidia drivers will build fine with a -rt patched kernel.

You will however have to patch the kernel itself, as otherwise X hangs
very quickly..:S  There are 2 versions.  Kernels before 4.4.4-rt11,
need this patch:
https://aur.archlinux.org/cgit/aur.git/tree/fix-race-in-PRT-wait-for-completion-simple-wait-code_Nvidia-RT.patch?h=linux-rt&id=f1b6be2cc5580d9b287115804ff64b3525b43d11

Later kernels this one:
https://aur.archlinux.org/cgit/aur.git/tree/fix-race-in-PRT-wait-for-completion-simple-wait-code_Nvidia-RT-160319.patch?h=linux-rt

Note that the nvidia driver is less than desirable with rt, as it
causes higher kernel scheduling latencies compared to for instance the
intel driver.  I guess it's probably usable for audio work, but certain
actions will cause a kernel latency spike big enough to cause xruns on
lower latencies.  These include starting video playback, starting a
game, etc.  This may or may not cause a problem in your particular
situation.  IIRC nouveau worked much better for this purpose, but was a
long time ago that i last tried...

-- 

   Joakim


More information about the Linux-audio-user mailing list