Scheduler accounting inflated for io bound processes.

From: Dave Chiluk
Date: Thu Jun 20 2013 - 15:46:29 EST


Running the below testcase shows each process consuming 41-43% of it's
respective cpu while per core idle numbers show 63-65%, a disparity of
roughly 4-8%. Is this a bug, known behaviour, or consequence of the
process being io bound?

1. run sudo taskset -c 0 netserver
2. run taskset -c 1 netperf -H localhost -l 3600 -t TCP_RR & (start
netperf with priority on cpu1)
3. run top, press 1 for multiple CPUs to be separated

The below output is the top output notice the cpu0 idle at 67% when the
processes claim 42% usage a roughly 9% discrepancy.

------------------------------------------------
top - 19:27:38 up 4:08, 2 users, load average: 0.45, 0.19, 0.13
Tasks: 85 total, 2 running, 83 sleeping, 0 stopped, 0 zombie
%Cpu0 : 0.8 us, 15.4 sy, 0.0 ni, 66.7 id, 0.0 wa, 0.0 hi, 17.1 si,
0.0 st
%Cpu1 : 0.8 us, 17.3 sy, 0.0 ni, 63.1 id, 0.0 wa, 0.0 hi, 18.8 si,
0.0 st
KiB Mem: 4049180 total, 252952 used, 3796228 free, 23108 buffers
KiB Swap: 0 total, 0 used, 0 free, 132932 cached

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND

6150 root 20 0 9756 700 536 R 42.6 0.0 0:48.90 netserver

6149 ubuntu 20 0 11848 1056 852 S 42.2 0.0 0:48.92 netperf
------------------------------------------------

The above testcase was run on 3.10-rc6.

So is this a bug or can someone explain to me why this isn't a bug?

The related ubuntu bug is
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1193073
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/