comp.lang.idl-pvwave archive
Messages from Usenet group comp.lang.idl-pvwave, compiled by Paulo Penteado

Home » Public Forums » archive » The continuing saga of WHERE and 2D
Show: Today's Messages :: Show Polls :: Message Navigator
E-mail to friend 
Return to the default flat view Create a new topic Submit Reply
Re: The continuing saga of WHERE and 2D [message #34312 is a reply to message #34243] Fri, 28 February 2003 11:52 Go to previous messageGo to previous message
JD Smith is currently offline  JD Smith
Messages: 850
Registered: December 1999
Senior Member
On Fri, 28 Feb 2003 11:15:11 -0700, Pavel Romashkin wrote:

> Hi JD,
> Is the same kind of allocation taking place when one simply calls
> FLTARR? I bet yes.
> I am still puzzled by the fact I can allocate 1.25 times more in the
> form of pointer arrays than as a single large array, like
>
> a = FLTARR(290000000) ; This is the limit, out of RAM over this (1.32
> Gb) a = PTRARR(3600, /allocate)
> temp = FLTARR(100000)
> for i = 0, 3599 do *a[i] = temp ; No problem at all
>

I'd go with the fragmentation argument. If so, this should be
independent of pointer use. You could, e.g., assign a different
variable name to each small array (execute comes to mind). The
system's memory allocator might not be pleased to give you a single
chunk of 1.32GB, but still be happy to hand out 100 chunks of 13.2 MB.

What if you repeat this a series of times, gradually reducing the
number of pointers to 1, while preserving the total memory allocated?
I'd bet it would slowly converge on the single-block limit, with fits
and starts as you pass awkward memory sizes.

JD
[Message index]
 
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: Random spherical distributions
Next Topic: Import .RAW data from Siemens/BrukerAXS DiffracPlus Software?

-=] Back to Top [=-
[ Syndicate this forum (XML) ] [ RSS ] [ PDF ]

Current Time: Sat Oct 11 12:16:01 PDT 2025

Total time taken to generate the page: 2.88148 seconds