I had a brief discussion with the guys on #python
<seiflotfy> can u explain to me why inheriting from object with __slots__ uses
less memory than inheriting from list? make it for dummies so i can explain it
to my team
<verte> seiflotfy: do you know what a struct looks like in memory?
<seiflotfy> verte, nope
<verte> seiflotfy: __slots__ is exactly that. on some implementations of
python, the object literally has one pointer for each field. there's no
dict hanging about to store attributes.
<seiflotfy> so the statement is true then ?
<nedbat> seiflotfy: the statement about __slots__ reducing memory? Yes,
that was a major goal of __slots__.
<verte> seiflotfy: oh, yes. if you need methods on what would otherwise
be a tuple, and you expect to have lots of those objects, __slots__ may
be a good idea.
You received this bug notification because you are a member of Zeitgeist
Extensions, which is the registrant for Zeitgeist Extensions.
Large requests increase memory usage considerably
Status in Zeitgeist Framework:
Status in Zeitgeist Extensions:
I'm seeing with standalone Sezen that after running it, mem usage of
the zeitgeist-daemon process goes up from ~13MB to ~40MB, this is
understandable as when Sezen is starting, it does one big query where
it asks for everything grouped by most recent subjects and in my case
this returns ~11 thousand events, so the extra 30MB can be explained
by allocating memory for the DBus reply.
Still, my question is whether Zeitgeist should be at mercy of the
applications, where nothing prevents them from spiking the memory
usage of the core process. (I already saw a couple of times zeitgeist
using 80-100MB of memory on my system). Perhaps there's a way to tell
python dbus to free its buffers?
Mailing list: https://launchpad.net/~zeitgeist
Post to : email@example.com
Unsubscribe : https://launchpad.net/~zeitgeist
More help : https://help.launchpad.net/ListHelp