object().__dict__

Phil Connell pconnell at gmail.com
Wed Apr 23 09:59:35 EDT 2014


On Wed, Apr 23, 2014 at 03:48:32PM +0200, Amirouche Boubekki wrote:
> 2014-04-23 8:11 GMT+02:00 Cameron Simpson <cs at zip.com.au>:
> > Look up the "__slots__" dunder var in the Python doco index:
> >
> >   https://docs.python.org/3/glossary.html#term-slots
> >
> > You'll see it as a (rarely used, mostly discouraged) way to force a fixed
> > set of attributes onto a class. As with object, this brings a smaller
> > memory footprint and faster attribute access, but the price is flexibility.
> >
> 
> True, still can be the only way to save few MB or... GB without falling
> back to C or PyPy.
> 
> Have a look at PyPy to how to save memory (and speed things up) without
> slots:
> http://morepypy.blogspot.fr/2010/11/efficiently-implementing-python-objects.html

Is there any analysis of how this balances increased memory usage from the JIT
vs the CPython VM (with a reasonable amount of code)?

I'd thought that one of the main disadvantages of PyPy was drastically
increased memory usage for any decent-sized program. Would be interested to
know if this was not the case :)


Cheers,
Phil




More information about the Python-list mailing list