The HPSUMMARY Procedure

Getting Started: HPSUMMARY Procedure

This example illustrates a simple use of the HPSUMMARY procedure to summarize using the grid in distributed mode. The following DATA step creates a data set that consists of test scores:

data gridlib.grades;
   input Name $ 1-8 Gender $ 11 Status $13 Year $ 15-16
         Section $ 18 Score 20-21 FinalGrade 23-24;
   datalines;
Abbott    F 2 97 A 90 87
Branford  M 1 98 A 92 97
Crandell  M 2 98 B 81 71
Dennison  M 1 97 A 85 72
Edgar     F 1 98 B 89 80
Faust     M 1 97 B 78 73
Greeley   F 2 97 A 82 91
Hart      F 1 98 B 84 80
Isley     M 2 97 A 88 86
Jasper    M 1 97 B 91 93
;
run;

The following statements read this data set and analyze the data for the two-way combination of CLASS variables and across all observations. To run these statements successfully, you need to set the macro variables GRIDHOST and GRIDINSTALLLOC to resolve to appropriate values, or you can replace the references to the macro variables in the example with the appropriate values.

proc hpsummary data=gridlib.grades;
   performance host="&GRIDHOST" install="&GRIDINSTALLLOC";
   var Score;
   class Status Year;
   types () status*year;
   output out=gridlib.result;
run;
proc print data=gridlib.result;
run;

Figure 10.1 displays the tables produced by the HPSUMMARY procedure. The "Performance Information" table shows that PROC HPSUMMARY ran in distributed mode and the "Data Access Information" table shows that the date were accessed in parallel symmetric mode.

Figure 10.1: HPSUMMARY Output

The HPSUMMARY Procedure

Performance Information
Host Node greenarrow.unx.sas.com
Execution Mode Distributed
Number of Compute Nodes 16
Number of Threads per Node 24

Data Access Information
Data Engine Role Path
GRIDLIB.grades GREENPLM Input Parallel, Symmetric
GRIDLIB.result GREENPLM Output Parallel, Symmetric

Obs status year _type_ _freq_ _stat_ score
1 1 98 3 3 MIN 84.0000
2     0 10 STD 4.7140
3     0 10 MAX 92.0000
4     0 10 MIN 78.0000
5 1 98 3 3 MAX 92.0000
6 2 98 3 1 MIN 81.0000
7 2 97 3 3 N 3.0000
8 1 97 3 3 STD 6.5064
9 1 98 3 3 N 3.0000
10 2 97 3 3 MAX 90.0000
11     0 10 N 10.0000
12 2 98 3 1 MEAN 81.0000
13 2 98 3 1 MAX 81.0000
14 2 97 3 3 MIN 82.0000
15 2 98 3 1 STD .
16 1 97 3 3 N 3.0000
17 2 97 3 3 STD 4.1633
18 1 97 3 3 MEAN 84.6667
19 2 97 3 3 MEAN 86.6667
20 1 97 3 3 MAX 91.0000
21 1 97 3 3 MIN 78.0000
22     0 10 MEAN 86.0000
23 1 98 3 3 STD 4.0415
24 1 98 3 3 MEAN 88.3333
25 2 98 3 1 N 1.0000