Date: Thu, 9 Mar 2000 14:40:15 GMT
Reply-To: dkb@CIX.COMPULINK.CO.UK
Sender: "SAS(r) Discussion" <SAS-L@LISTSERV.UGA.EDU>
From: dkb@CIX.COMPULINK.CO.UK
Organization: CIX - Compulink Information eXchange
Subject: Re: Efficiency note
Steve,
This is very curious. The figures I get are very much in line with Paul
Dorfman's. My system: SAS 6.12 TS020, Win 95, P6/200 Mhz, 80Mb RAM,
paging disabled.
Dave
34 data base;
35 do i=1 to 1e6;
36 date = date()-100 + ceil(ranuni(1)*100);
37 output;
38 end;
39 run;
NOTE: The data set WORK.BASE has 1000000 observations and 2 variables.
NOTE: The DATA statement used 3 minutes 57.65 seconds.
40 /*
41 NOTE: The data set WORK.BASE has 1000000 observations and 2
variables.
42 NOTE: The DATA statement used 5 minutes 33.67 seconds.
43 */
44
45 data select;
46 set base;
47 where (today()-60) <= date <= today();
48 run;
NOTE: The data set WORK.SELECT has 609789 observations and 2 variables.
NOTE: The DATA statement used 7.84 seconds.
49 /*
50 NOTE: The data set WORK.SELECT has 609789 observations and 2
variables.
51 NOTE: The DATA statement used 9 minutes 13.21 seconds.
52 */
53
54
55 proc datasets nolist; delete select; quit;
NOTE: Deleting WORK.SELECT (memtype=DATA).
NOTE: The PROCEDURE DATASETS used 0.0 seconds.
56
57
58 data select;
59 set base;
60 where %eval(%sysfunc(date())-60) <= date <=
%sysfunc(date());
61 run;
NOTE: The data set WORK.SELECT has 609789 observations and 2 variables.
NOTE: The DATA statement used 7.08 seconds.
62
63 /*
64 NOTE: The data set WORK.SELECT has 609789 observations and 2
variables.
65 NOTE: The DATA statement used 4.33 seconds.
66 */
.