Browse Prior Art Database

Support for Execution of Programs with Large Data Requirements on AIX 3.2

IP.com Disclosure Number: IPCOM000109355D
Original Publication Date: 1992-Aug-01
Included in the Prior Art Database: 2005-Mar-23
Document File: 1 page(s) / 58K

Publishing Venue

IBM

Related People

Baker, WE: AUTHOR [+2]

Abstract

On AIX* v3.1 for the IBM RISC System/6000* it is not possible for processes with large data areas to run. This is not a restriction on the amount of paging space in the system, rather it is a restriction on the size of the process private data segment. This segment is 256 MB with some space for the kernel region (1/2 MB), the user stack (probably about 256 KB), and the rest for user data, user BSS and shared library data. However, there exist now some programs with extremely large data regions on the order of 800 MB. These simply do not run on the current system.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 57% of the total text.

Support for Execution of Programs with Large Data Requirements on AIX 3.2

       On AIX* v3.1 for the IBM RISC System/6000* it is not
possible for processes with large data areas to run.  This is not a
restriction on the amount of paging space in the system, rather it is
a restriction on the size of the process private data segment.  This
segment is 256 MB with some space for the kernel region (1/2 MB), the
user stack (probably about 256 KB), and the rest for user data, user
BSS and shared library data.  However, there exist now some programs
with extremely large data regions on the order of 800 MB.  These
simply do not run on the current system.

      The solution is to allow these large programs to load by
extending the user's data address space with other shared memory
segments which will effectively give the user about 2 GB of space for
data, BSS and malloc heap.

      There are several current solutions in the industry.  For
instance, Cray uses machines with up to 4 GB of real memory, and does
not have the notion of virtual memory.  Therefore, this large program
is loaded totally into real memory and allowed to run.  The memory on
a Cray is very expensive.  Other UNIX** based systems have a flat
address space with virtual memory and will only allow processes to
run if there exists the paging space to handle all the memory
requirements of the process.  This requires a lot of paging space.

      A binder option is proposed that indicates that...