FOCUS AREAS

ARM - General Macro Examples

Index:


Basic SAS Code

/*-- gtidsetup is for tests that start more than one ARM 'application' --*/
options source source2;
%macro gtidset(fmt, desc, appid);

%if ("&fmt" = "")  %then
  %do;
    %armgtid(txnname='NONE', txndet='&desc', txnidvar=round1, appidvar=&appid);
    %armgtid(txnname='NONE', txndet='&desc', txnidvar=round2, appidvar=&appid);
    %armgtid(txnname='NONE', txndet='&desc', txnidvar=round3, appidvar=&appid);
  %end;
%else
  %do;
    %armgtid(txnname='&fmt', txndet='&desc', txnidvar=round1, appidvar=&appid);
    %armgtid(txnname='&fmt', txndet='&desc', txnidvar=round2, appidvar=&appid);
    %armgtid(txnname='&fmt', txndet='&desc', txnidvar=round3, appidvar=&appid);
  %end;
%mend;

/*-- Turn on ARM macros --*/
  %let _armexec = 1;
  %let _armacro = 1;
  %filename( ARMLOG, putc, txt ); /* V8 */
  *options armloc="putc.log"; /* V9 option */
  %arminit(appname='DATASTEP;&sysscpl;&sysvlong', txnname='putc',
           getid=yes, appidvar=app);
  %arminit(appname='DATASTEP;&sysscpl;&sysvlong;ABS', txnname='putc',
           getid=yes, appidvar=appabs);
  %arminit(appname='DATASTEP;&sysscpl;&sysvlong;REL', txnname='putc',
           getid=yes, appidvar=apprel);
/*------------------------*/

%macro mvsopts;
  %if %quote(&sysscpl)=%quote(OS/390) or
                      %quote(&sysscpl)=%quote(MVS)
                   %then options stats;
%mend;
%mvsopts;

%let nsteps=3; %put **NSTEPS= &nsteps; %put **DATE= &sysdate9; %put **PUTC**;
%let nlines = 80000;

/**
 ** MACRO: LIMSETUP
 **   Host specific number of lines to output, to vary exec time.
 **/
%macro limsetup;
   %if %str(&sysscp) = %str(OS) %then
      %let nlines = 40000;
%mend;
%limsetup;

%let outfile = nul;
%let nelem = 100;
%let charsz = 20;

filename nul DUMMY;
data _null_; file &outfile; x=1; put x=; run;


/**
 ** MACRO: PUTTST
 **   Use no column controls to output data to default output device.
 **/
%macro puttst(fmt);
   %put ##FMT= &fmt;

  %gtidset(&fmt, PUTC, app);
   %do i = 1 %to &nsteps;

   %armstrt(txnidvar=round&i );
      data _null_;
         file &outfile;
         array arr{&nelem} $ &charsz;
         do i = 1 to &nelem;
            arr{i} = repeat('j', &charsz);
         end;
         do i = 1 to &nlines;
            put arr{*} &fmt;
         end;
         run;
    %armstop;
   %end;
%mend;


/**
 ** MACRO: ABSEXP
 **   Create put statement that uses @ column control.
 **/
%macro absexp(nelem, fmt);
   %local i;
   %do i = 1 %to &nelem;
      @%eval(&i*(&charsz+1)) arr{&i} &fmt
   %end;
%mend;


/**
 ** MACRO: PUTTST2
 **   Use @ column controls to output data to default output device.
 **/
%macro puttst2(fmt);
   %put ##FMTABS= &fmt;

  %gtidset(&fmt, PUTC_ABS, appabs);
  %do i = 1 %to &nsteps;

   %armstrt(txnidvar=round&i );
      data _null_;
         file &outfile;
         array arr{&nelem} $ &charsz;
         do i = 1 to &nelem;
            arr{i} = repeat('j', &charsz);
         end;
         do i = 1 to &nlines;
            put %absexp(&nelem, &fmt);
         end;
         run;
    %armstop;

   %end;
%mend;


/**
 ** MACRO: RELEXP
 **   Create put statement that uses + column control.
 **/
%macro relexp(nelem, fmt);
   %local i;
   %do i = 1 %to &nelem;
      +3 arr{&i} &fmt
   %end;
%mend;


/**
 ** MACRO: PUTTST3
 **   Use + column controls to output data to default output device.
 **/
%macro puttst3(fmt);
   %put ##FMTREL= &fmt;

  %gtidset(&fmt, PUTC_REL, apprel);
   %do i = 1 %to &nsteps;

    %armstrt(txnidvar=round&i );
      data _null_;
         file &outfile;
         array arr{&nelem} $ &charsz;
         do i = 1 to &nelem;
            arr{i} = repeat('j', &charsz);
         end;
         do i = 1 to &nlines;
            put %relexp(&nelem, &fmt);
         end;
         run;
     %armstop;

   %end;
%mend;


%puttst($);
%puttst($&charsz..);
%puttst($CHAR&charsz..);
%puttst($ASCII&charsz..);
%puttst($HEX%eval(&charsz * 2).);
%puttst($UPCASE&charsz..);

%puttst2($);
%puttst2($&charsz..);
%puttst2($CHAR&charsz..);
%puttst2($ASCII&charsz..);
%puttst2($HEX%eval(&charsz * 2).);
%puttst2($UPCASE&charsz..);

%puttst3($);
%puttst3($&charsz..);
%puttst3($CHAR&charsz..);
%puttst3($ASCII&charsz..);
%puttst3($HEX%eval(&charsz * 2).);
%puttst3($UPCASE&charsz..);

 /*-- Unarm application --*/
 %armend(appidvar=app);
 %armend(appidvar=appabs);
 %armend(appidvar=apprel);

V9 SAS Log

NOTE: Copyright (c) 2002 by SAS Institute Inc., Cary, NC, USA.
NOTE: SAS (r) Proprietary Software Version 9.00 (TS M0)
      Licensed to SAS Institute, Internal Test Release, Site 0000000001.
NOTE: This session is executing on the XP_PRO  platform.



NOTE: SAS initialization used:
      real time           3.98 seconds
      cpu time            1.35 seconds

1    /********************* BASE:BIT PERFORMANCE TEST **********************
2
3     NAME:     putc.sas
4     PURPOSE:  Put statement to DUMMY with character formats
5     VARIES:   format
6     AUTHOR:   Jason Secosky - jaseco
7     SUPPORT:  Jason Secosky - jaseco
8     NOTES:    Little I/O to stress data step execution
9          :    Not going through ODS
10         :    Uses no column controls, and @ & + column controls
11         :    Uses frequently used formats
12         :    gtidset macro contained in perfauto.sas (base dvd)
13    HISTORY:  07Oct99 created
14
15    **********************************************************************//*-- gtidsetup is
15 ! for tests that start more than one ARM 'application' --*/
16   options source source2;
17   %macro gtidset(fmt, desc, appid);
18
19   %if ("&fmt" = "")  %then
20     %do;
21       %armgtid(txnname='NONE', txndet='&desc', txnidvar=round1, appidvar=&appid);

22       %armgtid(txnname='NONE', txndet='&desc', txnidvar=round2, appidvar=&appid);

23       %armgtid(txnname='NONE', txndet='&desc', txnidvar=round3, appidvar=&appid);

24     %end;
25   %else
26     %do;
27       %armgtid(txnname='&fmt', txndet='&desc', txnidvar=round1, appidvar=&appid);

28       %armgtid(txnname='&fmt', txndet='&desc', txnidvar=round2, appidvar=&appid);

29       %armgtid(txnname='&fmt', txndet='&desc', txnidvar=round3, appidvar=&appid);

30     %end;
31   %mend;
32
33   /*-- Turn on ARM macros --*/
34     %let _armexec = 1;
35     %let _armacro = 1;
36     *%filename( ARMLOG, putc, txt );
37     options armloc="putc.log";
38     %arminit(appname='DATASTEP;&sysscpl;&sysvlong', txnname='putc',
39              getid=yes, appidvar=app);
40     %arminit(appname='DATASTEP;&sysscpl;&sysvlong;ABS', txnname='putc',
41              getid=yes, appidvar=appabs);
42     %arminit(appname='DATASTEP;&sysscpl;&sysvlong;REL', txnname='putc',
43              getid=yes, appidvar=apprel);
44   /*------------------------*/
45
46   %macro mvsopts;
47     %if %quote(&sysscpl)=%quote(OS/390) or
48                         %quote(&sysscpl)=%quote(MVS)
49                      %then options stats;
50   %mend;
51   %mvsopts;
52
53   %let nsteps=3; %put **NSTEPS= &nsteps; %put **DATE= &sysdate9; %put **PUTC**;

