mirror of
https://github.com/micropython/micropython.git
synced 2026-01-04 19:20:22 +01:00
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.
This commit is contained in:
8
tests/bench/from_iter-1-list_bound.py
Normal file
8
tests/bench/from_iter-1-list_bound.py
Normal file
@@ -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)
|
||||
8
tests/bench/from_iter-2-list_unbound.py
Normal file
8
tests/bench/from_iter-2-list_unbound.py
Normal file
@@ -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)
|
||||
8
tests/bench/from_iter-3-tuple_bound.py
Normal file
8
tests/bench/from_iter-3-tuple_bound.py
Normal file
@@ -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)
|
||||
8
tests/bench/from_iter-4-tuple_unbound.py
Normal file
8
tests/bench/from_iter-4-tuple_unbound.py
Normal file
@@ -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)
|
||||
8
tests/bench/from_iter-5-bytes_bound.py
Normal file
8
tests/bench/from_iter-5-bytes_bound.py
Normal file
@@ -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)
|
||||
8
tests/bench/from_iter-6-bytes_unbound.py
Normal file
8
tests/bench/from_iter-6-bytes_unbound.py
Normal file
@@ -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)
|
||||
8
tests/bench/from_iter-7-bytearray_bound.py
Normal file
8
tests/bench/from_iter-7-bytearray_bound.py
Normal file
@@ -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)
|
||||
8
tests/bench/from_iter-8-bytearray_unbound.py
Normal file
8
tests/bench/from_iter-8-bytearray_unbound.py
Normal file
@@ -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)
|
||||
Reference in New Issue
Block a user