The effect of nice value in CFS scheduler
Hi everyone, I'm studying the CFS scheduler. I'm using ubuntu 13.10 and I assume that it's using CFS in it kernel. I try to see the effect of nice value by running 2 instances of the same program (just a while loop of calculations), putting them on the same CPU and setting different nice values to them (one is 19 and one is -20). I include in the program some printf to see how much it has executed. According to my understanding, the process with the small nice value should get more processor time than the one with the big value. However they seem to be on par with each other (they execute approximately the same number of loops in the same duration), so I'm really confused. I'd appreciate any help.
On Fri, 21 Mar 2014 20:48:22 +0700, Anh Le said:
I'm studying the CFS scheduler. I'm using ubuntu 13.10 and I assume that it's using CFS in it kernel.
I try to see the effect of nice value by running 2 instances of the same program (just a while loop of calculations), putting them on the same CPU and setting different nice values to them (one is 19 and one is -20). I include in the program some printf to see how much it has executed.
According to my understanding, the process with the small nice value should get more processor time than the one with the big value. However they seem to be on par with each other (they execute approximately the same number of loops in the same duration), so I'm really confused.
If you have 2 cores and 2 CPU-bound processes, one process will park on each core and get close to 100% of the cycles. Try it with 2 instances per core/hyperthread available. Look in /proc/cpuinfo to find how many you need.
participants (2)
-
Anh Le -
Valdis.Kletnieks@vt.edu