SUPPORT / SAMPLES & SAS NOTES
 

Support

Usage Note 22313: Obtaining sufficient memory to execute a SAS/IML program

DetailsAboutRate It

The amount of memory that your system can provide depends on the capacity of your computer and on the other products installed. PROC IML does everything in memory, using both virtual memory and RAM. Each matrix requires (#rows * #columns * 8) + 16 bytes for storage. If the matrices involved in your program exceed the amount of memory on your machine, there are a few things that you may want to consider.

First, if matrices defined earlier in the program are no longer useful, issue the FREE statement, naming the matrices that are no longer needed. This will free up space that can later be accessed by PROC IML when needed.

Second, use the STORE command to store matrices that you will need later in an external library and then FREE their values. You may be able to access additional memory by closing any active programs that are unneeded and are using significant amounts of memory.

Finally, you may have to reformulate your approach to use smaller matrices.

Information on storage can be found in the Storage Features chapter of the SAS/IML User's Guide.



Operating System and Release Information

Product FamilyProductSystemSAS Release
ReportedFixed*
SAS SystemSAS/IML WorkshopAlln/a
* For software releases that are not yet generally available, the Fixed Release is the software release in which the problem is planned to be fixed.