Re: Simple program leaking memory - why?
- To: mathgroup at smc.vnet.net
 - Subject: [mg130747] Re: Simple program leaking memory - why?
 - From: Joe Gwinn <joegwinn at comcast.net>
 - Date: Wed, 8 May 2013 04:13:52 -0400 (EDT)
 - Delivered-to: l-mathgroup@mail-archive0.wolfram.com
 - Delivered-to: l-mathgroup@wolfram.com
 - Delivered-to: mathgroup-outx@smc.vnet.net
 - Delivered-to: mathgroup-newsendx@smc.vnet.net
 - References: <kmabu3$qdj$1@smc.vnet.net>
 
In article <kmabu3$qdj$1 at smc.vnet.net>, <gredner at gmail.com> wrote:
> Hi folks,
> 
> I'm fighting an issue in which a simple Mathematica program to export a bunch
> of plots is leaking a huge amount of memory - enough to exhaust the 12G
> available on my machine.  The problem is, it looks like the program should
> run in bounded memory!  A simplified version of my code which demonstrates
> the problem follows:
> 
> ====================
> n = 10000;
> (* just some bogus data *)
> makeData[_] := Table[{{x, y} = RandomReal[{-3, 3}, {2}], {y, -x}}, {200}];
> data = Array[makeData, n];
> ParallelMap[
>   Export[
>     "movie-" <> IntegerString[#, 10, 4] <> ".png",
>     ListVectorPlot[data[[#]]]] &,
>   Range[1, n]];
> ====================
> 
> The problem occurs whether the loop is Map or Do, Parallel- or not.  It
> occurs in Mathematica 8 and 9, both under Linux.
> 
> The amount of memory leaked per frame is considerable - approximately .6 MB
> in my tests.  I don't see where it could be going, unless Export is caching
> every byte which passes through it!
> 
> I've also asked this question on stackexchange [1] but so far nobody has a
> clue.
> 
> Thanks,
> -Gabe
> 
> [1] http://mathematica.stackexchange.com/questions/24461/why-does-this-simple-program-leak-memory
> 
Mathematica keeps all In and Out cells, and this can look like a leak. 
Set $HistoryLength to zero and see if that helps.
There was a thread on this in September 2012 titled "Kernel exits (for
lack of memory)" or just "Kernel exits".
Joe Gwinn