After setting up ubuntustudio (7.04) with a real-time kernel (2.6.20-16-realtime), I was experiencing DIO errors every few seconds. Exploring this taught me alot about how to set priorities on a real-time kernel, mainly with the command 'chrt'. However, I don't think it is meant to be used directly on an application, since there might be parts of the application that are not supposed to run in real-time at a high priority.
Nonetheless, running:
r@pal:/etc/sysconfig$ pidof pd
12079
r@pal:/etc/sysconfig$ chrt -p 60 12079
sets pd running as:
r@pal:/etc/sysconfig$ chrt -p 12079
pid 12079's current scheduling policy: SCHED_RR
pid 12079's current scheduling priority: 60
and the xruns go away. I don't know too much about the different threads pd is running on, but I was under the impression that pd is supposed to start in real-time with a high priority. Yet, due to the apperant changes from chrt, I would think that it was not running in real-time. I've tried this on versions
0.40-3 and 0.41-7, and real-time scheduling is not specifically turned off in the pd start-up settings.
Any thoughts?
regards,
rich