2.5.47 scheduler problems?
Hi Mike, Rik, Everyone,
The O(1) schedule just isn't fair. It will run a subset of the runable processes excluding the rest. See my earlier emails for the details.
I had been working on a fix for this but got distracted by Posix timers. I still hope to get back to it.
My patch is here:
http://marc.theaimsgroup.com/?l=linux-kernel&m=103508412423719&w=2
It fixes fairness but breaks nice(2). Rik van Riel has a patch here which builds on my patch which fixes this:
http://marc.theaimsgroup.com/?l=linux-kernel&m=103651801424031&w=2
I just gave this a spin with. The patches still apply cleanly to linux-2.5.48 and it seems well behaved:-)
I found this problem with the LTP waitpid06 test. It actually produced a live-lock. See this mail:
http://marc.theaimsgroup.com/?l=linux-kernel&m=103133744217082&w=2
Jim Houston - Concurrent Computer Corp.
Quoted 11 lines · Jim Houston
Hi Mike, Rik, Everyone,
The O(1) schedule just isn't fair. It will run a subset of the runable processes excluding the rest. See my earlier emails for the details.
I had been working on a fix for this but got distracted by Posix timers. I still hope to get back to it.
My patch is here:
http://marc.theaimsgroup.com/?l=linux-kernel&m=103508412423719&w=2
In a brief test, this seems to cure my problem.
Quoted 3 lines
It fixes fairness but breaks nice(2). Rik van Riel has a patch here which builds on my patch which fixes this:
http://marc.theaimsgroup.com/?l=linux-kernel&m=103651801424031&w=2
(I haven't test this one yet)
Quoted 2 lines
I just gave this a spin with. The patches still apply cleanly to linux-2.5.48 and it seems well behaved:-)
It seems a little choppy still for a not swapping load, but greatly improved.
Thanks!
-Mike
Quoted 8 lines · Mike Galbraith
Quoted 2 lines · Jim Houston
I just gave this a spin with. The patches still apply cleanly to linux-2.5.48 and it seems well behaved:-)
It seems a little choppy still for a not swapping load, but greatly improved.
Thanks!
(I put it into virgin 2.5.47 fwiw) I have some very odd behavior. I wanted to see how the kernel did at make -j30 bzImage on my test box to see what effect it has on throughput (box is 500 Mhz PIII + 128Mb ram), and get vmstat output like the attached. I should be roughly 30Mb into swap and paging heftily at this point.
-Mike
procs -----------memory---------- ---swap-- -----io---- --system-- ----cpu----
b w swpd free buff cache si so bi bo in cs us sy id wa 41 8 764 59940 1596 18484 0 0 4 27 1027 129 90 10 0 0 35 10 764 58932 1604 18616 0 0 120 0 1026 134 92 8 0 0 34 8 764 53540 1608 18804 0 0 29 0 1023 141 87 13 0 0 38 7 764 47780 1616 19300 0 0 10 0 1075 168 92 8 0 0 38 11 764 54476 1616 19684 0 0 8 0 1018 130 90 10 0 0 33 12 764 47596 1632 20048 0 0 14 474 1062 143 89 11 0 0 33 6 764 41564 1636 19412 0 0 88 0 1104 158 90 10 0 0 32 4 764 34940 1640 19728 0 0 93 0 1024 157 91 9 0 0 37 6 764 34652 1640 20012 0 0 38 0 1022 143 93 7 0 0 36 8 764 33196 1648 20108 0 0 18 0 1023 168 89 11 0 0 35 8 764 32668 1652 20528 0 0 8 110 1029 159 91 9 0 0 34 6 764 28364 1664 20852 0 0 84 1 1023 167 92 8 0 0 32 6 764 23140 1664 20608 0 0 4 0 1020 165 93 7 0 0 34 7 764 28372 1664 20424 0 0 12 0 1020 147 93 7 0 0 38 7 764 23476 1668 20480 0 0 45 0 1123 194 93 7 0 0 32 8 764 32988 1668 20952 0 0 4 132 1027 151 94 6 0 0 35 9 764 29260 1672 20332 0 0 4 1 1020 152 89 11 0 0 32 6 764 31100 1672 20688 0 0 0 0 1106 156 92 8 0 0 31 8 764 32076 1680 20264 0 0 108 0 1023 161 91 9 0 0 35 8 764 42332 1684 20836 0 0 17 0 1023 157 86 14 0 0 34 11 764 48916 1688 20752 0 0 52 234 1033 151 88 12 0 0 procs -----------memory---------- ---swap-- -----io---- --system-- ----cpu---- b w swpd free buff cache si so bi bo in cs us sy id wa 37 5 764 45796 1692 20956 0 0 12 1 1020 136 89 11 0 0 32 6 764 46820 1692 20616 0 0 0 0 1017 149 89 11 0 0 34 8 764 46820 1692 20652 0 0 0 0 1017 130 91 9 0 0 31 8 764 41316 1692 20496 0 0 8 0 1083 153 92 8 0 0
Quoted 11 lines · Mike Galbraith
Quoted 8 lines · Mike Galbraith
Quoted 2 lines · Jim Houston
I just gave this a spin with. The patches still apply cleanly to linux-2.5.48 and it seems well behaved:-)
It seems a little choppy still for a not swapping load, but greatly improved.
Thanks!
(I put it into virgin 2.5.47 fwiw) I have some very odd behavior. I wanted to see how the kernel did at make -j30 bzImage on my test box to see what effect it has on throughput (box is 500 Mhz PIII + 128Mb ram), and get vmstat output like the attached. I should be roughly 30Mb into swap and paging heftily at this point.
Never mind the vmstat output.. it seems you need both patches. With both in 2.5.48, the build progressed in a much more normal looking fashion. I'm not losing control of my box any more under load.
-Mike