I would like to initialize a matrix using the j function thus A=j(20000,20000) but I get the following error:
ERROR: (execution) Unable to allocate sufficient memory. At least 2147483647 more bytes required.
I have 4GB RAM on a PC running Windows 7, I tried it in SAS 9,2 and 9,3 to no avail. How can I initialize vector A for large values of the rows and columns? How far does IML go in this regard?
Many thanks in advance,
George
A 20000 x 20000 matrix has 4x10^8 elements. Each element is a double, which requires 8 bytes, for a total of roughly 3.2GB. The current version of SAS/IML software supports matrices up to 2BG of addressable space. For 32-bit operating systems, this is the maximum size of memory that the OS allows you to allocate in a single chunk.
A 20000 x 20000 matrix has 4x10^8 elements. Each element is a double, which requires 8 bytes, for a total of roughly 3.2GB. The current version of SAS/IML software supports matrices up to 2BG of addressable space. For 32-bit operating systems, this is the maximum size of memory that the OS allows you to allocate in a single chunk.
Thanks for the information, Rick.
Will there be a future release of IML which is able to adress more than 2GB? I have tons of RAM and cant use it to handle huge matrices with SAS:-(
I can't comment on future releases, but SAS developers are aware that customers would like to use 64-bit operating systems to address more RAM.
We are working to overcome this memory limitation on 64-bit windows within the next few releases. 64-bit linux or unix hosts do not have this limitation.
Registration is open! SAS is returning to Vegas for an AI and analytics experience like no other! Whether you're an executive, manager, end user or SAS partner, SAS Innovate is designed for everyone on your team. Register for just $495 by 12/31/2023.
If you are interested in speaking, there is still time to submit a session idea. More details are posted on the website.
Learn how to run multiple linear regression models with and without interactions, presented by SAS user Alex Chaplin.
Find more tutorials on the SAS Users YouTube channel.