Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations strongm on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

out of memory error

Status
Not open for further replies.

tsuba

MIS
Oct 8, 2001
40
BR
Hi there, we are having some problems running some Jobs using SAS System v8.2. Some programs are returning "out of memory", but we have a lot of RAM available (aprox 7 Gb free). All users have no limit for memory alocation and we already changed the sasv8.cfg file to:

-mvarsize 32K
-msymtabmax 4M
-sortsize max
-memsize 0M
-noasynchio
-bufsize 128M
-maxmemquery 560M
-sumsize 800M

That solved some programs' problems but there are a few that we still get the error. The actual sasv8.cfg with no limits to file alocation is not suitable, as there's a possibility to an ordinary user to alocate all physical memory and degrades server's performance.
Our server: Sun Fire 6800 Domain with 8 900MHz UltraSparc III processor, 8 Gb Ram, 170 Gb in work area, running Solaris 8. Any help would be apreciated

Thanks in advance.

HTT
 
you can clean out the temporary SAS datasets by creating the same name, thus overwriting the previous existing one or once the dataset is no longer needed can use Stop Run statement :

data temp;/*Your temporary dataset*/
stop; run;

sometimes if your program is creating too many large temporary dataset this can cause the problem of memory.

-SK

 
Sk1 is correct that SAS can run out of temp space to write its temp data structures. (I have never hit that limit on my PC, but have slammed the server that I use.)
Perhaps the programmers should write with memory issues in mind and delete (using proc datasets) their temp sas datasets as the program runs.

I would also check the folder that houses the SAS temp files (located in your config file). Perhaps someone gave a limit to how much can be written to the folder. On a SUN I wouldn't think of that but have found that in a Windows server. In that situation the temp folder only allowed like 50MB's of data.
Let us know what you found that solves the problem.
 
I'm assuming you are using 32bit SAS. This limits memory usage for each sas process to something like 4GB.

Which steps are causing the "out of memory" errors?

Is there 7GB free at the point of error?
How big are the tables you are processing?

Sortsize max is dangerous with memsize=max as a sort of a large table could use upto 2GB of memory. Several users running these large sorts could use all available memory!

Are you using large formats? SAS needs to load the entire format into memory and if the format is too big you will get the out of memory error.

Large proc freqs, etc can also cause this error. In the past we've had a proc freq of a 500m row table fail due to an out of memory error.

Other notes:
-bufsize 128M
Why have you set this so large?

-maxmemquery 560M
I'm 100% sure what this does but I've experimented and not obtained any perf improvements.




 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top