Re: memory release problem in mathematica6.0
- To: mathgroup at smc.vnet.net
- Subject: [mg83365] Re: memory release problem in mathematica6.0
- From: Yaroslav Bulatov <yaroslavvb at gmail.com>
- Date: Sun, 18 Nov 2007 04:52:14 -0500 (EST)
- References: <fhegac$m08$1@smc.vnet.net> <fhh71o$8h2$1@smc.vnet.net>
Like several posters pointed out, it's saved in Out[]. It's a bit confusing because documentation for "CompoundExpression" says that for expression of the form expr1;expr2; it's the value of expr2 that's saved so if I do "A = RandomInteger[{1}, 100000000]; Clear[A];" It should save value of Clear[A], which is null, but instead it saves value of AA = RandomInteger[{1}, 100000000] On Nov 17, 3:07 am, m... at inbox.ru wrote: > It's hard to tell without seeing a specific example, but sometimes you > need to make sure that the structure really was deallocated. > > In 6.0.1 under XP, if I monitor the memory usage with Task Manager or > from Mathematica using > > Dynamic[Import[ > "!tasklist /fi \"imagename eq math*\" /fo csv", > "CSV"] // Rest // Grid // Panel, > SynchronousUpdating -> False, UpdateInterval -> 1] > > and then evaluate > > In[2]:= A = Range[25*^6]; > In[3]:= Clear[A] > In[4]:= Timing[A = Range[25*^6];] > In[5]:= Clear[A] > > the memory usage doesn't drop after the first Clear[A] because A is > still stored in Out[2], but it drops after the second Clear[A]. > > Maxim Rytin > m... at inbox.ru > > On Nov 16, 4:17 am, jack <giaber... at gmail.com> wrote: > > > What i was pointing out ( there is a typo error in my post ) is that > > the MemoryInUse[] command of mathematica gives the correct result in > > the sense that memory is released but the physical memory not yet. I > > understand that memory management of mathematica is different from > > that of the Operating System for speed reasons, but i think that > > something goes wrong because, as is confirmed by Yaroslav Bulatov in a > > successive post, when i clear a symbol ( of many elements, ~300MB ) > > and a reallocate it three or four times physical memory runs out and > > the memory system swaps all the time ( i' ve 756MB of RAM ) until i > > shutdown the kernel. > > I' d like to know if there is an explicit way to synchronize the > > memory management of mathematica with that of the OS, because i think > > that the behavior that i' ve just described must be avoided. > > > Thanks for your contribute. > > > Jens-Peer Kuska wrote: > > > Hi, > > > > you think that Mathematica call the memory management functions > > > of the operating system every time it aqquire or release memory ? > > > > This would probably incredible slow .. it will request memory from the > > > operating system and integrate it inti its own memory management > > > > And the operating system show it't own memory management but not that > > > of Mathematica .. > > > > Regards > > > Jens > > > > jack wrote: > > > > Hi all, > > > > When i define large data structures, for example an array "A" of > > > > million of elements that occupy some hundreds of MB of physical > > > > memory,when i clear it, with Clear[A] memory isn' t released by > > > > operating system. I' ve tried both on windows and linux. > > > > The result of MemoryInUse[] command of mathematica but the physical > > > > memory reported by the system monitor isn't released. > > > > I' ve tried also ClearSystemCache[] but with no result. > > > > Am i missing something? > > > > > Thanks!