Data Set Options under z/OS |
Valid in: | DATA step and PROC steps |
Default: | the value of the BUFSIZE= system option |
Category: | Data Set Control |
Restriction: | Use with output data sets only |
z/OS specifics: | Default value, valid values |
See: | BUFSIZE= Data Set Option in SAS Language Reference: Dictionary |
Syntax | |
Details |
Syntax |
BUFSIZE= 0 | n | nK |
specifies that SAS chooses the optimal page size of the data set based on the characteristics of the library and the type of data set.
specifies the permanent buffer size (page size) in bytes or kilobytes, respectively. For libraries other than UFS, the value specified is rounded up to the block size (BLKSIZE) of the library data set, because a block is the smallest unit of a data set that can be transferred in a single I/O operation.
Details |
The page size is the amount of data that can be transferred for a single I/O operation to one buffer. A page is the number of bytes of data that SAS moves between external storage and memory in one logical I/O operation.
On z/OS, when BUFSIZE=0, SAS usually sets the member page size for output SAS data sets equal to the number of blocks that would fit on one track of the z/OS disk device. This page size tends to favor sequential processing by assuming that the entire track is needed, and that it is read in multiple, consecutive blocks.
However, to improve performance for random (direct) access, the smallest possible buffer size is best. The minimum page size that you can specify depends on the type of library, as shown in the following table.
Type of Library | Minimum Page Size |
---|---|
direct access bound library | BLKSIZE of library data set |
UFS library | 4K |
hiperspace library | 4K |
Copyright © 2009 by SAS Institute Inc., Cary, NC, USA. All rights reserved.