diff options
Diffstat (limited to 'tests/bench/funcall-3-funcall-local.py')
-rw-r--r-- | tests/bench/funcall-3-funcall-local.py | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/tests/bench/funcall-3-funcall-local.py b/tests/bench/funcall-3-funcall-local.py new file mode 100644 index 0000000000..1a6d728c63 --- /dev/null +++ b/tests/bench/funcall-3-funcall-local.py @@ -0,0 +1,16 @@ +# Function call overhead test +# Perform the same trivial operation as calling function, cached in a +# local variable. This is commonly known optimization for overly dynamic +# languages (the idea is to cut on symbolic look up overhead, as local +# variables are accessed by offset, not by name) +import bench + +def f(x): + return x + 1 + +def test(num): + f_ = f + for i in iter(range(num)): + a = f_(i) + +bench.run(test) |