On Tue, Aug 17, 2010 at 9:54 PM, Robert Bradshaw <[email protected]> wrote: > On Tue, Aug 17, 2010 at 9:41 PM, Carl Witty <[email protected]> wrote: >> On Tue, Aug 17, 2010 at 9:27 PM, Robert Bradshaw >> <[email protected]> wrote: >>> Yep. I confirmed that just setting creating __getattr__ does incur the >>> performance loss, even if __getattribute__ was good. It looks like >>> there's no way to have a __getattr__ python-visible attribute without >>> a performance penalty. >> >> Well, I think (but I'm not sure) that if the python-visible >> __getattr__ is an instance of PyWrapperDescr_Type, then the problem >> doesn't arise. > > Looking at typeobjet.c:slot_tp_getattr_hook, I'm not sure even this > would help, but I haven't fully unraveled the logic of > update_one_slot. Worth further investigation and/or a try.
The goal is to keep our slot method in tp_getattro, in which case slot_tp_getattr_hook isn't involved at all. Carl _______________________________________________ Cython-dev mailing list [email protected] http://codespeak.net/mailman/listinfo/cython-dev
