From 59ced651b542941f893293099a932252e498eb7c Mon Sep 17 00:00:00 2001 From: Paul Sokolovsky Date: Thu, 19 Jun 2014 21:54:51 +0300 Subject: bench: Add test for map() vs inplace operations in array-likes. map() is 5 times slower. That's mostly because of inefficiency of creating containers from iterables of unknown length (like map()). --- tests/bench/arrayop-4-bytearray_map.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 tests/bench/arrayop-4-bytearray_map.py (limited to 'tests/bench/arrayop-4-bytearray_map.py') diff --git a/tests/bench/arrayop-4-bytearray_map.py b/tests/bench/arrayop-4-bytearray_map.py new file mode 100644 index 0000000000..1b92a40961 --- /dev/null +++ b/tests/bench/arrayop-4-bytearray_map.py @@ -0,0 +1,12 @@ +# Array operation +# Type: list, map() call. This method requires allocation of +# the same amount of memory as original array (to hold result +# array). On the other hand, input array stays intact. +import bench + +def test(num): + for i in iter(range(num//10000)): + arr = bytearray(b"\0" * 1000) + arr2 = bytearray(map(lambda x: x + 1, arr)) + +bench.run(test) -- cgit v1.2.3