**NSTEPS= 3
**DATE= 14AUG2002
**PUTC**
54   %let nlines = 80000;
55
56   /**
57    ** MACRO: LIMSETUP
58    **   Host specific number of lines to output, to vary exec time.
59    **/
60   %macro limsetup;
61      %if %str(&sysscp) = %str(OS) %then
62         %let nlines = 40000;
63   %mend;
64   %limsetup;
65
66   %let outfile = nul;
67   %let nelem = 100;
68   %let charsz = 20;
69
70   filename nul DUMMY;
71   data _null_; file &outfile; x=1; put x=; run;

NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 1 record was written to the file NUL.
      The minimum record length was 3.
      The maximum record length was 3.
NOTE: DATA statement used (Total process time):
      real time           0.03 seconds
      cpu time            0.03 seconds


72
73
74   /**
75    ** MACRO: PUTTST
76    **   Use no column controls to output data to default output device.
77    **/
78   %macro puttst(fmt);
79      %put ##FMT= &fmt;
80
81     %gtidset(&fmt, PUTC, app);
82      %do i = 1 %to &nsteps;
83
84      %armstrt(txnidvar=round&i );
85         data _null_;
86            file &outfile;
87            array arr{&nelem} $ &charsz;
88            do i = 1 to &nelem;
89               arr{i} = repeat('j', &charsz);
90            end;
91            do i = 1 to &nlines;
92               put arr{*} &fmt;
93            end;
94            run;
95       %armstop;
96      %end;
97   %mend;
98
99
100  /**
101   ** MACRO: ABSEXP
102   **   Create put statement that uses @ column control.
103   **/
104  %macro absexp(nelem, fmt);
105     %local i;
106     %do i = 1 %to &nelem;
107        @%eval(&i*(&charsz+1)) arr{&i} &fmt
108     %end;
109  %mend;
110
111
112  /**
113   ** MACRO: PUTTST2
114   **   Use @ column controls to output data to default output device.
115   **/
116  %macro puttst2(fmt);
117     %put ##FMTABS= &fmt;
118
119    %gtidset(&fmt, PUTC_ABS, appabs);
120    %do i = 1 %to &nsteps;
121
122     %armstrt(txnidvar=round&i );
123        data _null_;
124           file &outfile;
125           array arr{&nelem} $ &charsz;
126           do i = 1 to &nelem;
127              arr{i} = repeat('j', &charsz);
128           end;
129           do i = 1 to &nlines;
130              put %absexp(&nelem, &fmt);
131           end;
132           run;
133      %armstop;
134
135     %end;
136  %mend;
137
138
139  /**
140   ** MACRO: RELEXP
141   **   Create put statement that uses + column control.
142   **/
143  %macro relexp(nelem, fmt);
144     %local i;
145     %do i = 1 %to &nelem;
146        +3 arr{&i} &fmt
147     %end;
148  %mend;
149
150
151  /**
152   ** MACRO: PUTTST3
153   **   Use + column controls to output data to default output device.
154   **/
155  %macro puttst3(fmt);
156     %put ##FMTREL= &fmt;
157
158    %gtidset(&fmt, PUTC_REL, apprel);
159     %do i = 1 %to &nsteps;
160
161      %armstrt(txnidvar=round&i );
162        data _null_;
163           file &outfile;
164           array arr{&nelem} $ &charsz;
165           do i = 1 to &nelem;
166              arr{i} = repeat('j', &charsz);
167           end;
168           do i = 1 to &nlines;
169              put %relexp(&nelem, &fmt);
170           end;
171           run;
172       %armstop;
173
174     %end;
175  %mend;
176
177
178  %puttst($);
##FMT= $

NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 720000 records were written to the file NUL.
      The minimum record length was 83.
      The maximum record length was 251.
NOTE: DATA statement used (Total process time):
      real time           1.42 seconds
      cpu time            1.39 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 720000 records were written to the file NUL.
      The minimum record length was 83.
      The maximum record length was 251.
NOTE: DATA statement used (Total process time):
      real time           1.38 seconds
      cpu time            1.39 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 720000 records were written to the file NUL.
      The minimum record length was 83.
      The maximum record length was 251.
NOTE: DATA statement used (Total process time):
      real time           1.37 seconds
      cpu time            1.35 seconds


179  %puttst($&charsz..);
##FMT= $20.

NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 720000 records were written to the file NUL.
      The minimum record length was 80.
      The maximum record length was 240.
NOTE: DATA statement used (Total process time):
      real time           0.85 seconds
      cpu time            0.85 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 720000 records were written to the file NUL.
      The minimum record length was 80.
      The maximum record length was 240.
NOTE: DATA statement used (Total process time):
      real time           0.85 seconds
      cpu time            0.85 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 720000 records were written to the file NUL.
      The minimum record length was 80.
      The maximum record length was 240.
NOTE: DATA statement used (Total process time):
      real time           0.84 seconds
      cpu time            0.84 seconds


180  %puttst($CHAR&charsz..);
##FMT= $CHAR20.

NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 720000 records were written to the file NUL.
      The minimum record length was 80.
      The maximum record length was 240.
NOTE: DATA statement used (Total process time):
      real time           0.84 seconds
      cpu time            0.84 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 720000 records were written to the file NUL.
      The minimum record length was 80.
      The maximum record length was 240.
NOTE: DATA statement used (Total process time):
      real time           0.84 seconds
      cpu time            0.84 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 720000 records were written to the file NUL.
      The minimum record length was 80.
      The maximum record length was 240.
NOTE: DATA statement used (Total process time):
      real time           0.85 seconds
      cpu time            0.85 seconds


181  %puttst($ASCII&charsz..);
##FMT= $ASCII20.

NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 720000 records were written to the file NUL.
      The minimum record length was 80.
      The maximum record length was 240.
NOTE: DATA statement used (Total process time):
      real time           1.17 seconds
      cpu time            1.14 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 720000 records were written to the file NUL.
      The minimum record length was 80.
      The maximum record length was 240.
NOTE: DATA statement used (Total process time):
      real time           1.12 seconds
      cpu time            1.12 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 720000 records were written to the file NUL.
      The minimum record length was 80.
      The maximum record length was 240.
NOTE: DATA statement used (Total process time):
      real time           1.12 seconds
      cpu time            1.12 seconds


182  %puttst($HEX%eval(&charsz * 2).);
##FMT= $HEX40.

NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 1360000 records were written to the file NUL.
      The minimum record length was 160.
      The maximum record length was 240.
NOTE: DATA statement used (Total process time):
      real time           2.34 seconds
      cpu time            2.31 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 1360000 records were written to the file NUL.
      The minimum record length was 160.
      The maximum record length was 240.
NOTE: DATA statement used (Total process time):
      real time           2.31 seconds
      cpu time            2.29 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 1360000 records were written to the file NUL.
      The minimum record length was 160.
      The maximum record length was 240.
NOTE: DATA statement used (Total process time):
      real time           2.31 seconds
      cpu time            2.31 seconds


183  %puttst($UPCASE&charsz..);
##FMT= $UPCASE20.

NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 720000 records were written to the file NUL.
      The minimum record length was 80.
      The maximum record length was 240.
NOTE: DATA statement used (Total process time):
      real time           1.93 seconds
      cpu time            1.90 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 720000 records were written to the file NUL.
      The minimum record length was 80.
      The maximum record length was 240.
NOTE: DATA statement used (Total process time):
      real time           1.89 seconds
      cpu time            1.89 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 720000 records were written to the file NUL.
      The minimum record length was 80.
      The maximum record length was 240.
NOTE: DATA statement used (Total process time):
      real time           1.90 seconds
      cpu time            1.89 seconds


184
185  %puttst2($);
##FMTABS= $

NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 7200000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 250.
NOTE: DATA statement used (Total process time):
      real time           4.38 seconds
      cpu time            4.39 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 7200000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 250.
NOTE: DATA statement used (Total process time):
      real time           4.40 seconds
      cpu time            4.40 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 7200000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 250.
NOTE: DATA statement used (Total process time):
      real time           4.43 seconds
      cpu time            4.43 seconds


186  %puttst2($&charsz..);
##FMTABS= $20.

NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 7200000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 250.
NOTE: DATA statement used (Total process time):
      real time           4.20 seconds
      cpu time            4.20 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 7200000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 250.
NOTE: DATA statement used (Total process time):
      real time           4.21 seconds
      cpu time            4.21 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 7200000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 250.
NOTE: DATA statement used (Total process time):
      real time           4.21 seconds
      cpu time            4.21 seconds


187  %puttst2($CHAR&charsz..);
##FMTABS= $CHAR20.

NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 7200000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 250.
NOTE: DATA statement used (Total process time):
      real time           4.23 seconds
      cpu time            4.23 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 7200000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 250.
NOTE: DATA statement used (Total process time):
      real time           4.20 seconds
      cpu time            4.18 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 7200000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 250.
NOTE: DATA statement used (Total process time):
      real time           4.21 seconds
      cpu time            4.21 seconds


188  %puttst2($ASCII&charsz..);
##FMTABS= $ASCII20.

NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 7200000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 250.
NOTE: DATA statement used (Total process time):
      real time           4.29 seconds
      cpu time            4.29 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 7200000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 250.
NOTE: DATA statement used (Total process time):
      real time           4.37 seconds
      cpu time            4.37 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 7200000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 250.
NOTE: DATA statement used (Total process time):
      real time           4.29 seconds
      cpu time            4.29 seconds


189  %puttst2($HEX%eval(&charsz * 2).);
##FMTABS= $HEX40.

NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 7280000 records were written to the file NUL.
      The minimum record length was 40.
      The maximum record length was 249.
NOTE: DATA statement used (Total process time):
      real time           5.34 seconds
      cpu time            5.34 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 7280000 records were written to the file NUL.
      The minimum record length was 40.
      The maximum record length was 249.
NOTE: DATA statement used (Total process time):
      real time           5.32 seconds
      cpu time            5.32 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 7280000 records were written to the file NUL.
      The minimum record length was 40.
      The maximum record length was 249.
NOTE: DATA statement used (Total process time):
      real time           5.32 seconds
      cpu time            5.32 seconds


190  %puttst2($UPCASE&charsz..);
##FMTABS= $UPCASE20.

NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 7200000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 250.
NOTE: DATA statement used (Total process time):
      real time           5.07 seconds
      cpu time            5.04 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 7200000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 250.
NOTE: DATA statement used (Total process time):
      real time           5.03 seconds
      cpu time            5.03 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 7200000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 250.
NOTE: DATA statement used (Total process time):
      real time           5.03 seconds
      cpu time            5.03 seconds


191
192  %puttst3($);
##FMTREL= $

NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 800000 records were written to the file NUL.
      The minimum record length was 236.
      The maximum record length was 239.
NOTE: DATA statement used (Total process time):
      real time           2.39 seconds
      cpu time            2.39 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 800000 records were written to the file NUL.
      The minimum record length was 236.
      The maximum record length was 239.
NOTE: DATA statement used (Total process time):
      real time           2.40 seconds
      cpu time            2.40 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 800000 records were written to the file NUL.
      The minimum record length was 236.
      The maximum record length was 239.
NOTE: DATA statement used (Total process time):
      real time           2.39 seconds
      cpu time            2.39 seconds


193  %puttst3($&charsz..);
##FMTREL= $20.

NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 800000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 253.
NOTE: DATA statement used (Total process time):
      real time           2.25 seconds
      cpu time            2.25 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 800000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 253.
NOTE: DATA statement used (Total process time):
      real time           2.23 seconds
      cpu time            2.23 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 800000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 253.
NOTE: DATA statement used (Total process time):
      real time           2.23 seconds
      cpu time            2.23 seconds


194  %puttst3($CHAR&charsz..);
##FMTREL= $CHAR20.

NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 800000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 253.
NOTE: DATA statement used (Total process time):
      real time           2.23 seconds
      cpu time            2.23 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 800000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 253.
NOTE: DATA statement used (Total process time):
      real time           2.23 seconds
      cpu time            2.23 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 800000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 253.
NOTE: DATA statement used (Total process time):
      real time           2.25 seconds
      cpu time            2.25 seconds


195  %puttst3($ASCII&charsz..);
##FMTREL= $ASCII20.

NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 800000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 253.
NOTE: DATA statement used (Total process time):
      real time           2.51 seconds
      cpu time            2.51 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 800000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 253.
NOTE: DATA statement used (Total process time):
      real time           2.50 seconds
      cpu time            2.50 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 800000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 253.
NOTE: DATA statement used (Total process time):
      real time           2.51 seconds
      cpu time            2.50 seconds


196  %puttst3($HEX%eval(&charsz * 2).);
##FMTREL= $HEX40.

NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 1360000 records were written to the file NUL.
      The minimum record length was 212.
      The maximum record length was 255.
NOTE: DATA statement used (Total process time):
      real time           3.51 seconds
      cpu time            3.51 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 1360000 records were written to the file NUL.
      The minimum record length was 212.
      The maximum record length was 255.
NOTE: DATA statement used (Total process time):
      real time           3.49 seconds
      cpu time            3.49 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 1360000 records were written to the file NUL.
      The minimum record length was 212.
      The maximum record length was 255.
NOTE: DATA statement used (Total process time):
      real time           3.51 seconds
      cpu time            3.51 seconds


197  %puttst3($UPCASE&charsz..);
##FMTREL= $UPCASE20.

NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 800000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 253.
NOTE: DATA statement used (Total process time):
      real time           3.23 seconds
      cpu time            3.23 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 800000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 253.
NOTE: DATA statement used (Total process time):
      real time           3.23 seconds
      cpu time            3.23 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 800000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 253.
NOTE: DATA statement used (Total process time):
      real time           3.32 seconds
      cpu time            3.32 seconds


198
199   /*-- Unarm application --*/
200   %armend(appidvar=app);
201   %armend(appidvar=appabs);
202   %armend(appidvar=apprel);

NOTE: SAS Institute Inc., SAS Campus Drive, Cary, NC USA 27513-2414
NOTE: The SAS System used:
      real time           3:30.01
      cpu time            2:41.35


V9 ARM Log

