SPDESORTSIZE= System Option

Specifies the memory space size that is needed for sorting operations used by the SPD Engine.
Valid in: configuration file, SAS invocation, OPTIONS statement, System Options window
Default: 32M
Engine: SPD Engine only

Syntax

SPDESORTSIZE=n | nK | nM | nG

Required Argument

n
is the size of memory space in bytes, kilobytes, megabytes, or gigabytes. If n=0, the sort utility uses its default. The valid value range is from 1,048,576 to 10,736,369,664 bytes.

Details

The SPD Engine can perform an automatic sort in parallel. The sort size that you specify for SPDESORTSIZE= should be multiplied by the number of processes that are in parallel. This total for sort size should be less than the physical memory available to your process. The proper specification of SPDESORTSIZE= can improve performance by restricting the swapping of memory that is controlled by the operating environment.
Perform one of the following if the sort process needs more memory than you specified:
  • restart SAS with the SAS system option MEMSIZE=0 (For OpenVMS on HP Integrity Servers, increase the paging file quota (PGFLQUO); for z/OS, increase the REGION size.)
  • increase the size of the utility file space using the SPDEUTILLOC= system option
You increase the memory that is used when sorting values for creating an index using the SPDEINDEXSORTSIZE= option. If you specify to create indexes in parallel, specify a large-enough space using the SPDEUTILLOC= system option.
Note: The SORTSIZE= option documented for the default Base SAS engine affects PROC SORT operations. The SPDESORTSIZE= specification affects sorting operations specific to the SPD Engine.
The maximum SPDESORTSIZE= value is 10 GB, but this value cannot be honored on host systems that are limited to 2 GB. On host systems that have a 64-bit LONG data type, SPD Engine honors values greater that 2 GB. On host systems that have a 32-bit LONG data type, SPD Engine honors only the memory used up to 2 GB. The SPDESORTSIZE option value can be set to a larger value, but the larger value is not honored.
Note: You receive a warning in the SAS log when the larger value is not honored and used.