<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html>
I can make array around 1GB in WIN2000 as below:
<p>IDL> b=bytarr(1024,1024,512)
<br>IDL> a=bytarr(1024,1024,512)
<br>IDL> c=bytarr(1024,1024,512)
<br>% Unable to allocate memory: to make array.
<br>% Execution halted at: $MAIN$
<br>IDL> help,/mem
<br>heap memory used: 1074113975, max: 1074114003, gets:
448, frees: 209
<br>IDL> a=0
<br>IDL> b=0
<br>IDL> a=bytarr(1024,1024,1000)
<br>IDL> help,/mem
<br>heap memory used: 1048948020, max: 1074113975, gets:
454, frees: 216
<br>
<p>renjie wrote:
<blockquote TYPE=CITE>The results below are obtained in WIN98, in WIN2000
I can make single array of 512MB, can someone explain it.
<p>renjie wrote:
<blockquote TYPE=CITE>
<blockquote TYPE=CITE>
<pre></pre>
</blockquote>
<p><br>Below are my tests, though the heap memory can be increased till
the maximum of RAM+VM (my machine is 512MB+2GB), the
<br>maximum size for a single arrary can not be larger than 256MB, I really
need to make array around 1GB, if anyboy can config out
<br>what is wrong with my system. Thanks.
<blockquote TYPE=CITE>
<pre>IDL> b=bytarr(1024,1024,255)
IDL> help, /mem
heap memory used: 267652748, max: 535039712, gets: 395, frees: 148
IDL> b=bytarr(1024,1024,256)
% Unable to allocate memory: to make array.
% Execution halted at: $MAIN$ & ;nbsp; & ;nbsp;
IDL> help, /mem
heap memory used: 267652748, max: 267652776, gets: 398, frees: 151
IDL> c=bytarr(1024,1024,255)
IDL> help, /mem
heap memory used: 535039699, max: 535039727, gets: 402, frees: 154
IDL> d=bytarr(1024,1024,255)
% Unable to allocate memory: to make array.
% Execution halted at: $MAIN$ & ;nbsp; & ;nbsp;
IDL> help, /mem
heap memory used: 535039699, max: 535039727, gets: 405, frees: 157
IDL> d=bytarr(1024,1024,125)
IDL> help, /mem
heap memory used: 666111805, max: 666111833, gets: 409, frees: 160</pre>
</blockquote>
Alex Schuster wrote:
<blockquote TYPE=CITE>renjie wrote:
<p>> I tried to make large array, however, in Windows,
<br>> the largest I can made is 256MB, and in Unix is 1 GB,
<br>> it's supposed that the limitation is 2GB, do you have any
<br>> idea about the largest array in IDL?
<p>We habe encountered a problem with IDL and NT, where IDL is only able
to
<br>allocate 800 MB of memory in one step, even if it can allocate more
<br>memory afterwards. But 256 MB is much too low, presuming there is enough
<br>physical+virtual memory.
<p>In Unix, I can allocate more than 1 GB:
<p>--> idl
<br>IDL Version 5.2.1 (sunos sparc). (c) 1999, Research Systems, Inc.
<br>Installation number: 80864-0.
<br>Licensed for use by: MPI Forschung
<p>IDL> b=bytarr(1024,1024,1200)
<br>IDL> help, /mem
<br>heap memory used: 1258497902, max: 1258497930, gets:
227,
<br> frees: & ;nbsp; 89
<p>The limit command tells you about the datasize you are allowed to
<br>allocate, maybe this is set too low for you. And maybe there's a similar
<br>setting for Windows?
<p> Alex
<br>--
<br> Alex Schuster Wonko@weird.cologne.de
PGP Key available
<br>
alex@pet.mpin-koeln.mpg.de</blockquote>
</blockquote>
</blockquote>
</html>
|