I,1344974248.755000,1,0.421875,1.468750,DATASTEP;XP_PRO;9.00.00M0P081302,*
G,1344974248.974000,1,1,putc,
I,1344974248.974000,2,0.468750,1.484375,DATASTEP;XP_PRO;9.00.00M0P081302;ABS,*
G,1344974248.990000,2,2,putc,
I,1344974249.5000,3,0.500000,1.484375,DATASTEP;XP_PRO;9.00.00M0P081302;REL,*
G,1344974249.21000,3,3,putc,
G,1344974249.458000,1,4,$,PUTC
S,1344974249.599000,1,4,1,0.750000,1.671875
P,1344974251.162000,1,4,1,2.140625,1.703125,0
S,1344974251.193000,1,4,2,2.171875,1.703125
P,1344974252.865000,1,4,2,3.578125,1.734375,0
S,1344974252.880000,1,4,3,3.593750,1.734375
P,1344974254.318000,1,4,3,4.953125,1.750000,0
G,1344974254.333000,1,5,$20.,PUTC
S,1344974254.380000,1,5,4,5.0,1.765625
P,1344974255.287000,1,5,4,5.875000,1.781250,0
S,1344974255.302000,1,5,5,5.890625,1.781250
P,1344974256.208000,1,5,5,6.765625,1.781250,0
S,1344974256.224000,1,5,6,6.781250,1.781250
P,1344974257.115000,1,5,6,7.640625,1.781250,0
G,1344974257.130000,1,6,$CHAR20.,PUTC
S,1344974257.193000,1,6,7,7.718750,1.781250
P,1344974258.83000,1,6,7,8.578125,1.781250,0
S,1344974258.99000,1,6,8,8.593750,1.781250
P,1344974258.990000,1,6,8,9.437500,1.781250,0
S,1344974259.5000,1,6,9,9.453125,1.781250
P,1344974259.912000,1,6,9,10.328125,1.781250,0
G,1344974259.927000,1,7,$ASCII20.,PUTC
S,1344974259.974000,1,7,10,10.390625,1.781250
P,1344974261.224000,1,7,10,11.546875,1.781250,0
S,1344974261.224000,1,7,11,11.546875,1.781250
P,1344974262.427000,1,7,11,12.671875,1.812500,0
S,1344974262.443000,1,7,12,12.687500,1.812500
P,1344974263.646000,1,7,12,13.812500,1.828125,0
G,1344974263.677000,1,8,$HEX40.,PUTC
S,1344974263.724000,1,8,13,13.890625,1.828125
P,1344974266.193000,1,8,13,16.203125,1.828125,0
S,1344974266.208000,1,8,14,16.218750,1.828125
P,1344974268.630000,1,8,14,18.515625,1.828125,0
S,1344974268.646000,1,8,15,18.531250,1.828125
P,1344974271.37000,1,8,15,20.843750,1.843750,0
G,1344974271.52000,1,9,$UPCASE20.,PUTC
S,1344974271.99000,1,9,16,20.890625,1.859375
P,1344974273.146000,1,9,16,22.796875,1.875000,0
S,1344974273.162000,1,9,17,22.812500,1.875000
P,1344974275.193000,1,9,17,24.703125,1.906250,0
S,1344974275.208000,1,9,18,24.718750,1.906250
P,1344974277.162000,1,9,18,26.609375,1.906250,0
G,1344974277.193000,2,10,$,PUTC_ABS
S,1344974277.240000,2,10,19,26.687500,1.906250
P,1344974281.677000,2,10,19,31.62500,1.921875,0
S,1344974281.693000,2,10,20,31.78125,1.921875
P,1344974286.130000,2,10,20,35.468750,1.937500,0
S,1344974286.146000,2,10,21,35.484375,1.937500
P,1344974290.630000,2,10,21,39.937500,1.937500,0
G,1344974290.646000,2,11,$20.,PUTC_ABS
S,1344974290.693000,2,11,22,40.0,1.937500
P,1344974294.958000,2,11,22,44.218750,1.953125,0
S,1344974294.974000,2,11,23,44.234375,1.953125
P,1344974299.240000,2,11,23,48.468750,1.953125,0
S,1344974299.255000,2,11,24,48.484375,1.953125
P,1344974303.505000,2,11,24,52.703125,1.968750,0
G,1344974303.521000,2,12,$CHAR20.,PUTC_ABS
S,1344974303.583000,2,12,25,52.765625,1.984375
P,1344974307.833000,2,12,25,57.0,1.984375,0
S,1344974307.849000,2,12,26,57.15625,1.984375
P,1344974312.99000,2,12,26,61.187500,2.0,0
S,1344974312.115000,2,12,27,61.203125,2.0
P,1344974316.380000,2,12,27,65.421875,2.0,0
G,1344974316.412000,2,13,$ASCII20.,PUTC_ABS
S,1344974316.458000,2,13,28,65.500000,2.0
P,1344974320.833000,2,13,28,69.781250,2.15625,0
S,1344974320.849000,2,13,29,69.781250,2.31250
P,1344974325.271000,2,13,29,74.156250,2.46875,0
S,1344974325.287000,2,13,30,74.171875,2.46875
P,1344974329.662000,2,13,30,78.453125,2.62500,0
G,1344974329.677000,2,14,$HEX40.,PUTC_ABS
S,1344974329.740000,2,14,31,78.515625,2.78125
P,1344974335.115000,2,14,31,83.843750,2.109375,0
S,1344974335.130000,2,14,32,83.859375,2.109375
P,1344974340.505000,2,14,32,89.187500,2.109375,0
S,1344974340.521000,2,14,33,89.203125,2.109375
P,1344974345.927000,2,14,33,94.531250,2.140625,0
G,1344974345.943000,2,15,$UPCASE20.,PUTC_ABS
S,1344974346.5000,2,15,34,94.609375,2.140625
P,1344974351.162000,2,15,34,99.656250,2.140625,0
S,1344974351.177000,2,15,35,99.656250,2.156250
P,1344974356.255000,2,15,35,104.687500,2.171875,0
S,1344974356.271000,2,15,36,104.687500,2.187500
P,1344974361.349000,2,15,36,109.718750,2.203125,0
G,1344974361.380000,3,16,$,PUTC_REL
S,1344974361.427000,3,16,37,109.796875,2.203125
P,1344974363.865000,3,16,37,112.156250,2.234375,0
S,1344974363.880000,3,16,38,112.171875,2.234375
P,1344974366.333000,3,16,38,114.562500,2.250000,0
S,1344974366.349000,3,16,39,114.578125,2.250000
P,1344974368.833000,3,16,39,116.937500,2.296875,0
G,1344974368.849000,3,17,$20.,PUTC_REL
S,1344974368.896000,3,17,40,116.968750,2.328125
P,1344974371.193000,3,17,40,119.218750,2.328125,0
S,1344974371.208000,3,17,41,119.218750,2.343750
P,1344974373.474000,3,17,41,121.453125,2.359375,0
S,1344974373.474000,3,17,42,121.453125,2.359375
P,1344974375.818000,3,17,42,123.671875,2.390625,0
G,1344974375.833000,3,18,$CHAR20.,PUTC_REL
S,1344974375.896000,3,18,43,123.734375,2.406250
P,1344974378.177000,3,18,43,125.968750,2.421875,0
S,1344974378.193000,3,18,44,125.984375,2.421875
P,1344974380.505000,3,18,44,128.203125,2.437500,0
S,1344974380.521000,3,18,45,128.218750,2.437500
P,1344974382.818000,3,18,45,130.437500,2.484375,0
G,1344974382.833000,3,19,$ASCII20.,PUTC_REL
S,1344974382.896000,3,19,46,130.500000,2.500000
P,1344974385.443000,3,19,46,133.0,2.515625,0
S,1344974385.458000,3,19,47,133.0,2.531250
P,1344974387.990000,3,19,47,135.484375,2.562500,0
S,1344974388.5000,3,19,48,135.500000,2.562500
P,1344974390.568000,3,19,48,138.15625,2.562500,0
G,1344974390.583000,3,20,$HEX40.,PUTC_REL
S,1344974390.630000,3,20,49,138.62500,2.578125
P,1344974394.177000,3,20,49,141.562500,2.593750,0
S,1344974394.193000,3,20,50,141.578125,2.593750
P,1344974397.740000,3,20,50,145.46875,2.625000,0
S,1344974397.755000,3,20,51,145.46875,2.640625
P,1344974401.318000,3,20,51,148.531250,2.671875,0
G,1344974401.349000,3,21,$UPCASE20.,PUTC_REL
S,1344974401.396000,3,21,52,148.593750,2.687500
P,1344974404.755000,3,21,52,151.828125,2.718750,0
S,1344974404.771000,3,21,53,151.843750,2.718750
P,1344974408.68000,3,21,53,155.62500,2.734375,0
S,1344974408.83000,3,21,54,155.78125,2.734375
P,1344974411.505000,3,21,54,158.375000,2.765625,0
E,1344974411.896000,1,158.390625,2.781250
E,1344974411.912000,2,158.406250,2.781250
E,1344974411.927000,3,158.421875,2.781250

V8 SAS Log

NOTE: Copyright (c) 1999-2001 by SAS Institute Inc., Cary, NC, USA.
NOTE: SAS (r) Proprietary Software Release 8.2 (TS2M0)
      Licensed to SAS INSTITUTE EMPLOYEE USE SOFTWARE, Site 0000800045.
NOTE: This session is executing on the WIN_PRO  platform.



NOTE: SAS initialization used:
      real time           1.67 seconds
      cpu time            1.23 seconds

1    /********************* BASE:BIT PERFORMANCE TEST **********************
2
3     NAME:     putc.sas
4     PURPOSE:  Put statement to DUMMY with character formats
5     VARIES:   format
6     AUTHOR:   Jason Secosky - jaseco
7     SUPPORT:  Jason Secosky - jaseco
8     NOTES:    Little I/O to stress data step execution
9          :    Not going through ODS
10         :    Uses no column controls, and @ & + column controls
11         :    Uses frequently used formats
12         :    gtidset macro contained in perfauto.sas (base dvd)
13    HISTORY:  07Oct99 created
14
15    **********************************************************************//*-- gtidsetup is
15 ! for tests that start more than one ARM 'application' --*/
16   options source source2;
17   %macro gtidset(fmt, desc, appid);
18
19   %if ("&fmt" = "")  %then
20     %do;
21       %armgtid(txnname='NONE', txndet='&desc', txnidvar=round1, appidvar=&appid);

22       %armgtid(txnname='NONE', txndet='&desc', txnidvar=round2, appidvar=&appid);

