MemoryError, can I use more?
davea at ieee.org
Mon Feb 15 04:16:51 CET 2010
Echavarria Gregory, Maria Angelica wrote:
> Dear Chris,
> One of the machines I tested my app in is 64 bit and happened the same. The RAM consumed by the OS and other processes is already included in the 2.2 I'm telling... my app enters to work when the RAM is already consumed in ~600 MB in the 3- 32 bit machines ... in the 64 bit machine was exactly the same only that it started a little bit higher because it has windows 7... so should I understand that there is nothing I can do for my app to use up more RAM?
> Thanks for your time and answer,
> M. Angelica Echavarria-Gregory, M.Sc., E.I.
> Ph.D Candidate
> University of Miami
> Phone 305 284-3611
> From: Chris Kaynor [ckaynor at zindagigames.com]
> Sent: Friday, February 12, 2010 7:44 PM
> To: Echavarria Gregory, Maria Angelica
> Cc: python-list at python.org
> Subject: Re: MemoryError, can I use more?
> A 32 bit app can only use 4 GB of memory itself (regardless of the amount of system ram), the OS claims some of this for the system, dlls occupy some of it, etc. As such, the app can only really use a smaller subset (generally between 2 to 3 GB, depending upon the app and the OS).
> On Fri, Feb 12, 2010 at 4:21 PM, Echavarria Gregory, Maria Angelica <m.echavarriagregory at umiami.edu<mailto:m.echavarriagregory at umiami.edu>> wrote:
> Dear group:
> I am developing a program using Python 2.5.4 in windows 32 OS. The amount of data it works with is huge. I have managed to keep memory footprint low, but have found that, independent of the physical RAM of the machine, python always gives the MemoryError message when it has occupied exactly only 2.2 GB. I have tested this in 4 different machines, all with memory of 3 to 4 GB... I'm amazed.
> Could any of you please help me to figure out how to change that limit? I typed help(MemoryError) and it is a class itself, but that help told me nothing I can use...
There are three different limits at play here. Since you're still not
saying how you're "measuring" usage, we've all been guessing just which
one you're hitting. There's physical RAM, virtual address space, and
swappable space (swapfile on disk). Each reaches some limit in
And there are probably a dozen different ways to measure "memory use,"
that get a dozen different answers. If you say which one you're using,
that gives "exactly 2.2 GB," maybe someone will be familiar with that
particular approach, and its meaning.
More information about the Python-list