2001-12-21 20:00:03

by Randy Hron

[permalink] [raw]
Subject: Effect of changing normal memory zone size and dbench on 2.4.17rc2aa2

Kernel: 2.4.17rc2aa2

Test: Change highmem settings - run dbench 32, 128.

Conclusion: More "normal" memory gives better dbench throughput
on box with 1024MB ram.

I noticed the 3.5 GB User Address Space setting in the
Andrea Arcangeli's 2.4.17rc2aa2 and thought maybe it was
a way to have 1GB (or more) RAM and not use highmem. It
obviously has a different purpose, but it led me to run
dbench to see how throughput changes when highmem is a
larger or smaller portion of memory.

highmem
-------
CONFIG_HIGHMEM4G=y
CONFIG_HIGHMEM=y

This configuration had excellent numbers. Highmem is 128M.

Memory: 1029848k/1048512k available (1053k kernel code, 18276k reserved, 260k data, 240k init, 131008k highmem)

dbench
Throughput 82.4374 MB/sec (NB=103.047 MB/sec 824.374 MBit/sec) 32 procs
Throughput 42.1931 MB/sec (NB=52.7413 MB/sec 421.931 MBit/sec) 128 procs


3.5 gb user address space
-------------------------
CONFIG_HIGHMEM4G=y
CONFIG_HIGHMEM=y
CONFIG_05GB=y

Here Highmem is 640MB. Throughput for dbench 32 is 31% lower than normal highmem.
dbench 128 throughput was 42% lower.

Memory: 1029848k/1048512k available (1053k kernel code, 18276k reserved, 260k data, 240k init, 655296k highmem)

dbench
Throughput 56.9061 MB/sec (NB=71.1327 MB/sec 569.061 MBit/sec) 32 procs
Throughput 24.4228 MB/sec (NB=30.5285 MB/sec 244.228 MBit/sec) 128 procs


nohighmem
---------
CONFIG_NOHIGHMEM=y

With nohighmem, total memory drops to 896MB. Nonetheless, dbench 32 was
9% higher. The dbench 128 throughput was < 1% lower, which is not
significant for this test.

Memory: 901804k/917504k available (1049k kernel code, 15312k reserved, 259k data, 236k init, 0k highmem)

dbench
Throughput 90.0235 MB/sec (NB=112.529 MB/sec 900.235 MBit/sec) 32 procs
Throughput 41.805 MB/sec (NB=52.2563 MB/sec 418.05 MBit/sec) 128 procs


Hardware:
1333 Athlon
1024 MB RAM
1027 MB swap

P.S. Andrea, enjoy your holidays!

--
Randy Hron