23       %armgtid(txnname='NONE', txndet='&desc', txnidvar=round3, appidvar=&appid);

24     %end;
25   %else
26     %do;
27       %armgtid(txnname='&fmt', txndet='&desc', txnidvar=round1, appidvar=&appid);

28       %armgtid(txnname='&fmt', txndet='&desc', txnidvar=round2, appidvar=&appid);

29       %armgtid(txnname='&fmt', txndet='&desc', txnidvar=round3, appidvar=&appid);

30     %end;
31   %mend;
32
33   /*-- Turn on ARM macros --*/
34     %let _armexec = 1;
35     %let _armacro = 1;
36     %filename( ARMLOG, putc, txt ); /* V8 */
37     *options armloc="putc.log"; /* V9 option */
38     %arminit(appname='DATASTEP;&sysscpl;&sysvlong', txnname='putc',
39              getid=yes, appidvar=app);
40     %arminit(appname='DATASTEP;&sysscpl;&sysvlong;ABS', txnname='putc',
41              getid=yes, appidvar=appabs);
42     %arminit(appname='DATASTEP;&sysscpl;&sysvlong;REL', txnname='putc',
43              getid=yes, appidvar=apprel);
44   /*------------------------*/
45
46   %macro mvsopts;
47     %if %quote(&sysscpl)=%quote(OS/390) or
48                         %quote(&sysscpl)=%quote(MVS)
49                      %then options stats;
50   %mend;
51   %mvsopts;
52
53   %let nsteps=3; %put **NSTEPS= &nsteps; %put **DATE= &sysdate9; %put **PUTC**;

**NSTEPS= 3
**DATE= 14AUG2002
**PUTC**
54   %let nlines = 80000;
55
56   /**
57    ** MACRO: LIMSETUP
58    **   Host specific number of lines to output, to vary exec time.
59    **/
60   %macro limsetup;
61      %if %str(&sysscp) = %str(OS) %then
62         %let nlines = 40000;
63   %mend;
64   %limsetup;
65
66   %let outfile = nul;
67   %let nelem = 100;
68   %let charsz = 20;
69
70   filename nul DUMMY;
71   data _null_; file &outfile; x=1; put x=; run;

NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 1 record was written to the file NUL.
      The minimum record length was 3.
      The maximum record length was 3.
NOTE: DATA statement used:
      real time           0.21 seconds
      cpu time            0.06 seconds


72
73
74   /**
75    ** MACRO: PUTTST
76    **   Use no column controls to output data to default output device.
77    **/
78   %macro puttst(fmt);
79      %put ##FMT= &fmt;
80
81     %gtidset(&fmt, PUTC, app);
82      %do i = 1 %to &nsteps;
83
84      %armstrt(txnidvar=round&i );
85         data _null_;
86            file &outfile;
87            array arr{&nelem} $ &charsz;
88            do i = 1 to &nelem;
89               arr{i} = repeat('j', &charsz);
90            end;
91            do i = 1 to &nlines;
92               put arr{*} &fmt;
93            end;
94            run;
95       %armstop;
96      %end;
97   %mend;
98
99
100  /**
101   ** MACRO: ABSEXP
102   **   Create put statement that uses @ column control.
103   **/
104  %macro absexp(nelem, fmt);
105     %local i;
106     %do i = 1 %to &nelem;
107        @%eval(&i*(&charsz+1)) arr{&i} &fmt
108     %end;
109  %mend;
110
111
112  /**
113   ** MACRO: PUTTST2
114   **   Use @ column controls to output data to default output device.
115   **/
116  %macro puttst2(fmt);
117     %put ##FMTABS= &fmt;
118
119    %gtidset(&fmt, PUTC_ABS, appabs);
120    %do i = 1 %to &nsteps;
121
122     %armstrt(txnidvar=round&i );
123        data _null_;
124           file &outfile;
125           array arr{&nelem} $ &charsz;
126           do i = 1 to &nelem;
127              arr{i} = repeat('j', &charsz);
128           end;
129           do i = 1 to &nlines;
130              put %absexp(&nelem, &fmt);
131           end;
132           run;
133      %armstop;
134
135     %end;
136  %mend;
137
138
139  /**
140   ** MACRO: RELEXP
141   **   Create put statement that uses + column control.
142   **/
143  %macro relexp(nelem, fmt);
144     %local i;
145     %do i = 1 %to &nelem;
146        +3 arr{&i} &fmt
147     %end;
148  %mend;
149
150
151  /**
152   ** MACRO: PUTTST3
153   **   Use + column controls to output data to default output device.
154   **/
155  %macro puttst3(fmt);
156     %put ##FMTREL= &fmt;
157
158    %gtidset(&fmt, PUTC_REL, apprel);
159     %do i = 1 %to &nsteps;
160
161      %armstrt(txnidvar=round&i );
162        data _null_;
163           file &outfile;
164           array arr{&nelem} $ &charsz;
165           do i = 1 to &nelem;
166              arr{i} = repeat('j', &charsz);
167           end;
168           do i = 1 to &nlines;
169              put %relexp(&nelem, &fmt);
170           end;
171           run;
172       %armstop;
173
174     %end;
175  %mend;
176
177
178  %puttst($);
##FMT= $

NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 720000 records were written to the file NUL.
      The minimum record length was 83.
      The maximum record length was 251.
NOTE: DATA statement used:
      real time           1.84 seconds
      cpu time            1.73 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 720000 records were written to the file NUL.
      The minimum record length was 83.
      The maximum record length was 251.
NOTE: DATA statement used:
      real time           1.82 seconds
      cpu time            1.74 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 720000 records were written to the file NUL.
      The minimum record length was 83.
      The maximum record length was 251.
NOTE: DATA statement used:
      real time           1.79 seconds
      cpu time            1.71 seconds


179  %puttst($&charsz..);
##FMT= $20.

NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 720000 records were written to the file NUL.
      The minimum record length was 80.
      The maximum record length was 240.
NOTE: DATA statement used:
      real time           1.67 seconds
      cpu time            1.24 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 720000 records were written to the file NUL.
      The minimum record length was 80.
      The maximum record length was 240.
NOTE: DATA statement used:
      real time           1.31 seconds
      cpu time            1.23 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 720000 records were written to the file NUL.
      The minimum record length was 80.
      The maximum record length was 240.
NOTE: DATA statement used:
      real time           1.29 seconds
      cpu time            1.26 seconds


180  %puttst($CHAR&charsz..);
##FMT= $CHAR20.

NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 720000 records were written to the file NUL.
      The minimum record length was 80.
      The maximum record length was 240.
NOTE: DATA statement used:
      real time           1.25 seconds
      cpu time            1.24 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 720000 records were written to the file NUL.
      The minimum record length was 80.
      The maximum record length was 240.
NOTE: DATA statement used:
      real time           1.29 seconds
      cpu time            1.29 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 720000 records were written to the file NUL.
      The minimum record length was 80.
      The maximum record length was 240.
NOTE: DATA statement used:
      real time           1.28 seconds
      cpu time            1.23 seconds


181  %puttst($ASCII&charsz..);
##FMT= $ASCII20.

NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 720000 records were written to the file NUL.
      The minimum record length was 80.
      The maximum record length was 240.
NOTE: DATA statement used:
      real time           2.01 seconds
      cpu time            1.98 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 720000 records were written to the file NUL.
      The minimum record length was 80.
      The maximum record length was 240.
NOTE: DATA statement used:
      real time           1.96 seconds
      cpu time            1.96 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 720000 records were written to the file NUL.
      The minimum record length was 80.
      The maximum record length was 240.
NOTE: DATA statement used:
      real time           1.96 seconds
      cpu time            1.96 seconds


182  %puttst($HEX%eval(&charsz * 2).);
##FMT= $HEX40.

NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 1360000 records were written to the file NUL.
      The minimum record length was 160.
      The maximum record length was 240.
NOTE: DATA statement used:
      real time           3.07 seconds
      cpu time            3.06 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 1360000 records were written to the file NUL.
      The minimum record length was 160.
      The maximum record length was 240.
NOTE: DATA statement used:
      real time           3.10 seconds
      cpu time            3.04 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 1360000 records were written to the file NUL.
      The minimum record length was 160.
      The maximum record length was 240.
NOTE: DATA statement used:
      real time           3.10 seconds
      cpu time            3.10 seconds


183  %puttst($UPCASE&charsz..);
##FMT= $UPCASE20.

NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 720000 records were written to the file NUL.
      The minimum record length was 80.
      The maximum record length was 240.
NOTE: DATA statement used:
      real time           2.79 seconds
      cpu time            2.78 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 720000 records were written to the file NUL.
      The minimum record length was 80.
      The maximum record length was 240.
NOTE: DATA statement used:
      real time           2.78 seconds
      cpu time            2.73 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 720000 records were written to the file NUL.
      The minimum record length was 80.
      The maximum record length was 240.
NOTE: DATA statement used:
      real time           2.73 seconds
      cpu time            2.73 seconds


184
185  %puttst2($);
##FMTABS= $

NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 7200000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 250.
NOTE: DATA statement used:
      real time           6.62 seconds
      cpu time            6.57 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 7200000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 250.
NOTE: DATA statement used:
      real time           7.31 seconds
      cpu time            6.57 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 7200000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 250.
NOTE: DATA statement used:
      real time           6.79 seconds
      cpu time            6.56 seconds


186  %puttst2($&charsz..);
##FMTABS= $20.

NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 7200000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 250.
NOTE: DATA statement used:
      real time           6.46 seconds
      cpu time            6.39 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 7200000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 250.
NOTE: DATA statement used:
      real time           6.25 seconds
      cpu time            6.24 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 7200000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 250.
NOTE: DATA statement used:
      real time           6.26 seconds
      cpu time            6.23 seconds


187  %puttst2($CHAR&charsz..);
##FMTABS= $CHAR20.

NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 7200000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 250.
NOTE: DATA statement used:
      real time           6.25 seconds
      cpu time            6.24 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 7200000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 250.
NOTE: DATA statement used:
      real time           6.25 seconds
      cpu time            6.24 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 7200000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 250.
NOTE: DATA statement used:
      real time           6.25 seconds
      cpu time            6.24 seconds


188  %puttst2($ASCII&charsz..);
##FMTABS= $ASCII20.

NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 7200000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 250.
NOTE: DATA statement used:
      real time           6.92 seconds
      cpu time            6.92 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 7200000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 250.
NOTE: DATA statement used:
      real time           6.92 seconds
      cpu time            6.92 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 7200000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 250.
NOTE: DATA statement used:
      real time           6.98 seconds
      cpu time            6.93 seconds


189  %puttst2($HEX%eval(&charsz * 2).);
##FMTABS= $HEX40.

NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 7280000 records were written to the file NUL.
      The minimum record length was 40.
      The maximum record length was 249.
NOTE: DATA statement used:
      real time           8.46 seconds
      cpu time            8.28 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 7280000 records were written to the file NUL.
      The minimum record length was 40.
      The maximum record length was 249.
NOTE: DATA statement used:
      real time           8.75 seconds
      cpu time            8.56 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 7280000 records were written to the file NUL.
      The minimum record length was 40.
      The maximum record length was 249.
NOTE: DATA statement used:
      real time           8.87 seconds
      cpu time            8.57 seconds


190  %puttst2($UPCASE&charsz..);
##FMTABS= $UPCASE20.

NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 7200000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 250.
NOTE: DATA statement used:
      real time           8.87 seconds
      cpu time            8.24 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 7200000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 250.
NOTE: DATA statement used:
      real time           7.78 seconds
      cpu time            7.73 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 7200000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 250.
NOTE: DATA statement used:
      real time           8.59 seconds
      cpu time            8.15 seconds


191
192  %puttst3($);
##FMTREL= $

NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 800000 records were written to the file NUL.
      The minimum record length was 236.
      The maximum record length was 239.
NOTE: DATA statement used:
      real time           4.85 seconds
      cpu time            4.79 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 800000 records were written to the file NUL.
      The minimum record length was 236.
      The maximum record length was 239.
NOTE: DATA statement used:
      real time           4.81 seconds
      cpu time            4.76 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 800000 records were written to the file NUL.
      The minimum record length was 236.
      The maximum record length was 239.
NOTE: DATA statement used:
      real time           4.82 seconds
      cpu time            4.76 seconds


193  %puttst3($&charsz..);
##FMTREL= $20.

NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 800000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 253.
NOTE: DATA statement used:
      real time           4.35 seconds
      cpu time            4.35 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 800000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 253.
NOTE: DATA statement used:
      real time           4.85 seconds
      cpu time            4.49 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 800000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 253.
NOTE: DATA statement used:
      real time           5.00 seconds
      cpu time            4.39 seconds


194  %puttst3($CHAR&charsz..);
##FMTREL= $CHAR20.

NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 800000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 253.
NOTE: DATA statement used:
      real time           4.35 seconds
      cpu time            4.35 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 800000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 253.
NOTE: DATA statement used:
      real time           5.46 seconds
      cpu time            4.35 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 800000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 253.
NOTE: DATA statement used:
      real time           4.67 seconds
      cpu time            4.48 seconds


195  %puttst3($ASCII&charsz..);
##FMTREL= $ASCII20.

NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 800000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 253.
NOTE: DATA statement used:
      real time           5.21 seconds
      cpu time            5.03 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 800000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 253.
NOTE: DATA statement used:
      real time           5.37 seconds
      cpu time            5.17 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 800000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 253.
NOTE: DATA statement used:
      real time           5.46 seconds
      cpu time            5.26 seconds


196  %puttst3($HEX%eval(&charsz * 2).);
##FMTREL= $HEX40.

NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 1360000 records were written to the file NUL.
      The minimum record length was 212.
      The maximum record length was 255.
NOTE: DATA statement used:
      real time           6.07 seconds
      cpu time            6.03 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 1360000 records were written to the file NUL.
      The minimum record length was 212.
      The maximum record length was 255.
NOTE: DATA statement used:
      real time           6.53 seconds
      cpu time            6.23 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 1360000 records were written to the file NUL.
      The minimum record length was 212.
      The maximum record length was 255.
NOTE: DATA statement used:
      real time           6.34 seconds
      cpu time            6.17 seconds


197  %puttst3($UPCASE&charsz..);
##FMTREL= $UPCASE20.

NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 800000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 253.
NOTE: DATA statement used:
      real time           6.03 seconds
      cpu time            5.82 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 800000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 253.
NOTE: DATA statement used:
      real time           6.01 seconds
      cpu time            5.92 seconds



NOTE: The file NUL is:
      File Name=,
      RECFM=V,LRECL=256

NOTE: 800000 records were written to the file NUL.
      The minimum record length was 20.
      The maximum record length was 253.
NOTE: DATA statement used:
      real time           5.84 seconds
      cpu time            5.78 seconds


198
199   /*-- Unarm application --*/
200   %armend(appidvar=app);
201   %armend(appidvar=appabs);
202   %armend(appidvar=apprel);

NOTE: SAS Institute Inc., SAS Campus Drive, Cary, NC USA 27513-2414
NOTE: The SAS System used:
      real time           10:01.03
      cpu time            4:21.01

V8 ARM Log

