MathGroup Archive 2008

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

Search the Archive

Re: Extending running memory of Mathematica

  • To: mathgroup at smc.vnet.net
  • Subject: [mg91521] Re: Extending running memory of Mathematica
  • From: Jean-Marc Gulliet <jeanmarc.gulliet at gmail.com>
  • Date: Mon, 25 Aug 2008 05:06:30 -0400 (EDT)
  • Organization: The Open University, Milton Keynes, UK
  • References: <200808230543.BAA21645@smc.vnet.net> <g8rfb1$f4p$1@smc.vnet.net>

Tugrul Temel wrote:

> I need simple directions about the following problem.
> 
> 1) I have 3 GB RAM
> 2) Mathematica 6.0.3 only uses 2 GB RAM when running a code. 
> 3) The code aborts in the middle saying that insufficient memory.
> 
> What should I do to direct Mathematica to use the full capacity 3 GB memory
> of my computer?

Though you did not tell us, I believe you are using a 32-bit system, 
which mean that depending on the combination of hardware and operating 
system, a user process can get between 2 and about 3 GB of virtual 
memory maximum. This is hardware (Intel, AMD, PowerPC, Sparc, 
...)/operating system (Linux, UNIX, MAC OS X, Windows 
98/Me/XP/Vista/Server2003...) dependent.

ClearSystemCache["Numeric"] or ClearSystemCache[] might help reclaiming 
some memory.

http://reference.wolfram.com/mathematica/ref/ClearSystemCache.html

Anyway, it is really hard to be specific without any hint about your 
hardware, software, and the system you are trying to solve.

Say you are using Windows XP. AFAIK, the default/standard system 
configuration of Windows XP Professional 32-bit edition allows only 2 GB 
of memory per user process, i.e. each individual user/application 
process will not be allowed by the operating system to request memory 
over this 2 GB limit, even though the theoretical limit is 4 GB on a 
32-bit system.

Now, there exist two switches for this version of Windows that allows
the system to allocate up to 3 GB per user process. See the following
articles [1, 2] to get detailed explanations and directions about how
to use them:

"On 32-bit versions of Windows, the /3GB parameter enables 4-gigabyte
(GB) random access memory (RAM) Tuning, a feature that enlarges the
user-mode virtual address space to 3 GB and restricts the kernel-mode
components to the remaining 1 GB.  [1]"

Alone and/or combine with $HistoryLength=0 and ClearSystemCache[],
this might solve your memory issue.

Regards,
- Jean-Marc

[1] "A description of the 4 GB RAM Tuning feature and the Physical
Address Extension parameter",
http://support.microsoft.com/kb/291988

[2] "Memory Management - Demystifying /3GB"
http://blogs.technet.com/askperf/archive/2007/03/23/memory-management-demystifying-3gb.aspx


  • Prev by Date: Re: Histogram and BoxWhiskers Plot
  • Next by Date: NonlinearRegress of user functions
  • Previous by thread: Re: Extending running memory of Mathematica
  • Next by thread: Symbolic Linear Function