KernelTrap: Page Clustering, Booting Linux On A 64GB x86
Apr 04, 2003, 10:00 (0 Talkback[s])
(Other stories by Jeremy Andrews)
[ Thanks to Jeremy
Andrews for this link. ]
"William Lee Irwin III recently announced on the lkml that he'd
successfully gotten Linux running on a 64GB x86 server. His posts
included two different boot message logs, one without his page
clustering patch, and one with. In the latter case, his patch
overcomes the 1GB mem_map virtual space limitation imposed by x86
32-bit servers, without which the kernel over-runs allowable memory
space.
"Bill's current efforts are based upon Hugh Dicken's earlier
page clustering patches for the 2.4.x kernel. Hugh's efforts were
actually focused on allowing larger filesystem block sizes,
prompting Bill to say, 'The fact it resolves the horror of
mem_map[] overrunning kernel virtualspace on i386 PAE is really an
obscure coincidence.' His patch is still a work in progress, but
with time will offer a number of additional benefits beyond the
support of 64GB x86 servers. For example, utilizing the entire
software page in fault handlers results in prefaulting benefits,
and increasing the physical contiguity of data results in I/O
throughput benefits. However, at this time 'until it is done it
will have severe performance problems on small memory machines
(say, less than 16GB).'
"I approached Bill, asking questions to better understand what
he was working toward. He replied with a wealth of information,
including several ASCII diagrams and lengthy explanations. To
summarize, he offered: 'Without pgcl, 64GB is a doorstop, because
in /proc/meminfo LowTotal: was a mere 176MB and so incapable of
supporting any significant loads. With pgcl, 64GB functions quite
nicely, because LowTotal is 750MB and has room for all the kernel
bloat that should be there (but things that shouldn't still need to
be fixed)...'"
Complete
Story
Related Stories: