Is there an efficient way to examine the Log and see what data steps and procs are taking a long time? "Long time" for me means more than 60 seconds. My program is a couple of thousand of lines long, is run several times a day as I'm still in test phase, and it would be great if there were a way to go through it quickly to see what's taking the longest. My initial thought was to manually search for the word "minutes" in the log, but SAS reports data steps in seconds, e.g. "Data statement used ... real time 2:34.37" meaning two minutes and 34.37 seconds. It doesn't mention the word "seconds" if it takes longer than a minute.
Thanks everyone,
Joe
Hi,
I have prepared one SAS Code for it...It is saved in my laptop...but what i can suggest you ri8 nw is like you can directly see the execution time by using following code...
%let o_time = %sysfunc(datetime());
/*--------------------------------------*/
YOUR SAS PROGRAMME
/*--------------------------------------*/
%let n_time = %sysfunc(datetime());
/*calculation of Total Execution Time*/
%let diff_T = %sysevalf(&n_time - &o_time);
%put "Total Execution Time is:";
%put "Total Execution Time"
%sysfunc(putn(%sysevalf(&n_time - &o_time), time8.));
-Urvish
Hi,
Consider using a log parsing program to read this data from the log, and then report on it. For example, http://www2.sas.com/proceedings/sugi30/219-30.pdf .
HTH,
--Q.
Here is a solution:
SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.