MathGroup Archive 2001

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

Search the Archive

memory management and pointers

  • To: mathgroup at smc.vnet.net
  • Subject: [mg27147] memory management and pointers
  • From: Sebastien.deMentendeHorne at electrabel.com
  • Date: Thu, 8 Feb 2001 04:40:38 -0500 (EST)
  • Sender: owner-wri-mathgroup at wolfram.com

Hi,

I never heard about pointers in Mathematica but I am facing a problem where
it should be nice if Mathematica doesn't allow/free memory every time.

For instance:

u = ReplacePart[u,1,{1,1}] where u is a very big matrix

As I need to do this very often in an algorithm, Mathematica spends a lot of
the time by:
	- creating the new object ReplacePart[u,1,{1,1}] which is as big as
u
	- rebinding u to the new object
	- freeing the old u object
Is it possible to ask Mathematica to do a ReplacePart directly on u without
all the hassle of allocation/free of memory.

Another example:
 u = u + f[u] +g[u] where u is again the big matrix
will imply a lot of wasted time in memory problems.

When Mathematica says that "u += a" is equivalent to "u = u + a" is it true
or almost true (difference in memory management)?

Thank you very much
Sébastien


Sébastien de Menten de Horne      |    ELECTRABEL
Tel:  ++32 10 48 51 76            |    R&D Energy Markets, 
Fax:  ++32 10 48 51 09            |    Traverse d'Esope, 6
Gsm:  ++32 478 789 444            |    B-1348 Louvain-la-Neuve, BELGIUM


  • Prev by Date: Re: Making rectangular matrix
  • Next by Date: Linux+Mathematica+Lithuanian.kbd
  • Previous by thread: Re: String to Number
  • Next by thread: Re: memory management and pointers