MAXMEMQUERY System Option: Windows

Specifies the limit on the maximum amount of memory that is allocated for procedures.

Valid in: configuration file, SAS invocation, OPTIONS statement, SAS System Options window
Category: System Administration: Memory
Default: 0
Windows specifics: all


-MAXMEMQUERYn | nK | nM | nG | hexX | MIN | MAX
MAXMEMQUERY=n | nK | nM | nG | hexX | MIN | MAX

Required Arguments

n | nK | nM | nG

specifies the limit in multiples of 1; 1,024 (kilobytes); 1,048,576 (megabytes), and 1,073,741,842 (gigabytes), respectively. You can specify decimal values for the number of kilobytes, megabytes, or gigabytes. For example, a value of 8 specifies 8 bytes, a value of .782k specifies 801 bytes, and a value of 3m specifies 3,145,728 bytes.


specifies the amount of memory as a hexadecimal value. You must specify the value beginning with a number (0–9), followed by an X. For example, the value 2dx sets the amount of memory to 45 bytes.


sets the amount of memory to the minimum setting, which is 0 bytes. This value indicates that there is no limit on the total amount of memory that can be used by each procedure.


sets the amount of memory to the maximum setting, which is 2,147,483,647 bytes.


Some SAS procedures use the MAXMEMQUERY option to specify the largest block of virtual memory that SAS can request at one time. By contrast, the MEMSIZE option places a limit on the total amount of virtual memory that SAS dynamically allocates at any time. This virtual memory is supported by a combination of real memory and paging space. The operating environment begins paging when the amount of virtual memory that is required exceeds the real memory that is available. To prevent paging and the associated performance problems, the MAXMEMQUERY and MEMSIZE system options should be set to a subset of real memory.