You've already forked Core2forAWS-MicroPython
mirror of
https://github.com/m5stack/Core2forAWS-MicroPython.git
synced 2026-05-20 10:30:31 -07:00
bench: Three ways to process a byte buffer.
This commit is contained in:
@@ -0,0 +1,11 @@
|
||||
# Doing some operation on bytearray
|
||||
# Inplace - the most memory efficient way
|
||||
import bench
|
||||
|
||||
def test(num):
|
||||
for i in iter(range(num//10000)):
|
||||
ba = bytearray(b"\0" * 1000)
|
||||
for i in range(len(ba)):
|
||||
ba[i] += 1
|
||||
|
||||
bench.run(test)
|
||||
@@ -0,0 +1,12 @@
|
||||
# Doing some operation on bytearray
|
||||
# Pretty weird way - map bytearray thru function, but make sure that
|
||||
# function return bytes of size 1, then join them together. Surely,
|
||||
# this is slowest way to do it.
|
||||
import bench
|
||||
|
||||
def test(num):
|
||||
for i in iter(range(num//10000)):
|
||||
ba = bytearray(b"\0" * 1000)
|
||||
ba2 = b''.join(map(lambda x:bytes([x + 1]), ba))
|
||||
|
||||
bench.run(test)
|
||||
@@ -0,0 +1,10 @@
|
||||
# Doing some operation on bytearray
|
||||
# No joins, but still map().
|
||||
import bench
|
||||
|
||||
def test(num):
|
||||
for i in iter(range(num//10000)):
|
||||
ba = bytearray(b"\0" * 1000)
|
||||
ba2 = bytearray(map(lambda x: x + 1, ba))
|
||||
|
||||
bench.run(test)
|
||||
Reference in New Issue
Block a user