DATA Step, Macro, Functions and more

Execution in SAS.

Posts: 29

Execution in SAS.


Can one of you please help me in understanding the execution phase in SAS.I am aware of Input Buffer and PDV but still not confident enough in the flo

Waiting for your inputsSmiley Happy

Frequent Contributor
Posts: 120

Re: Execution in SAS.


PDV (Program Data Vector) : The information about each of the variables is stored in a reserved area of memory called PDV.

SAS Processes data steps in two stages : (1) Compile Stage  (2) Execution Stage

In Compile stage SAS does some housekeeping jobs like to prepare an area to store the sas dataset, then to check input file ( infile statement) to fix various attribute of input file. Then to put all the information at a place in memory called as INPUT BUFFER (where it place each record of data as it is read from the input file).

SAS checks for each variable is character or numeric and the storage length of each variable, this information is called the descriptor portion of the data set.

Descriptor Portion contains : Name of data set, Date and time that the data set was created , Number of observations and the number of variables

                                          (It contains attribute information for each variable in the data set )

SAS does following action during compile stage :

(a) Syntax Scan    (b) Sas Source code translation to machine language

(c) Definition of input and output files  (d) Create input buffer, PDV and data set descriptor information

(e) Setting the variable attribute for output sas data set. (f) Capture of variables to be initialized to missing.

Super User
Posts: 5,876

Re: Execution in SAS.

Ask a Question
Discussion stats
  • 2 replies
  • 3 in conversation