(10-17-2011, 05:52 PM)Monk Wrote: Adding 'nice' to a process on top of 'chrt' is irrelevant. In linux_sched.c, chrt gives more of a 'benefit' to process scheduling than 'nice' could ever do. Personally in my tests, a process with SCHED_FIFO (unixbyte, dd and others) with a nice of -20 to 20 gives no noticeable changes. I haven't found any cases where nice is even used anymore, personally I think it's ancient cruft from the days of SysV/ancient BSD systems.
You should simply remove it and use say, ionice.
Nice catch, I supposed as much but didn't bother to check inside linux_sched. This will be updated. Cheers !
Regarding ionice, it is in use already (check [[ "$CFQ" ...).
Also Monk to keep this discussion going ... regarding processor affinity. The script currently sticks all srcds threads on one core. Still, source logs show that there is at least one worker pool made of 4 threads (presumably because there are four cores on my box). Would it make sense to spread those threads away from core 3, where srcds_run + its main thread would still be stuck. The thing is, other than pseudo-PID ordering, knowing who is the main thread might get abit tricky.
Thanks for your input !