[openib-general] Mmap, 32 bit machine, limit
Muli Ben-Yehuda
MULI at il.ibm.com
Wed Jun 22 03:32:41 PDT 2005
> In total, these 22 files come to about 3.4GB - roughly 850M addresses.
> However, the function crashes and gives out the message ENOMEM after
mapping
> about 2.6GB.
On 32 bit x86 machines, with the stock Linux kernel address space
arrangement, you have only 3GB of usable address space (because the kernel
is mapped at the top 1GB). Since some address space is taken up by your
program code, data and stack (and any shared libraries that it's using),
that leaves something less than 3 GB. If you really need more than 3GB of
usable address space, either switch to a 64 bit machine, or use multiple
processes (each has its own address space) and some form of IPC between
them.
Cheers,
Muli
More information about the general
mailing list