BookmarkSubscribeRSS Feed
haoduonge
Quartz | Level 8

Hi all,

I run proc lifetest as below but have this error [ERROR: The SAS System stopped processing this step because of insufficient memory].

Anyone has solution?

Thank you!

 

 

PROC LIFETEST data=ALL_3 PLOTS=SURVIVAL (ATRISK=0 TO 22 BY 2);

TIME fu_time*outcome(0);

STRATA GENDER_n/TEST=LOGRANK ADJUST=SIDAK;

RUN;

 

 

 

4 REPLIES 4
Reeza
Super User

How big is your data set and what is the memory settings? Also, please post the full log.

 

*check your memory allotment for SAS;

proc options option = memsize;
run;

@haoduonge wrote:

Hi all,

I run proc lifetest as below but have this error [ERROR: The SAS System stopped processing this step because of insufficient memory].

Anyone has solution?

Thank you!

 

 

PROC LIFETEST data=ALL_3 PLOTS=SURVIVAL (ATRISK=0 TO 22 BY 2);

TIME fu_time*outcome(0);

STRATA GENDER_n/TEST=LOGRANK ADJUST=SIDAK;

RUN;

 

 

 


 

haoduonge
Quartz | Level 8

I have a big data set, about 2mil observations

Please see memory and full log below:

SAS (r) Proprietary Software Release 9.4  TS1M6

MEMSIZE=51539607552

 

The SAS System

 

1          %_eg_hidenotesandsource;

MLOGIC(_EG_HIDENOTESANDSOURCE):  Beginning execution.

MLOGIC(_EG_HIDENOTESANDSOURCE):  %GLOBAL  _EGNOTES

MLOGIC(_EG_HIDENOTESANDSOURCE):  %GLOBAL  _EGSOURCE

MLOGIC(_EG_HIDENOTESANDSOURCE):  %LET (variable name is _EGNOTES)

MPRINT(_EG_HIDENOTESANDSOURCE):   options nonotes;

MLOGIC(_EG_HIDENOTESANDSOURCE):  %LET (variable name is _EGSOURCE)

MPRINT(_EG_HIDENOTESANDSOURCE):   options nosource;

MLOGIC(_EG_HIDENOTESANDSOURCE):  Ending execution.

MLOGIC(_EG_RESTORENOTESANDSOURCE):  Beginning execution.

MLOGIC(_EG_RESTORENOTESANDSOURCE):  %GLOBAL  _EGNOTES

MLOGIC(_EG_RESTORENOTESANDSOURCE):  %GLOBAL  _EGSOURCE

MPRINT(_EG_RESTORENOTESANDSOURCE):   options NOTES;

MPRINT(_EG_RESTORENOTESANDSOURCE):   options SOURCE;

MLOGIC(_EG_RESTORENOTESANDSOURCE):  Ending execution.

5          %_eg_hidenotesandsource;

MLOGIC(_EG_HIDENOTESANDSOURCE):  Beginning execution.

MLOGIC(_EG_HIDENOTESANDSOURCE):  %GLOBAL  _EGNOTES

MLOGIC(_EG_HIDENOTESANDSOURCE):  %GLOBAL  _EGSOURCE

MLOGIC(_EG_HIDENOTESANDSOURCE):  %LET (variable name is _EGNOTES)

MPRINT(_EG_HIDENOTESANDSOURCE):   options nonotes;

MLOGIC(_EG_HIDENOTESANDSOURCE):  %LET (variable name is _EGSOURCE)

MPRINT(_EG_HIDENOTESANDSOURCE):   options nosource;

MLOGIC(_EG_HIDENOTESANDSOURCE):  Ending execution.

WARNING: Unsupported device 'ACTIVEX' for EXCEL(EGXLSSX) destination. Using device 'ACTXIMG'.

MLOGIC(_EG_RESTORENOTESANDSOURCE):  Beginning execution.

MLOGIC(_EG_RESTORENOTESANDSOURCE):  %GLOBAL  _EGNOTES

MLOGIC(_EG_RESTORENOTESANDSOURCE):  %GLOBAL  _EGSOURCE

MPRINT(_EG_RESTORENOTESANDSOURCE):   options NOTES;

MPRINT(_EG_RESTORENOTESANDSOURCE):   options SOURCE;

MLOGIC(_EG_RESTORENOTESANDSOURCE):  Ending execution.

36        

37         ODS graphics on;

38         PROC LIFETEST data=test PLOTS=SURVIVAL (ATRISK=0 TO 22 BY 2);

39         TIME fu_time*outcome(0);

