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