Total maximal size of data

AlexM anm12345 at gmail.com
Mon Jan 25 16:46:17 EST 2010


On Jan 25, 3:31 pm, "Diez B. Roggisch" <de... at nospam.web.de> wrote:
> Am 25.01.10 22:22, schrieb AlexM:
>
>
>
> > On Jan 25, 2:42 pm, "Diez B. Roggisch"<de... at nospam.web.de>  wrote:
> >> Am 25.01.10 21:15, schrieb AlexM:
>
> >>> On Jan 25, 2:03 pm, "Diez B. Roggisch"<de... at nospam.web.de>    wrote:
> >>>> Am 25.01.10 20:39, schrieb AlexM:
>
> >>>>> On Jan 25, 1:23 pm, "Diez B. Roggisch"<de... at nospam.web.de>      wrote:
> >>>>>> Am 25.01.10 20:05, schrieb Alexander Moibenko:
>
> >>>>>>> I have a simple question to which I could not find an answer.
> >>>>>>> What is the total maximal size of list including size of its elements?
> >>>>>>> I do not like to look into python source.
>
> >>>>>> But it would answer that question pretty fast. Because then you'd see
> >>>>>> that all list-object-methods are defined in terms of Py_ssize_t, which
> >>>>>> is an alias for ssize_t of your platform. 64bit that should be a 64bit long.
>
> >>>>>> Diez
>
> >>>>> Then how do explain the program output?
>
> >>>> What exactly? That after 3GB it ran out of memory? Because you don't
> >>>> have 4GB memory available for processes.
>
> >>>> Diez
>
> >>> Did you see my posting?
> >>> ....
> >>> Here is what I get on 32-bit architecture:
> >>> cat /proc/meminfo
> >>> MemTotal:      8309860 kB
> >>> MemFree:       5964888 kB
> >>> Buffers:         84396 kB
> >>> Cached:         865644 kB
> >>> SwapCached:          0 kB
> >>> .....
>
> >>> I have more than 5G in memory not speaking of swap space.
>
> >> Yes, I saw your posting. 32Bit is 32Bit. Do you know about PAE?
>
> >>    http://de.wikipedia.org/wiki/Physical_Address_Extension
>
> >> Just because the system can deal with more overall memory - one process
> >> can't get more than 4 GB (or even less, through re-mapped memory).
> >> Except it uses specific APIs like the old hi-mem-stuff under DOS.
>
> >> Diez
>
> > Yes, I do. Good catch! I have PAE enabled, but I guess I have compiled
> > python without extended memory. So I was looking in the wrong place.
>
> You can't compile it with PAE. It's an extension that doesn't make sense
> in a general purpose language. It is used by Databases or some such,
> that can hold large structures in memory that don't need random access,
> but can cope with windowing.
>
> Diez

Well, there actually is a way of building programs that may use more
than 4GB of memory on 32 machines for Linux with higmem kernels, but I
guess this would not work for python.
I'll just switch to 64-bit architecture.
Thanks again.
AlexM



More information about the Python-list mailing list