40         STRATA GENDER_n/TEST=LOGRANK ADJUST=SIDAK;

41         RUN;

 

NOTE: The LOGLOG transform is used to compute the confidence limits for the quartiles of the survivor

      distribution. To suppress using this transform, specify CONFTYPE=LINEAR in the PROC LIFETEST statement.

ERROR: The SAS System stopped processing this step because of insufficient memory.

NOTE: PROCEDURE LIFETEST used (Total process time):

      real time           8:25.97

      cpu time            8:25.75

     

42        

43         %_eg_hidenotesandsource;

MLOGIC(_EG_HIDENOTESANDSOURCE):  Beginning execution.

MLOGIC(_EG_HIDENOTESANDSOURCE):  %GLOBAL  _EGNOTES

MLOGIC(_EG_HIDENOTESANDSOURCE):  %GLOBAL  _EGSOURCE

MLOGIC(_EG_HIDENOTESANDSOURCE):  %LET (variable name is _EGNOTES)

MPRINT(_EG_HIDENOTESANDSOURCE):   options nonotes;

MLOGIC(_EG_HIDENOTESANDSOURCE):  %LET (variable name is _EGSOURCE)

MPRINT(_EG_HIDENOTESANDSOURCE):   options nosource;

MLOGIC(_EG_HIDENOTESANDSOURCE):  Ending execution.

ERROR: Event Stack Underflow. This is probably caused by mis-matched begin and end event calls.

ERROR: Event Stack Underflow. This is probably caused by mis-matched begin and end event calls.

MLOGIC(_EG_RESTORENOTESANDSOURCE):  Beginning execution.

MLOGIC(_EG_RESTORENOTESANDSOURCE):  %GLOBAL  _EGNOTES

MLOGIC(_EG_RESTORENOTESANDSOURCE):  %GLOBAL  _EGSOURCE

MPRINT(_EG_RESTORENOTESANDSOURCE):   options NOTES;

MPRINT(_EG_RESTORENOTESANDSOURCE):   options SOURCE;

MLOGIC(_EG_RESTORENOTESANDSOURCE):  Ending execution.

58        

59        

60         %_eg_hidenotesandsource;

MLOGIC(_EG_HIDENOTESANDSOURCE):  Beginning execution.

MLOGIC(_EG_HIDENOTESANDSOURCE):  %GLOBAL  _EGNOTES

MLOGIC(_EG_HIDENOTESANDSOURCE):  %GLOBAL  _EGSOURCE

MLOGIC(_EG_HIDENOTESANDSOURCE):  %LET (variable name is _EGNOTES)

MPRINT(_EG_HIDENOTESANDSOURCE):   options nonotes;

MLOGIC(_EG_HIDENOTESANDSOURCE):  %LET (variable name is _EGSOURCE)

The SAS System

 

MPRINT(_EG_HIDENOTESANDSOURCE):   options nosource;

MLOGIC(_EG_HIDENOTESANDSOURCE):  Ending execution.

MLOGIC(_EG_RESTORENOTESANDSOURCE):  Beginning execution.

MLOGIC(_EG_RESTORENOTESANDSOURCE):  %GLOBAL  _EGNOTES

MLOGIC(_EG_RESTORENOTESANDSOURCE):  %GLOBAL  _EGSOURCE

MPRINT(_EG_RESTORENOTESANDSOURCE):   options NOTES;

MPRINT(_EG_RESTORENOTESANDSOURCE):   options SOURCE;

MLOGIC(_EG_RESTORENOTESANDSOURCE):  Ending execution.

63        

 

Reeza
Super User

Hmm...seems like 51GB should be enough for 2 million rows.

 

Try the most basic model (no Strata) and also try loading the data into memory directly using a sasfile statement initially but I'd consider checking with SAS tech support.

 

sasfile 'work.test' open;

proc lifetest data=test plots=survival(atrisk=0 to 22 by 2);
time fu_time * outcome(0);
run;

 

 

SASKiwi
PROC Star

If you add this option to the top of your program LIFETEST memory usage will be printed in the log:

options fullstimer;

sas-innovate-2024.png

Available on demand!

Missed SAS Innovate Las Vegas? Watch all the action for free! View the keynotes, general sessions and 22 breakouts on demand.

 

Register now!

What is ANOVA?

ANOVA, or Analysis Of Variance, is used to compare the averages or means of two or more populations to better understand how they differ. Watch this tutorial for more.

Find more tutorials on the SAS Users YouTube channel.

Discussion stats
  • 4 replies
  • 725 views
  • 1 like
  • 3 in conversation