ちょっと古いけど、Andrew Mortonがベンチマーク結果を投稿している


On Wed, 11 Jun 2008 14:42:14 -0400 Rik van Riel wrote:

> On large memory systems, the VM can spend way too much time scanning
> through pages that it cannot (or should not) evict from memory. Not
> only does it use up CPU time, but it also provokes lock contention
> and can leave large systems under memory presure in a catatonic state.

Hey, I did some MM testing!


On a 900MB 2-way, allocate and memset 1000MB.

mainline:

vmm:/home/akpm> time usemem -m 1000
usemem -m 1000 0.10s user 10.27s system 62% cpu 16.567 total
vmm:/home/akpm> time usemem -m 1000
usemem -m 1000 0.12s user 10.23s system 63% cpu 16.234 total
vmm:/home/akpm> time usemem -m 1000
usemem -m 1000 0.13s user 9.90s system 63% cpu 15.812 total
vmm:/home/akpm> time usemem -m 1000
usemem -m 1000 0.11s user 9.98s system 65% cpu 15.494 total
vmm:/home/akpm> time usemem -m 1000
usemem -m 1000 0.12s user 9.94s system 62% cpu 16.000 total

2.6.26-rc5-mm3:

vmm:/home/akpm> time usemem -m 1000
usemem -m 1000 0.15s user 9.81s system 52% cpu 19.117 total
vmm:/home/akpm> time usemem -m 1000
usemem -m 1000 0.14s user 9.07s system 45% cpu 20.403 total
vmm:/home/akpm> time usemem -m 1000
usemem -m 1000 0.25s user 9.63s system 34% cpu 28.533 total
vmm:/home/akpm> time usemem -m 1000
usemem -m 1000 0.15s user 9.35s system 49% cpu 19.196 total
vmm:/home/akpm> time usemem -m 1000
usemem -m 1000 0.13s user 8.79s system 49% cpu 17.993 total

Seems to have saved a little CPU but the IO patterns got worse.


usememでは一長一短だと言っているが、このあと、Rik van Rielが問題は分かっているので
直せると回答した。


qsbench, 4 processes, memory size tuned to threshold-of-swapping*1.1:

Mainline:

vmm:/home/akpm/qsbench> time ./qsbench -p 4 -m 230
./qsbench -p 4 -m 230 175.45s user 45.67s system 60% cpu 6:08.40 total

2.6.26-rc5-mm3:

vmm:/home/akpm/qsbench> time ./qsbench -p 4 -m 230
./qsbench -p 4 -m 230 178.21s user 28.49s system 99% cpu 3:27.14 total

So woot! Professional qsbench users will be pleased ;) It could have
been a fluke though - iirc qsbench is pretty unstable, especially on
the threshold.


Main thing is: it seems stable. Old LTP ran for an hour or so before I
hit the msgctl08 crash (which is a regression in current mainline).


で、こっちは split lruの本領発揮ケースで性能2倍。