![]() | ![]() | ![]() | ![]() |
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.
Product Family | Product | System | SAS Release | |
Reported | Fixed* | |||
SAS System | SAS/IML Workshop | All | n/a |