08SEP2001:17:04:27.713  ARM_INIT    AppID=1  AppName=DATASTEP;WIN_NT;8.02.02M0P012301  AppUser=*
08SEP2001:17:04:27.963  ARM_GETID   AppID=1  ClsID=1  TxName=putc
08SEP2001:17:04:27.993  ARM_INIT    AppID=2  AppName=DATASTEP;WIN_NT;8.02.02M0P012301;ABS  AppUser=*
08SEP2001:17:04:28.023  ARM_GETID   AppID=2  ClsID=2  TxName=putc
08SEP2001:17:04:28.043  ARM_INIT    AppID=3  AppName=DATASTEP;WIN_NT;8.02.02M0P012301;REL  AppUser=*
08SEP2001:17:04:28.073  ARM_GETID   AppID=3  ClsID=3  TxName=putc
08SEP2001:17:04:29.085  ARM_GETID   AppID=1  ClsID=4  TxName=$  TxDet=PUTC
08SEP2001:17:04:29.345  ARM_START   AppID=1  ClsID=4  TxSHdl=1
08SEP2001:17:04:34.092  ARM_STOP    AppID=1  ClsID=4  TxSHdl=1  TxStat=0  TxElap=00:00:04.747  TxCpu=0:00:04.556
08SEP2001:17:04:34.122  ARM_START   AppID=1  ClsID=4  TxSHdl=2
08SEP2001:17:04:38.659  ARM_STOP    AppID=1  ClsID=4  TxSHdl=2  TxStat=0  TxElap=00:00:04.537  TxCpu=0:00:04.466
08SEP2001:17:04:38.689  ARM_START   AppID=1  ClsID=4  TxSHdl=3
08SEP2001:17:04:43.145  ARM_STOP    AppID=1  ClsID=4  TxSHdl=3  TxStat=0  TxElap=00:00:04.456  TxCpu=0:00:04.446
08SEP2001:17:04:43.185  ARM_GETID   AppID=1  ClsID=5  TxName=$20.  TxDet=PUTC
08SEP2001:17:04:43.285  ARM_START   AppID=1  ClsID=5  TxSHdl=4
08SEP2001:17:04:46.390  ARM_STOP    AppID=1  ClsID=5  TxSHdl=4  TxStat=0  TxElap=00:00:03.105  TxCpu=0:00:03.084
08SEP2001:17:04:46.420  ARM_START   AppID=1  ClsID=5  TxSHdl=5
08SEP2001:17:04:49.604  ARM_STOP    AppID=1  ClsID=5  TxSHdl=5  TxStat=0  TxElap=00:00:03.184  TxCpu=0:00:03.125
08SEP2001:17:04:49.655  ARM_START   AppID=1  ClsID=5  TxSHdl=6
08SEP2001:17:04:52.779  ARM_STOP    AppID=1  ClsID=5  TxSHdl=6  TxStat=0  TxElap=00:00:03.124  TxCpu=0:00:03.094
08SEP2001:17:04:52.819  ARM_GETID   AppID=1  ClsID=6  TxName=$CHAR20.  TxDet=PUTC
08SEP2001:17:04:52.929  ARM_START   AppID=1  ClsID=6  TxSHdl=7
08SEP2001:17:04:56.124  ARM_STOP    AppID=1  ClsID=6  TxSHdl=7  TxStat=0  TxElap=00:00:03.195  TxCpu=0:00:03.134
08SEP2001:17:04:56.154  ARM_START   AppID=1  ClsID=6  TxSHdl=8
08SEP2001:17:04:59.308  ARM_STOP    AppID=1  ClsID=6  TxSHdl=8  TxStat=0  TxElap=00:00:03.154  TxCpu=0:00:03.113
08SEP2001:17:04:59.348  ARM_START   AppID=1  ClsID=6  TxSHdl=9
08SEP2001:17:05:02.473  ARM_STOP    AppID=1  ClsID=6  TxSHdl=9  TxStat=0  TxElap=00:00:03.125  TxCpu=0:00:03.115
08SEP2001:17:05:02.523  ARM_GETID   AppID=1  ClsID=7  TxName=$ASCII20.  TxDet=PUTC
08SEP2001:17:05:02.633  ARM_START   AppID=1  ClsID=7  TxSHdl=10
08SEP2001:17:05:07.610  ARM_STOP    AppID=1  ClsID=7  TxSHdl=10  TxStat=0  TxElap=00:00:04.977  TxCpu=0:00:04.907
08SEP2001:17:05:07.640  ARM_START   AppID=1  ClsID=7  TxSHdl=11
08SEP2001:17:05:12.628  ARM_STOP    AppID=1  ClsID=7  TxSHdl=11  TxStat=0  TxElap=00:00:04.988  TxCpu=0:00:04.957
08SEP2001:17:05:12.668  ARM_START   AppID=1  ClsID=7  TxSHdl=12
08SEP2001:17:05:17.595  ARM_STOP    AppID=1  ClsID=7  TxSHdl=12  TxStat=0  TxElap=00:00:04.927  TxCpu=0:00:04.906
08SEP2001:17:05:17.655  ARM_GETID   AppID=1  ClsID=8  TxName=$HEX40.  TxDet=PUTC
08SEP2001:17:05:17.775  ARM_START   AppID=1  ClsID=8  TxSHdl=13
08SEP2001:17:05:28.220  ARM_STOP    AppID=1  ClsID=8  TxSHdl=13  TxStat=0  TxElap=00:00:10.445  TxCpu=0:00:10.354
08SEP2001:17:05:28.260  ARM_START   AppID=1  ClsID=8  TxSHdl=14
08SEP2001:17:05:38.585  ARM_STOP    AppID=1  ClsID=8  TxSHdl=14  TxStat=0  TxElap=00:00:10.325  TxCpu=0:00:10.295
08SEP2001:17:05:38.625  ARM_START   AppID=1  ClsID=8  TxSHdl=15
08SEP2001:17:05:49.020  ARM_STOP    AppID=1  ClsID=8  TxSHdl=15  TxStat=0  TxElap=00:00:10.395  TxCpu=0:00:10.335
08SEP2001:17:05:49.070  ARM_GETID   AppID=1  ClsID=9  TxName=$UPCASE20.  TxDet=PUTC
08SEP2001:17:05:49.180  ARM_START   AppID=1  ClsID=9  TxSHdl=16
08SEP2001:17:05:56.330  ARM_STOP    AppID=1  ClsID=9  TxSHdl=16  TxStat=0  TxElap=00:00:07.150  TxCpu=0:00:07.000
08SEP2001:17:05:56.370  ARM_START   AppID=1  ClsID=9  TxSHdl=17
08SEP2001:17:06:03.421  ARM_STOP    AppID=1  ClsID=9  TxSHdl=17  TxStat=0  TxElap=00:00:07.051  TxCpu=0:00:07.010
08SEP2001:17:06:03.461  ARM_START   AppID=1  ClsID=9  TxSHdl=18
08SEP2001:17:06:10.611  ARM_STOP    AppID=1  ClsID=9  TxSHdl=18  TxStat=0  TxElap=00:00:07.150  TxCpu=0:00:07.000
08SEP2001:17:06:10.761  ARM_END     AppID=1  AppNCls=7  AppNTxSt=18  AppNTxSp=18  AppNTxUp=0  AppNTx0=18  AppNTx1=0  AppNTx2=0  AppElap=00:01:43.048  AppCpu=0:01:40.965  AppAvgRt=00:00:05.558  AppMinTx=00:00:00.000  AppMaxTx=00:00:10.445
08SEP2001:17:06:10.781  ARM_END     AppID=2  AppNCls=1  AppNTxSt=0  AppNTxSp=0  AppNTxUp=0  AppNTx0=0  AppNTx1=0  AppNTx2=0  AppElap=00:01:42.788  AppCpu=0:01:40.794
08SEP2001:17:06:10.821  ARM_END     AppID=3  AppNCls=1  AppNTxSt=0  AppNTxSp=0  AppNTxUp=0  AppNTx0=0  AppNTx1=0  AppNTx2=0  AppElap=00:01:42.778  AppCpu=0:01:40.774
08SEP2001:17:07:38.347  ARM_INIT    AppID=4  AppName=DATASTEP;WIN_NT;8.02.02M0P012301  AppUser=*
08SEP2001:17:07:38.377  ARM_GETID   AppID=4  ClsID=10  TxName=putc
08SEP2001:17:07:38.407  ARM_INIT    AppID=5  AppName=DATASTEP;WIN_NT;8.02.02M0P012301;ABS  AppUser=*
08SEP2001:17:07:38.427  ARM_GETID   AppID=5  ClsID=11  TxName=putc
08SEP2001:17:07:38.457  ARM_INIT    AppID=6  AppName=DATASTEP;WIN_NT;8.02.02M0P012301;REL  AppUser=*
08SEP2001:17:07:38.487  ARM_GETID   AppID=6  ClsID=12  TxName=putc
08SEP2001:17:07:38.577  ARM_GETID   AppID=4  ClsID=13  TxName=$  TxDet=PUTC
08SEP2001:17:07:38.688  ARM_START   AppID=4  ClsID=13  TxSHdl=19
08SEP2001:17:07:43.204  ARM_STOP    AppID=4  ClsID=13  TxSHdl=19  TxStat=0  TxElap=00:00:04.516  TxCpu=0:00:04.435
08SEP2001:17:07:43.234  ARM_START   AppID=4  ClsID=13  TxSHdl=20
08SEP2001:17:07:47.711  ARM_STOP    AppID=4  ClsID=13  TxSHdl=20  TxStat=0  TxElap=00:00:04.477  TxCpu=0:00:04.427
08SEP2001:17:07:47.751  ARM_START   AppID=4  ClsID=13  TxSHdl=21
08SEP2001:17:07:52.317  ARM_STOP    AppID=4  ClsID=13  TxSHdl=21  TxStat=0  TxElap=00:00:04.566  TxCpu=0:00:04.416
08SEP2001:17:07:52.367  ARM_GETID   AppID=4  ClsID=14  TxName=$20.  TxDet=PUTC
08SEP2001:17:07:52.477  ARM_START   AppID=4  ClsID=14  TxSHdl=22
08SEP2001:17:07:55.592  ARM_STOP    AppID=4  ClsID=14  TxSHdl=22  TxStat=0  TxElap=00:00:03.115  TxCpu=0:00:03.085
08SEP2001:17:07:55.632  ARM_START   AppID=4  ClsID=14  TxSHdl=23
08SEP2001:17:07:58.766  ARM_STOP    AppID=4  ClsID=14  TxSHdl=23  TxStat=0  TxElap=00:00:03.134  TxCpu=0:00:03.094
08SEP2001:17:07:58.796  ARM_START   AppID=4  ClsID=14  TxSHdl=24
08SEP2001:17:08:01.921  ARM_STOP    AppID=4  ClsID=14  TxSHdl=24  TxStat=0  TxElap=00:00:03.125  TxCpu=0:00:03.085
08SEP2001:17:08:01.961  ARM_GETID   AppID=4  ClsID=15  TxName=$CHAR20.  TxDet=PUTC
08SEP2001:17:08:02.081  ARM_START   AppID=4  ClsID=15  TxSHdl=25
08SEP2001:17:08:05.206  ARM_STOP    AppID=4  ClsID=15  TxSHdl=25  TxStat=0  TxElap=00:00:03.125  TxCpu=0:00:03.084
08SEP2001:17:08:05.246  ARM_START   AppID=4  ClsID=15  TxSHdl=26
08SEP2001:17:08:08.380  ARM_STOP    AppID=4  ClsID=15  TxSHdl=26  TxStat=0  TxElap=00:00:03.134  TxCpu=0:00:03.105
08SEP2001:17:08:08.420  ARM_START   AppID=4  ClsID=15  TxSHdl=27
08SEP2001:17:08:11.545  ARM_STOP    AppID=4  ClsID=15  TxSHdl=27  TxStat=0  TxElap=00:00:03.125  TxCpu=0:00:03.074
08SEP2001:17:08:11.585  ARM_GETID   AppID=4  ClsID=16  TxName=$ASCII20.  TxDet=PUTC
08SEP2001:17:08:11.695  ARM_START   AppID=4  ClsID=16  TxSHdl=28
08SEP2001:17:08:16.602  ARM_STOP    AppID=4  ClsID=16  TxSHdl=28  TxStat=0  TxElap=00:00:04.907  TxCpu=0:00:04.837
08SEP2001:17:08:16.632  ARM_START   AppID=4  ClsID=16  TxSHdl=29
08SEP2001:17:08:21.539  ARM_STOP    AppID=4  ClsID=16  TxSHdl=29  TxStat=0  TxElap=00:00:04.907  TxCpu=0:00:04.846
08SEP2001:17:08:21.569  ARM_START   AppID=4  ClsID=16  TxSHdl=30
08SEP2001:17:08:26.536  ARM_STOP    AppID=4  ClsID=16  TxSHdl=30  TxStat=0  TxElap=00:00:04.967  TxCpu=0:00:04.877
08SEP2001:17:08:26.586  ARM_GETID   AppID=4  ClsID=17  TxName=$HEX40.  TxDet=PUTC
08SEP2001:17:08:26.697  ARM_START   AppID=4  ClsID=17  TxSHdl=31
08SEP2001:17:08:36.961  ARM_STOP    AppID=4  ClsID=17  TxSHdl=31  TxStat=0  TxElap=00:00:10.264  TxCpu=0:00:10.164
08SEP2001:17:08:37.001  ARM_START   AppID=4  ClsID=17  TxSHdl=32
08SEP2001:17:08:47.326  ARM_STOP    AppID=4  ClsID=17  TxSHdl=32  TxStat=0  TxElap=00:00:10.325  TxCpu=0:00:10.185
08SEP2001:17:08:47.366  ARM_START   AppID=4  ClsID=17  TxSHdl=33
08SEP2001:17:08:57.761  ARM_STOP    AppID=4  ClsID=17  TxSHdl=33  TxStat=0  TxElap=00:00:10.395  TxCpu=0:00:10.193
08SEP2001:17:08:57.811  ARM_GETID   AppID=4  ClsID=18  TxName=$UPCASE20.  TxDet=PUTC
08SEP2001:17:08:57.911  ARM_START   AppID=4  ClsID=18  TxSHdl=34
08SEP2001:17:09:04.932  ARM_STOP    AppID=4  ClsID=18  TxSHdl=34  TxStat=0  TxElap=00:00:07.021  TxCpu=0:00:06.939
08SEP2001:17:09:04.972  ARM_START   AppID=4  ClsID=18  TxSHdl=35
08SEP2001:17:09:11.992  ARM_STOP    AppID=4  ClsID=18  TxSHdl=35  TxStat=0  TxElap=00:00:07.020  TxCpu=0:00:06.948
08SEP2001:17:09:12.032  ARM_START   AppID=4  ClsID=18  TxSHdl=36
08SEP2001:17:09:19.052  ARM_STOP    AppID=4  ClsID=18  TxSHdl=36  TxStat=0  TxElap=00:00:07.020  TxCpu=0:00:06.928
08SEP2001:17:09:19.082  ARM_END     AppID=4  AppNCls=7  AppNTxSt=18  AppNTxSp=18  AppNTxUp=0  AppNTx0=18  AppNTx1=0  AppNTx2=0  AppElap=00:01:40.735  AppCpu=0:01:39.153  AppAvgRt=00:00:05.508  AppMinTx=00:00:00.000  AppMaxTx=00:00:10.395
08SEP2001:17:09:19.102  ARM_END     AppID=5  AppNCls=1  AppNTxSt=0  AppNTxSp=0  AppNTxUp=0  AppNTx0=0  AppNTx1=0  AppNTx2=0  AppElap=00:01:40.695  AppCpu=0:01:39.133
08SEP2001:17:09:19.132  ARM_END     AppID=6  AppNCls=1  AppNTxSt=0  AppNTxSp=0  AppNTxUp=0  AppNTx0=0  AppNTx1=0  AppNTx2=0  AppElap=00:01:40.675  AppCpu=0:01:39.112
08SEP2001:17:10:59.256  ARM_INIT    AppID=1  AppName=DATASTEP;WIN_NT;8.02.02M0P012301  AppUser=*
08SEP2001:17:10:59.386  ARM_GETID   AppID=1  ClsID=1  TxName=putc
08SEP2001:17:10:59.416  ARM_INIT    AppID=2  AppName=DATASTEP;WIN_NT;8.02.02M0P012301;ABS  AppUser=*
08SEP2001:17:10:59.446  ARM_GETID   AppID=2  ClsID=2  TxName=putc
08SEP2001:17:10:59.466  ARM_INIT    AppID=3  AppName=DATASTEP;WIN_NT;8.02.02M0P012301;REL  AppUser=*
08SEP2001:17:10:59.496  ARM_GETID   AppID=3  ClsID=3  TxName=putc
08SEP2001:17:10:59.657  ARM_GETID   AppID=1  ClsID=4  TxName=$  TxDet=PUTC
08SEP2001:17:10:59.867  ARM_START   AppID=1  ClsID=4  TxSHdl=1
08SEP2001:17:11:04.423  ARM_STOP    AppID=1  ClsID=4  TxSHdl=1  TxStat=0  TxElap=00:00:04.556  TxCpu=0:00:04.555
08SEP2001:17:11:04.463  ARM_START   AppID=1  ClsID=4  TxSHdl=2
08SEP2001:17:11:08.940  ARM_STOP    AppID=1  ClsID=4  TxSHdl=2  TxStat=0  TxElap=00:00:04.477  TxCpu=0:00:04.455
08SEP2001:17:11:08.980  ARM_START   AppID=1  ClsID=4  TxSHdl=3
08SEP2001:17:11:13.537  ARM_STOP    AppID=1  ClsID=4  TxSHdl=3  TxStat=0  TxElap=00:00:04.557  TxCpu=0:00:04.455
08SEP2001:17:11:13.587  ARM_GETID   AppID=1  ClsID=5  TxName=$20.  TxDet=PUTC
08SEP2001:17:11:13.697  ARM_START   AppID=1  ClsID=5  TxSHdl=4