HOW TO SET UP LARGE PAGES: These instructions are appropriate for either AIX 5.1C or AIX 5.1D, but the performance details differ significantly because the page placement policies differ. See below for more details. 1. Set up the Kernel (AIX 5.1C or AIX 5.1D) The system admin must do all of these things to get a large-page segment: 1) AIX 5.1C only: kernel must be 64bit 2) "vmtune -g 268435456 -L <# of 256MB regions to reserve>" (Note that vmtune is in the "bos.samples" package on the AIX CD-ROMs.) "bosboot -a" and reboot The examples in this directory need at least 16 256 MB regions. AIX 5.1D should also support a page size specification of 16777216. 3) "vmtune -S 1" (after reboot) to enable pinned shared memory 4) AIX 5.1C only: test application must be 64bit 5) AIX 5.1C only: test application must set the SHM_LGPAGE and SHM_PIN flags on shmget call 6) AIX 5.1C only: test application must request a multiple of 256MB for the size 2. For AIX 5.1C: Build the application following the example "stream_driver.f". Instructions are in the "README" file in this directory. For AIX 5.1D: The approach shown here is not needed, and the recommended approach is to use the loader option to map all the data segments onto large pages local to the MCM running the process. 3. For AIX 5.1C: Note that on a multi-MCM system, the large page segment(s) may be placed on any MCM with memory. You are guaranteed that each 256 MB aligned region is on one MCM, and it is very likely that all of the 256 MB aligned regions will be located on the same MCM (until it runs out of memory, and the allocator moves to another MCM). For AIX 5.1D: Large pages will be allocated in a "round-robin" fashion among all the MCMs with installed memory. If you access the large pages using the "shmget" approach shown in the stream_driver.f program in this directory, your pages will be interleaved across the MCMs with memory, on 16 MB boundaries. In contrast, if you use the loader option to select large pages, they will be placed on the MCM where your job is running (assuming any large pages are available on that MCM). 4. Remember that System V shared memory segments are persistent. Use "ipcs" to see what you accidentally left out there, and "ipcrm" to delete the old one(s). I recommend running under your normal user id (not root) since root has many segments out there for other reasons, and it is easy to get confused about which one(s) to delete. 5. This software is delivered "as-is", with no warranties expressed or implied. This software is not supported by IBM. /* (C) COPYRIGHT International Business Machines Corp. 2001 */ /* All Rights Reserved */ /* */ /* US Government Users Restricted Rights - Use, duplication or */ /* disclosure restricted by GSA ADP Schedule Contract with IBM Corp. */