[PD] -rt for whom?

Larry Troxler lt at westnet.com
Mon Jul 5 22:24:42 CEST 2004

On Monday 05 July 2004 13:57, chris clepper wrote:
> A few notes about -rt mode:
> First, -rt is different on OSX compared to Linux.  On Linux, the flag
> sets the priority of the pd process just like nice or renice

Sorry if I somehow have a basic misunderstanding about how POSIX real-time 
scheduling works on Linux,  but I think  you're very wrong (or else the 
behavior of "nice" has changed a bit since the last time I researched it).

 At least on Linux, "pd -rt" schedules the process with POSIX SCHED_FIFO 
priority (in addition to locking up all allocated memory to avoid page 
faults), unless something has changed for the worse in the last couple of 
years. The last time I checked, this is not at all the same as just "nicing" 
the application; SCHED_FIFO processes get priority over all other 
procecesses, and assuming the kernel is patches for low latency, the highest 
priority SCHED_FIFO process will get the processor as soon as it is ready to 
run, minus what ever latency is still inherent in the Linux kernel. 

My understanding was always that this is not the same as simply nicing a 
process to high heaven. But maybe things have changed? Let's turn this in to 
a question then: Assuming no sched-fifo procecess are active in a Linux 
system with the kernel suitably patched for low latency, will the most 
agressively "niced" process get the CPU as soon as it becomes ready to run, 
or is it still subject to a time-slicing algorithm? For example, might it 
only be scheduled on the next clock tick? Or with modern Linux kernels, does 
the least "nice" application in the system behave identically to a process 
that has POSIX real-time priority?

Larry Troxler

More information about the Pd-list mailing list