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

Home » Public Forums » archive » Memory management by 5.4 on Sunblade
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: Memory management by 5.4 on Sunblade [message #28593 is a reply to message #28436] Thu, 20 December 2001 08:51 Go to previous messageGo to previous message
John-David T. Smith is currently offline  John-David T. Smith
Messages: 384
Registered: January 2000
Senior Member
Craig Markwardt wrote:
>
> JD Smith <jdsmith@astro.cornell.edu> writes:
>> Timm Weitkamp wrote:
>>>
>>> Hi,
>>>
>>> I'm mostly using IDL 5.4 on my laboratory's Linux86 cluster, and
>>> running memory-critical simulation code on it which uses lots of large
>>> temporary arrays.
>>>
> ...
>>> However, I noticed that memory management by IDL 5.4 on the Sunblade
>>> is extremely poor in that variable space "freed" by TEMPORARY, DELVAR,
>>> or simply by dynamic resizing of a variable is not actually freed but
>>> kept allocated (so tells me "top").
> ...
>>
>> It's not a *bug*, it's a *feature*. IDL allocates memory as necessary
>> from the OS, and then, even if it doesn't need it any more, hangs onto
>> it just in case. This is true I think on all platforms, and all recent
>> versions of IDL. You still have the memory available, just not to the
>> system as a whole.
>
> Hi JD--
>
> I do not think this is always true. I find that I regularly create
> 300 MB arrays in memory, and then free them. While the procedure is
> running, the memory usage is indeed around 300 MB, but afterwards the
> memory use, as reported by the external program "top", drops down
> again to the quiescent level.
>

Two strikes this week. Maybe I should stick to histograms. Indeed, so
much has this mis-feature been touted, that I presumed it applied
everywhere. Testing on my linux system reveals Craig to be entirely
correct: even as far back as v5.2.1, memory is released to the OS after
it's not needed. Yet another reason to avoid Solaris, I suppose.

Here's a fun command to use to track memory usage:

% watch -n 1 'free;echo;ps -C idl -o rss,vsize,cmd'

JD
[Message index]
 
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: Unsatisfactory 'file_test()' behavior
Next Topic: Re: license problem

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

Current Time: Fri Oct 10 08:56:17 PDT 2025

Total time taken to generate the page: 0.00676 seconds