bench: Add tests for constructing various containers from iterator.

Both "bound" (like, length known) and "unbound" (length unknown) are tested.
All of list, tuple, bytes, bytesarray offer approximately the same
performance, with "unbound" case being 30 times slower.
pull/706/merge
Paul Sokolovsky 2014-06-19 21:44:33 +03:00
rodzic e53d2197e4
commit 17db096505
8 zmienionych plików z 64 dodań i 0 usunięć

Wyświetl plik

@ -0,0 +1,8 @@
import bench
def test(num):
for i in iter(range(num//10000)):
l = [0] * 1000
l2 = list(l)
bench.run(test)

Wyświetl plik

@ -0,0 +1,8 @@
import bench
def test(num):
for i in iter(range(num//10000)):
l = [0] * 1000
l2 = list(map(lambda x: x, l))
bench.run(test)

Wyświetl plik

@ -0,0 +1,8 @@
import bench
def test(num):
for i in iter(range(num//10000)):
l = [0] * 1000
l2 = tuple(l)
bench.run(test)

Wyświetl plik

@ -0,0 +1,8 @@
import bench
def test(num):
for i in iter(range(num//10000)):
l = [0] * 1000
l2 = tuple(map(lambda x: x, l))
bench.run(test)

Wyświetl plik

@ -0,0 +1,8 @@
import bench
def test(num):
for i in iter(range(num//10000)):
l = [0] * 1000
l2 = bytes(l)
bench.run(test)

Wyświetl plik

@ -0,0 +1,8 @@
import bench
def test(num):
for i in iter(range(num//10000)):
l = [0] * 1000
l2 = bytes(map(lambda x: x, l))
bench.run(test)

Wyświetl plik

@ -0,0 +1,8 @@
import bench
def test(num):
for i in iter(range(num//10000)):
l = [0] * 1000
l2 = bytearray(l)
bench.run(test)

Wyświetl plik

@ -0,0 +1,8 @@
import bench
def test(num):
for i in iter(range(num//10000)):
l = [0] * 1000
l2 = bytearray(map(lambda x: x, l))
bench.run(test)