The MEMSIZE system option
specifies the total amount of memory available to each SAS session.
A value that is too low will result in out-of-memory conditions.
A numeric value of 0
(or 0x) is equivalent to the option value MAX.
If an unreasonably small
numeric value is specified (for example 6K) the setting of the MEMSIZE
option will be silently increased to a minimum reasonable value that
will allow SAS to start and have basic functionality.
If a numeric value greater
than 4,294,967,295 is specified on a 32-bit version of SAS, the setting
of the value will be silently reduced to 4,294,967,295.
Numeric values greater
than 9,223,372,036,854,775,807 bytes will be rejected as invalid,
and will prevent SAS from starting.
SAS does not automatically
reserve or allocate the amount of memory that you specify in the MEMSIZE
system option. SAS will use only as much memory as it needs to complete
a process. For example, a DATA step might require only 20M of memory,
so even though MEMSIZE is set to 500M, SAS will use only 20M of memory.
While your SAS jobs
are running, you can monitor the effect of larger memory settings
by using system monitoring tools.
Note: Setting MEMSIZE to MAX is
reasonable only if consumers of large amounts of memory are not likely
to become active after SAS has started. For example, if multiple instances
of SAS are running concurrently, and all of these instances are started
with a MEMSIZE value of MAX, one or more of these instances can encounter
out of memory conditions, or, the operating system can run out of
available paging space.