Re: Proposed module: tracker



Joe Shaw wrote:
Hi,

Jamie McCracken wrote:
point 2 is scheduled at nice +19 (same with Ionice +7) so it only uses more cpu if its idle.

That's not quite how the nice level works, at least in Linux. Higher nice values get a shorter timeslice, so they merely have less time to get their work in before other tasks are scheduled. So all processes fight for the CPU, it's just that (in this case) Tracker gets it less often.

Also note that the scheduler actually adjusts nice values under the covers based on how much CPU is being used. Processes with higher CPU utilization actually have their nice value *lowered*, with the idea that the CPU utilization is a short-lived thing. So it might be lowered to nice level +14.

The same thing goes for ionice if it's in the "best effort" IO class. Only in the "idle" class does IO happen when no other IO happens, but to set that you need to be root due to potential DoS attacks with priority inversion.


yeah I know but I dont believe that minor adjustments by the kernel to nice is causing a slow down as such

My suspicion is high IO Wait states from heavy disk writing (which is not affected by ionice at all) might be to blame in some circumstances but I may be wrong

--
Mr Jamie McCracken
http://jamiemcc.livejournal.com/




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]