This code affects the memory allocation strategy of BASORT. Normally, BASORT uses only the "impure" memory within the user’s pre-allocated memory partition to perform the sort. Depending on how much is available, it decides between a pure quick sort (entirely in memory), a quick sort of a tag file of the keys, followed by a one-pass reordering based on the sorted keys, or in the worst case, the dreaded poly-phase merge in which the file is broken into pieces which are individually sorted and then merged back together. When MALLOCSORT is specified, BASORT will attempt to temporarily allocate as much memory as it needs (within reason) to perform the fastest possible sort. This only makes sense under Unix and Windows, where it is highly recommended, since it may dramatically speed up sorting in these environments which typically have lots of memory available for temporary use.
See Also