This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author llllllllll
Recipients llllllllll
Date 2016-04-19.01:10:10
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1461028212.35.0.591299573852.issue26802@psf.upfronthosting.co.za>
In-reply-to
Content
When star unpacking positions into a function we can avoid a copy iff there are no extra arguments coming from the stack. Syntactically this looks like: `f(*args)`

This reduces the overhead of the call by about 25% (~30ns on my machine) based on some light profiling of just * unpacking. I can imagine this having a slight impact on code that uses this feature in a loop.

The cost is minimal when we need to make the copy because the int != 0 check is dwarfed by the allocation. I did not notice a significant change between the slow path and the original code.

The macro benchmark suite did not show a difference on my machine but this is not much more complex code.
History
Date User Action Args
2016-04-19 01:10:12llllllllllsetrecipients: + llllllllll
2016-04-19 01:10:12llllllllllsetmessageid: <1461028212.35.0.591299573852.issue26802@psf.upfronthosting.co.za>
2016-04-19 01:10:12lllllllllllinkissue26802 messages
2016-04-19 01:10:11llllllllllcreate