|
AIX User Process Memory Models
AIX 5L provides support for both 32-bit and 64-bit user process memory models. The IBM p690 hardware supports 64-bit addresses and the version of AIX running on the p690 uses 64-bit addressing.
User processes can use either 32-bit or 64-bit addresses. 32-bit addresses provide some performance benefit due to the more compact resulting instructions.
However, applications which need to access more than 2 GB of data must use 64-bit addresses.
32-bit Memory Models
AIX divides memory into 256 MB segments. 32-bit memory models can access 16 memory segments (4 GB). There are three 32-bit user process memory models provided by AIX: default memory model, large memory model, and very large memory model. Under AIX 5.1 the large memory model and very large memory model are both restricted to a maximum of 2 GB of data (8 segments).
Default 32-bit Memory Model
The default memory model allocates a segment for kernel text and data associated with the user process, a segment for user text, a segment for user stack and data, a segment for shared library text, a segment for library data, and the remaining segments are available to use as shared memory segments. Since user stack and data share a 256 MB segment in this model, user data is restricted to 128 MB to allow room for the stack within the segment.
Attempting to load an executable with more than 128 MB of statically allocated data will produce an error message that not enough memory is currently available (because the available data space is too small to hold the executable data).
32-bit Large Memory Model
The large memory model is selected by specifing -bmaxdata:0xN0000000, where N may be 1-8. This
allocates N memory segments for user data and also
allows the user stack to completely occupy a segment. The
maximum number of segments that can be used for user data
is 8.
32-bit Very Large Memory Model
The very large memory model is selected by specifing -bmaxdata:0xN0000000/DSA, where N may be 1-8. This allocates upto 8 memory segments for user data, but the segments are allocated dynamically. In AIX 5.2 the maximum number of
segments increases to 10 with the stack having its own segment, or 13 if the stack segment is shared with shared library text and data. Under AIX 5.1 (current version running on p690) the limit is the same as for large memory model, 8.
64-bit Memory Model
64-bit memory model can address up to 1 Exabyte of memory. 256 MB memory segments are still used, but ~4,300,000,000 segments are available instead of 16.
Segments are dynamically allocated within specified ranges for various uses.
User data can occupy up to 448 Petabytes of memory. The 64-bit memory model is selected by specifing -q64. |
Last modified: August 20 2004 16:44:45.
Copyright © 2003-2007 by
NC State University and
others, All Rights Reserved.
HPC & Grid (Version
1.4
/
Site access count: 754032)
- Site/Content Notice
Site contact: Eric Sills, E-mail:
eric_sills at ncsu dot edu , Tel: 919-513-0324, Fax: 919-513-1893,
HPC and Grid Operations, Information Technology Division,
Box 7109, North Carolina State University, Raleigh,
NC27695-7914, USA
|