[Zope-dev] zope.interface memory optimization
Charlie Clark
charlie.clark at clark-consulting.eu
Wed Nov 10 06:07:00 EST 2010
Am 10.11.2010, 01:40 Uhr, schrieb Brian Sutherland
<brian at vanguardistas.net>:
>> > On the micro benchmarks, the only difference I see is a memory
>> > improvement which I think will not survive in practice because most
>>
>> ... ?
> Er, somehow my thoughts didn't make it into text:
> attributes are zope.schema fields (i.e. subclasses of Attribute).
> To really make that work, you'd have to add __slots__ to most of the
> classes in zope.schema as well.
It might be purely academic but if this does significantly reduce memory
use then it might be worth pursuing. Slots are supposed to be beneficial
when you've got lots of objects around. Zope schema fields are pretty
static anyway so I don't see a great penalty in having to add slots to
them, although obviously a migration of a larger project would probably be
a pain.
Back to the micro-optimisation. At Jeff Rush's talk at PyCon this year he
covered the penalties incurred by "." lookups so that might be something
that could be investigated but might it also be possible to "memoize" the
method calls? I keep forgetting when you can't do that.
Charlie
--
Charlie Clark
Managing Director
Clark Consulting & Research
German Office
Helmholtzstr. 20
Düsseldorf
D- 40215
Tel: +49-211-600-3657
Mobile: +49-178-782-6226
More information about the Zope-Dev
mailing list