BookmarkSubscribeRSS Feed
nicwoyak
Obsidian | Level 7

I am working with proc optmodel and things were working just fine with a small amount of sample data going into my model, but when I went to something closer to scale, I started getting an out of memory error. It was during model generation too, not even the actual solve. I used proc options option=memsize 0; to check the maximum and it appears to be the default 2GB and not the larger amount available to my server over all. How can I change the memory limit?

5 REPLIES 5
ballardw
Super User

You may need to describe your install, such as stand alone or server, using Enterprise Guide, Display manager, Viya or ...

And are you the SAS admin? In server installations who can set such things is likely restricted.

 

It may also help to post the log with the code and any messages.

SASKiwi
PROC Star

This needs to be done in a SAS server configuration file and if you are connecting to a remote server, your SAS administrator would normally do this. A MEMSIZE of 2GB is pretty low, particularly for advanced statistical work. 4 to 6GB is more typical these days.

 

There is still no guarantee that you will be able to provide enough memory for OPTMODEL to complete OK particularly if your model is complex and you are running it on big datasets. You may still need to simplify your approach. Running your program with the SAS option FULLSTIMER will report your procedure's actual memory usage. 

 

 

nicwoyak
Obsidian | Level 7

My administrator is also new to SAS. Is there a typical path or location where the config file can be found?

 

That is possibility. I'm hoping that even if OPTMODEL can't complete to optimality we will be at least be able to get some good feasible solutions at the model's current level of complexity to compare with any simpler models that we are able to solve to optimality.

SASKiwi
PROC Star

This doc link explains SAS server config files. It all depends on which SAS environment you want it to apply to: https://documentation.sas.com/?docsetId=bisag&docsetTarget=p1n3ivrea2b8fgn1at5j88gyteqj.htm&docsetVe...

AnandVyas
Ammonite | Level 13

If you know how to run SAS program in batch mode via command line you can pass this option during run time as well. In this way you can run your program without effecting the global settings for every session.

 

config/Lev1/SASAppBatchServer/sasbatch.sh -memsize 4G -sysin myprog.sas -log myprog.log

suga badge.PNGThe SAS Users Group for Administrators (SUGA) is open to all SAS administrators and architects who install, update, manage or maintain a SAS deployment. 

Join SUGA 

Get Started with SAS Information Catalog in SAS Viya

SAS technical trainer Erin Winters shows you how to explore assets, create new data discovery agents, schedule data discovery agents, and much more.

Find more tutorials on the SAS Users YouTube channel.

Discussion stats
  • 5 replies
  • 3274 views
  • 1 like
  • 4 in conversation