[Python-Dev] What about CALL_ATTR?

Brett C. bac at OCF.Berkeley.EDU
Wed Feb 23 20:58:54 CET 2005

Reinhold Birkenfeld wrote:
> While rummaging in the old patches, I found this:
> """
> The result of the PyCore sprint of me and Brett: the CALL_ATTR opcode
> (LOAD_ATTR and CALL_FUNCTION combined) that skips the PyMethod creation
> and destruction for classic classes (but not newstyle classes, yet.)
> The code is somewhat rough yet, it needs commenting, some renaming, and
> most importantly testing. It seems to work, however, and provides
> between a 35% and 5% speedup. (5% in 'average' code, up to 35% in
> instance method calls and instance creation alone.) It also needs to be
> updated to include newstyle classes. I will likely work on this on the
> flight home.
> """
> (patch #709744)
> How is the status of this? Sounds promising, I'd say...

See my reply in the "Store x Load x -->  DupStore" thread at 
http://mail.python.org/pipermail/python-dev/2005-February/051725.html .

Basically Thomas discovered that it was slower when used with new-style 
classes.  But this was almost two years ago with Thomas having not done hacking 
on the core for two years IIRC and me having practically zero experience.


More information about the Python-Dev mailing list