Can Informix 9.40 UC7 use more than 2 GB of memory
Posted in 2011
Topics: Platform-Specific Issues
I have an Informix server (9.40 UC7) running on AIX 5.2 that currently has a Shared Memory SHMTOTAL of 2048000 (Almost 2GB). The AIX OS is a 32 bit kernel and from what I can see from a little research is that 2 GB would be the limit for Informix 9.40 running on AIX 5.2 (32 bit Kernel). See URL http://publib.boulder.ibm.com/infocenter/pseries/v5r3/index.jsp?topic=/com.ibm.a ix.genprogc/doc/genprogc/ipc_limits.htm The AIX box has plenty of memory to spare (only 8 of 16 GB used). Does anyone know if it is possible to set the shared memory for Informix 9.40 running on AIX 5.2 (32 bit Kernel) to be more than 2 GB?
No, all you are going to get with a 32-bit system is about 2GB. By juggling SHMBASE on RedHat Linux, I was able to get a total of about 2.5GB. Not sure if doing the same will work with AIX but you could try it. Bob ----- Original Message ----- From: "SCOTT YOHONN" <syohonn@gmail.com> To: ids@iiug.org Sent: Wednesday, August 17, 2011 9:51:55 AM Subject: Can Informix 9.40 UC7 use more than 2 GB of memory [24642] I have an Informix server (9.40 UC7) running on AIX 5.2 that currently has a Shared Memory SHMTOTAL of 2048000 (Almost 2GB). The AIX OS is a 32 bit kernel and from what I can see from a little research is that 2 GB would be the limit for Informix 9.40 running on AIX 5.2 (32 bit Kernel). See URL http://publib.boulder.ibm.com/infocenter/pseries/v5r3/index.jsp?topic=/com.ibm.a ix.genprogc/doc/genprogc/ipc_limits.htm The AIX box has plenty of memory to spare (only 8 of 16 GB used). Does anyone know if it is possible to set the shared memory for Informix 9.40 running on AIX 5.2 (32 bit Kernel) to be more than 2 GB? ******************************************************************************* Forum Note: Use "Reply" to post a response in the discussion forum.
Hi, in my experience, working with 32bit the shared memory is limited to about 2.7 GB with some tricks (at least in Linux, AIX may have some other limits, depending on the location of the loaded libraries and shared memory base). A better solution (if you are bound to 32bit because of license restrictions) could be to check the 32bit release under a 64bit AIX. This gave me about 3.6 GB of SHM under Linux. Not sure if AIX 5.2 64bit can run 32bit binaries seamless. Marcus > No, all you are going to get with a 32-bit system is about 2GB. By juggling > SHMBASE on RedHat Linux, I was able to get a total of about 2.5GB. Not sure if > doing the same will work with AIX but you could try it. > > Bob > > ----- Original Message ----- > From: "SCOTT YOHONN"<syohonn@gmail.com> > To: ids@iiug.org > Sent: Wednesday, August 17, 2011 9:51:55 AM > Subject: Can Informix 9.40 UC7 use more than 2 GB of memory [24642] > > I have an Informix server (9.40 UC7) running on AIX 5.2 that currently has a > Shared Memory SHMTOTAL of 2048000 (Almost 2GB). The AIX OS is a 32 bit kernel > and from what I can see from a little research is that 2 GB would be the limit > for Informix 9.40 running on AIX 5.2 (32 bit Kernel). See URL > > http://publib.boulder.ibm.com/infocenter/pseries/v5r3/index.jsp?topic=/com.ibm.a ix.genprogc/doc/genprogc/ipc_limits.htm > > The AIX box has plenty of memory to spare (only 8 of 16 GB used). Does anyone > know if it is possible to set the shared memory for Informix 9.40 running on > AIX 5.2 (32 bit Kernel) to be more than 2 GB? > > > ******************************************************************************* > Forum Note: Use "Reply" to post a response in the discussion forum. > > > ******************************************************************************* > Forum Note: Use "Reply" to post a response in the discussion forum. >
You can, however on AIX you have to pay attention to boundary aligments which
require segments (and all added segments, i.e. shmadd) be aligned on 262 meg
boundary alignments. This is easily overlooked as you may wind up with memory
allocation errors and find out you wasted accessing memory due to this
requirement and attribute it to some limitation. However I would imagine you
will bump up against some upper boundary limit with respect to 32 bit IDS.
In most likelihood you will wind up with a "gap" (wasted memory) between the
Resident and the first Virtual segment since the Resident segment has to allow
for LOCKS and BUFFERS and other internal structures which there is no easy
formula for calculating unless your overly ambitious. However SHMVIRTSIZE
should be equated to 262144 or multipile of. My suggestion is to test and see
how much memory you can address after startup by issuing multipile onmode -a
commands (remember the 256 meg alignment so equate SHMADD to 262144 or issue
onmode -a 262144 ) and see how much memory you can address/allocate. Then runan onstat -g seg and see how the memory maps out. Other than the gap between
the Resident and the first Virtual, all memory segments addresses should be
contigious (address + size = next begin address).
If using shared memory connections,switch over to tcp as shem connections
require a small portion of shared memory for the message segment , however aix
will allocate a 262 meg seg.
Isn't 9.40 eos by now ?
Related threads
- Posting from the Informix-list
- Migrating from IDS 9.40.UC6 to 11.50.UC3
- Ip for a network session
- questions onstat -g