brian at heptane.eng.yale.edu
Sat Aug 25 10:59:38 PDT 2001
I ran into this problem as well - the basic problem seems to be that
linux maps the shared libraries at around the 1GB mark, so you need to
change this location in the kernel source code.
Here's a post from late July I sent to the list dealing with the same
problem.. there's a little more information in that thread, if you look it
up in the mailing list archives.
Short answer: Change the source code as below, and you'll be ok.
Here's more detail:
I think I'm answering my own question now - if anyone else has had this
problem, here's what SEEMS to be a quick and dirty fix. (Quick and
dirty being the key words!) Also, good conscience tells me to write that
although it's working for me right now, it's not elegant, and who knows
what problems it may create?
That said, here goes:
In the kernel source, in file mmap.c, there is a line that reads:
addr = TASK_UNMAPPED_BASE;
.. This is what sets the default address of the shared libs in the
memory mapping, and it's at 0x40000000 (1G) by default. So change it to,
addr = 0x80000000;
.. And you should, in theory, have up to ~2GB to use for the codes.
People with a little more knowledge than I have can probably shed more
light on this, and while it's not pretty right now, when I have time I may
try to work on something nicer. Right now, I just need these jobs to run.
For more info on this, check out the comp.os.linux.development.system
newsgroup, back around June 7th or so.
More information about the Beowulf