* Vassili Karpov <av1474@xxxxxxxx> wrote:
Hello Ingo and others,
After reading http://lwn.net/Articles/236485/ and noticing few
refernces to accounting i decided to give CFS a try. With
sched-cfs-v2.6.21.4-16 i get pretty weird results, it seems like
scheduler is dead set on trying to move the processes to different
CPUs/cores all the time. And with hog (manually tweaking the amount
iterations) i get fairly strange resuls, first of all the process is
split between two cores, secondly while integral load provided by the
kernel looks correct, it's off by good 20 percent on each idividial
core.
(http://www.boblycat.org/~malc/apc/hog-cfs-v16.png)
Thought this information might be of some interest.
hm - what does 'hog' do, can i download hog.c from somewhere?
the alternating balancing might be due to an uneven number of tasks
perhaps? If you have 3 tasks on 2 cores then there's no other solution
to achieve even performance of each task but to rotate them amongst the
cores.
P.S. How come the /proc/stat information is much closer to reality
now? Something like what Con Kolivas suggested was added to
sched.c?
well, precise/finegrained accounting patches have been available for
years, the thing with CFS is that there we get them 'for free', because
CFS needs those metrics for its own logic. That's why this information
is much closer to reality now. But note: right now what is affected by
the changes in the CFS patches is /proc/PID/stat (i.e. the per-task
information that 'top' and 'ps' displays, _not_ /proc/stat) - but more
accurate /proc/stat could certainly come later on too.