MathGroup Archive 2009

[Date Index] [Thread Index] [Author Index]

Search the Archive

Huge memory leaks when importing two-dimensional array in Mathematica

  • To: mathgroup at smc.vnet.net
  • Subject: [mg103462] Huge memory leaks when importing two-dimensional array in Mathematica
  • From: Harut Amirjanyan <amirjanyan at gmail.com>
  • Date: Wed, 23 Sep 2009 07:24:26 -0400 (EDT)

this isn' t memory leakage.It happens because after importing with "<<" t
 isn't packed array anymore.
this can' t work at version 5 since v5 doesn' t have RandomReal function,
you should have used something like
Table[Random[Real, {-1, 1}], {10}, {2}]


In[5] := MemoryInUse[]
t = RandomReal[{-1, 1}, {100000, 2}];
Developer`PackedArrayQ@t
MemoryInUse[]
SetDirectory["C:/"]
t >> temp.dat
MemoryInUse[]
Quit[]

Out[5] = 10503248
Out[7] = True
Out[8] = 12105640
Out[9] = "C:\\"
Out[11] = 12111872

In[1] := MemoryInUse[]
SetDirectory["C:/"]
t = << temp.dat;
Developer`PackedArrayQ@t
MemoryInUse[]
Quit[]

Out[1] = 9921296
Out[2] = "C:\\"
Out[4] = False
Out[5] = 17540408

fastest way is to use DumpSave but then you can' t use your data with other
system


In[1] := MemoryInUse[]
t = RandomReal[{-1, 1}, {100000, 2}];
Developer`PackedArrayQ@t
MemoryInUse[]
SetDirectory["C:/"]
DumpSave["temp.mx", t];
MemoryInUse[]
Quit[]

Out[1] = 9922664
Out[3] = True
Out[4] = 11540880
Out[5] = "C:\\"
Out[7] = 11542760

In[1] := MemoryInUse[]
SetDirectory["C:/"]
Get["temp.mx"];
Developer`PackedArrayQ@t
MemoryInUse[]

Out[1] = 9921096
Out[2] = "C:\\"
Out[4] = True
Out[5] = 11539640



  • Prev by Date: Precision of AiryAi[0.0]
  • Next by Date: Re: Overlaying List...Plots with other Plots?
  • Previous by thread: Re: Huge memory leaks when importing two-dimensional array in Mathematica
  • Next by thread: Re: Huge memory leaks when importing two-dimensional array in Mathematica