SAS Enterprise Guide

Desktop productivity for business analysts and programmers
BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
matthewdye14
Calcite | Level 5
 

Hello, 

 

I am trying to build a predictive logistic regression model in SAS Enterprise Guide by using the following code: 

 

proc logistic data=loe_pred_int_train desc plots(only)=(roc(id=obs) effect);
class &classvars ;
model engage = &varlist &int_top100 / selection=forward slentry=0.05 ;
score data=loe_pred_int_val out= sco_validate_int(rename=(p_1=p_forward_05)) ;
run ;

 

The original dataset that I am using contains over 13,000 rows and the macro's &varlist and &int_top100 contain over 400 variables together. I then did a 60/40 split from this original dataset into loe_pred_int_train and loe_pred_int_val, respectively. When I try to run the above code, I receive the following error: 

 

ERROR: Java virtual machine exception. java.lang.OutOfMemoryError: GC overhead limit exceeded.

 

After googling this error, I have learned that this error has occurred because my Java Virtual Machine does not have a large enough memory to process the statement. It is recommended that I increase the JRE parameters -Xms and -Xmx in the SAS 9 config file (SASV9.CFG) to resolve this issue. Here is a link to where I found this solution: http://support.sas.com/kb/31/184.html

 

My question is if anyone knows how to resolve this issue WITHOUT having to change the JRE parameters? Is there an option that I can add to my code to temporarily expand my VM memory so that the statement can be executed? Additionally, SAS still produces an output from the code despite this error. Is this output valid? 

 

Any sort of information would be very helpful. Thanks!

1 ACCEPTED SOLUTION

Accepted Solutions
FriedEgg
SAS Employee

As mentioned in the SAS Usage Note you already shared here, the issue would likely be due to creating the requested plot. All other output is probably reliable, and you could verify that be rerunning the logistic regression with plots=none.

You cannot modify JRE parameters without modifying either the command line for SAS or the config file.

You may be able to still request this plot by modifying your ODS options for the plot, here is a list of options affecting ODS memory usage for graphs.

P.S. You should not post the same question to multiple community forum areas...

View solution in original post

4 REPLIES 4
ChrisHemedinger
Community Manager

I'm guessing that the Java error results from the "plots" part of the code.  If you left off the plots, it will probably run without error.

 

But you probably want the plots, which is why you have them in the program.  Maybe the ROC plot will result in more plot points than a typical analysis and that causes the exception.  Consider leaving off the plot for now, and perhaps experiment with different plots on the output data that might be useful.  You don't say what version of SAS you're using -- it's possible that this is something that is fixed in a more recent version.  

 

Chris

Register for SAS Innovate 2025!! The premier event for SAS users, May 6-9 in Orlando FL. Sign up now for the best deals!
FriedEgg
SAS Employee

As mentioned in the SAS Usage Note you already shared here, the issue would likely be due to creating the requested plot. All other output is probably reliable, and you could verify that be rerunning the logistic regression with plots=none.

You cannot modify JRE parameters without modifying either the command line for SAS or the config file.

You may be able to still request this plot by modifying your ODS options for the plot, here is a list of options affecting ODS memory usage for graphs.

P.S. You should not post the same question to multiple community forum areas...

ChrisHemedinger
Community Manager

I fixed that link.

Register for SAS Innovate 2025!! The premier event for SAS users, May 6-9 in Orlando FL. Sign up now for the best deals!

sas-innovate-white.png

Special offer for SAS Communities members

Save $250 on SAS Innovate and get a free advance copy of the new SAS For Dummies book! Use the code "SASforDummies" to register. Don't miss out, May 6-9, in Orlando, Florida.

 

View the full agenda.

Register now!

Creating Custom Steps in SAS Studio

Check out this tutorial series to learn how to build your own steps in SAS Studio.

Find more tutorials on the SAS Users YouTube channel.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 4 replies
  • 18740 views
  • 1 like
  • 4 in conversation