How to have a soft-real-time process in presense of heavily swapping IO-intensive background load?
- by Vi
schedtool: PID 32301: PRIO 4, POLICY R: SCHED_RR , NICE -20, AFFINITY 0xf
ionice: realtime: prio 4
But the music is stumbling anyway.
Background load is low prio (SCHED_IDLEPRIO, idle ionice), but uses a lot of memory (more than is physically available) and does a lot of IO and calculations.
Latencytop shows about 1500ms for:
Following symlink
Writing buffer to disk (sync)
Page fault
Writing a page to disk
both for the bg load and for unrelated processes. Load average is 10 and counting.
Why cannot it allocate, for example, 200MHZ of one of the cores and 32M of memory and not less than once per second opportunity for IO for mplayer to make it happy while continuing calculations on the background?
Or: why it cannot leave background task and swap loving each other but keeping the rest of the system as if there were no background load?
How to have RT processes AND heavy bg load simultaneously (without of virtual machines)?