GeezerVisonThe World Wide Web, restored to 800 pixels of glory. | ||||||||||||||||||||||||||||||||||||||
| Home|About|Gaming cabinet|Archives|How it works|Starter sites | ||||||||||||||||||||||||||||||||||||||
GeezerVison is showing github.com — gh-136681: make argsbuf static to speedup processing positional arguments with AC by skirpichev · Pull Request #136732 · python/cpython Conversation
|
|
benchmark: #136681 (comment) |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
Won't this break when called concurrently? |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
Hmm, @ZeroIntensity, test seems fixed with using combined |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
|
Hm, you could try it and see what the test suite says. To my knowledge, thread local lookups are generally slower, so we might not see a speedup. |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
|
Well, CI tests pass, but that might be just an accident.
Here my quick measurements for default configure arguments on Linux box. (Free-threading build might change the picture.) Micro-benchmarks are for math.fmin(): when only positional arguments are allowed (as in the main) vs positional-or-keyword allowed. In the main:
With the patch:
Benchmark hidden because not significant (1): fmin(1.0, 2.0) x 2 times Detailsimport pyperf from math import fmin def f(n): for _ in range(n): fmin(1.0, 2.0) runner = pyperf.Runner() runner.bench_func('fmin(1.0, 2.0)', fmin, 1.0, 2.0) for n in [2, 10, 100]: s = f'fmin(1.0, 2.0) x {n:3} times' runner.bench_func(s, f, n) |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
Successfully merging this pull request may close these issues.
There was an error while loading. Please reload this page.