Re: why I can't use the max memory available? [message #54108 is a reply to message #54055] |
Mon, 21 May 2007 15:21  |
Rick Towler
Messages: 821 Registered: August 1998
|
Senior Member |
|
|
David Fanning wrote:
> Jenny writes:
>
>> Hi, I'm trying to use pcomp to calculate pca for a large number of
>> variables, say over 10,000, only 6 observations though. I'm not sure
>> if I'd obtain useful results by pca, but just want to give a try. On
>> Windows XP Professional system IDL 6.3, I got the following error
>> message: Unable to allocate memory: to make array
>>
>> However, when I type: help,/memory
>> heap memory used: 2082561, max: 825942109, gets: 811,
>> frees: 468
>>
>> My heap memory used is far smaller than the max available memory! I'm
>> wondering why? Any ideas?
>
> Try here:
>
> http://www.dfanning.com/fileio_tips/lgfiles.html
David, you may want to add a bit of detail regarding adding the /3GB
switch to windows XP boot.ini file (which is what Karl is addressing in
point 1). This definitely will open up a larger chunk of contiguous RAM
on 32bit machines with >3GB of RAM but I have run into a few issues.
Namely, certain drivers may fail to load correctly when using the /3GB
switch. Giving the kernel just a wee bit more space seems to solve the
problem. This can be done using the /USERVA switch. Here's an example
from my boot.ini file (all on one line):
multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="Microsoft Windows XP
Professional 3GB USERVA 2900" /fastdetect /3GB /userva=2900
It is interesting to note that the /3GB switch also works on machines
with 3GB of RAM installed. I don't know exactly how RAM is apportioned
between application and kernel in this scenario but the address space
for applications definitely is bigger. The /USERVA switch is even more
useful here since wherever the line is drawn, the kernel is in a tight
place and you can get some weird behaviors.
More details can be found here:
http://support.microsoft.com/kb/833721
-Rick
|
|
|