On Mon, Apr 1, 2013 at 2:04 AM, David Korn <[email protected]> wrote:
> Subject: Re: [ast-developers] Releasing memory obtained via |mmap()| to the  
> system...
> --------
>
>> The issue I got bug reports about is that if ksh93 allocates very
>> large arrays as function-local variable then leaving the function
>> doesn't release the memory... even if it's in the two-digit GB range.
>> The issue is that this puts the system's VM subsystem under major
>> stress... and IMO more stress than allocators which explicitly tell
>> the underlying kernel that the memory is temporarily not needed.
>>
>>
>
> ksh93 should free all memory from arrays in function local variables.
> There was a memory leak for this, but this was fixed for 13-03-17.

Erm... we're talking about different layers in this case. Yes, the
current ksh93 alpha (ast-ksh.2013-03-18) releases it's allocated
memory properly to the libast allocator system... but the libast
allocator system doesn't release any memory back to the kernel. That's
the problem I was talking about.

The issue is that if many processes do not give the kernel any hints
that they (temporarily) do not use memory then the memory management
trees in the kernel can become very large which degrades overall
performance. We're not talking about laptops in this case... we're
talking about very big machines with 1TB+ main memory and 10000+ ksh93
processes (but this isn't an issue with ksh93... it's an issue with
the libast allocator not passing "hints" to the kernel like other
memory allocators do these days...).

----

Bye,
Roland

-- 
  __ .  . __
 (o.\ \/ /.o) [email protected]
  \__\/\/__/  MPEG specialist, C&&JAVA&&Sun&&Unix programmer
  /O /==\ O\  TEL +49 641 3992797
 (;O/ \/ \O;)
_______________________________________________
ast-developers mailing list
[email protected]
http://lists.research.att.com/mailman/listinfo/ast-developers

Reply via email to