|
[Date Index]
[Thread Index]
[Author Index]
Odd memory behavior, and uncontrollable memory growth
- To: mathgroup at smc.vnet.net
- Subject: [mg40019] Odd memory behavior, and uncontrollable memory growth
- From: nafod40 <may106 at SPAMAWAY.psu.edu>
- Date: Sun, 16 Mar 2003 02:21:01 -0500 (EST)
- Organization: Penn State University, Center for Academic Computing
- Sender: owner-wri-mathgroup at wolfram.com
Hola,
We are writing code where semi-complicated functions get run thousands
of times in packages. when we do this, we are getting memory use growth
that eventually drives the system to virtual memory, and severe speed
penalties.
I have been trying to gain an understanding of this process, and came up
with the following odd example that makes no sense to me. Can someone
explain?
a=MemoryInUse[];
(q=tempFunk[10000];1);
d=MemoryInUse[];
d-a
The memory bumps up by 1080 bytes per iteration. It climbs, but slowly.
I figure that is justified by the In[] and Out[] storage. Now one small
change...
a=MemoryInUse[];
(q=tempFunk[10000];);
d=MemoryInUse[];
d-a
Now the memory jumps by 80,000 bytes per iteration! All I did was remove
the "1" from within the parentheses. What's up with that? I tried this...
a=MemoryInUse[];
(q=tempFunk[10000];);
q=1;
d=MemoryInUse[];
d-a
To force the clearing of 'q', still it jumps by leaps and bounds. Any
ideas why?
Prev by Date:
Re: How to apply one plot range to another plot?
Next by Date:
Re: How to apply one plot range to another plot?
Previous by thread:
Re: FindRoot problem
Next by thread:
Re: Odd memory behavior, and uncontrollable memory growth
|