Problem Note 32570: PROC COPY might not honor the OBS= option
Beginning in SAS 9.0, SAS introduced block I/O to copy blocks of data for faster performance. However, in certain situations, you might experience a program written for SAS 8 running slower in SAS 9.
Consider the following example, where the data set SUPERSIZE located in the LIB1 directory contains two billion observations.
options obs=0;
proc copy in=LIB1 out=LIB2;
select SUPERSIZE;
run;
Although the system option OBS= is set to zero, SAS reads all two billion observations of the input data set. This can take some time.
A hot fix is available to disable block I/O. With the hot fix applied, SAS uses a single observation read and write in the following instances:
PROC COPY or PROC APPEND with system options OBS= or FIRSTOBS= in effect,
PROC APPEND where the BASE= does not exist,
or PROC APPEND with a WHERE CLAUSE.
In SAS 9.2, it is not necessary to apply the hot fix as this is the default behavior. Please see the SAS Procedures Guide for further information on conditions that disable block I/O.
Submitting the system option MSGLEVEL=I in your SAS session provides information in the SAS Log regarding block I/O. After applying the hot fix, the example above generates the following partial note in the SAS log:
INFO: Data set block I/O cannot be used because:
Although this is a partial note, its intent is informational and indicates that block I/O was suspended.
Operating System and Release Information
SAS System | Base SAS | Microsoft Windows 2000 Datacenter Server | 9 TS M0 | 9.2 TS2M0 |
Microsoft Windows 2000 Server | 9 TS M0 | 9.2 TS2M0 |
Microsoft Windows 2000 Professional | 9 TS M0 | 9.2 TS2M0 |
z/OS | 9 TS M0 | 9.2 TS2M0 |
Microsoft® Windows® for 64-Bit Itanium-based Systems | 9 TS M0 | 9.2 TS2M0 |
Microsoft Windows Server 2003 Datacenter 64-bit Edition | 9 TS M0 | 9.2 TS2M0 |
Microsoft Windows Server 2003 Enterprise 64-bit Edition | 9 TS M0 | 9.2 TS2M0 |
Microsoft Windows 2000 Advanced Server | 9 TS M0 | 9.2 TS2M0 |
Microsoft Windows NT Workstation | 9 TS M0 | |
Microsoft Windows Server 2003 Datacenter Edition | 9 TS M0 | 9.2 TS2M0 |
Microsoft Windows Server 2003 Enterprise Edition | 9 TS M0 | 9.2 TS2M0 |
Microsoft Windows Server 2003 Standard Edition | 9 TS M0 | 9.2 TS2M0 |
Microsoft Windows XP Professional | 9 TS M0 | 9.2 TS2M0 |
64-bit Enabled AIX | 9 TS M0 | 9.2 TS2M0 |
64-bit Enabled HP-UX | 9 TS M0 | 9.2 TS2M0 |
64-bit Enabled Solaris | 9 TS M0 | 9.2 TS2M0 |
HP-UX IPF | 9 TS M0 | 9.2 TS2M0 |
Linux | 9 TS M0 | 9.2 TS2M0 |
OpenVMS Alpha | 9 TS M0 | 9.2 TS2M0 |
Tru64 UNIX | 9 TS M0 | 9.2 TS2M0 |
*
For software releases that are not yet generally available, the Fixed
Release is the software release in which the problem is planned to be
fixed.
PROC COPY might not honor the OBS= option, causing some programs to run slower in SAS 9 than in SAS 8.
Type: | Problem Note |
Priority: | medium |
Date Modified: | 2008-08-01 15:03:35 |
Date Created: | 2008-06-27 13:46:44 |