Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
52 changes: 26 additions & 26 deletions cmd/loop_benchmark/loop_benchmarks2.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,25 +5,25 @@
for _ in range(1, 1000000):
_ = 123
end_time = time.time()
print(f"integer: " + str(math.ceil((end_time - start_time) * 1000)))
print("integer: " + str(math.ceil((end_time - start_time) * 1000)))

start_time = time.time()
for _ in range(1, 1000000):
_ = "123"
end_time = time.time()
print(f"string: " + str(math.ceil((end_time - start_time) * 1000)))
print("string: " + str(math.ceil((end_time - start_time) * 1000)))

start_time = time.time()
for _ in range(1, 1000000):
_ = [123]
end_time = time.time()
print(f"block: " + str(math.ceil((end_time - start_time) * 1000)))
print("block: " + str(math.ceil((end_time - start_time) * 1000)))

start_time = time.time()
for _ in range(1, 1000000):
_ = 1 + 1 + 1
end_time = time.time()
print(f"builtins: " + str(math.ceil((end_time - start_time) * 1000)))
print("builtins: " + str(math.ceil((end_time - start_time) * 1000)))

a = 1
b = "2"
Expand All @@ -34,7 +34,7 @@
_ = b
_ = c
end_time = time.time()
print(f"word-lookup: " + str(math.ceil((end_time - start_time) * 1000)))
print("word-lookup: " + str(math.ceil((end_time - start_time) * 1000)))

a = 1
b = "2"
Expand All @@ -43,7 +43,7 @@
for _ in range(1, 1000000):
a = b = c = 123
end_time = time.time()
print(f"mod-word: " + str(math.ceil((end_time - start_time) * 1000)))
print("mod-word: " + str(math.ceil((end_time - start_time) * 1000)))

def a():
return 123
Expand All @@ -54,7 +54,7 @@ def a():
_ = a()
_ = a()
end_time = time.time()
print(f"fn-flat: " + str(math.ceil((end_time - start_time) * 1000)))
print("fn-flat: " + str(math.ceil((end_time - start_time) * 1000)))

def a():
return b()
Expand All @@ -67,7 +67,7 @@ def c():
for _ in range(1, 1000000):
_ = a()
end_time = time.time()
print(f"fn-nest: " + str(math.ceil((end_time - start_time) * 1000)))
print("fn-nest: " + str(math.ceil((end_time - start_time) * 1000)))

def a():
pass
Expand All @@ -76,7 +76,7 @@ def a():
for _ in range(1000000):
a()
end_time = time.time()
print(f"fn-env: " + str(math.ceil((end_time - start_time) * 1000)))
print("fn-env: " + str(math.ceil((end_time - start_time) * 1000)))

def a3(x, y, z):
return x
Expand All @@ -85,15 +85,15 @@ def a3(x, y, z):
for _ in range(1000000):
a3(1, 2, 3)
end_time = time.time()
print(f"fn-args3: " + str(math.ceil((end_time - start_time) * 1000)))
print("fn-args3: " + str(math.ceil((end_time - start_time) * 1000)))

def fib(n):
return n if n < 2 else fib(n - 1) + fib(n - 2)

start_time = time.time()
fib(25)
end_time = time.time()
print(f"recursion-fib25: " + str(math.ceil((end_time - start_time) * 1000)))
print("recursion-fib25: " + str(math.ceil((end_time - start_time) * 1000)))

def make_counter():
n = [0]
Expand All @@ -107,13 +107,13 @@ def inc():
for _ in range(1000000):
c()
end_time = time.time()
print(f"closure: " + str(math.ceil((end_time - start_time) * 1000)))
print("closure: " + str(math.ceil((end_time - start_time) * 1000)))

start_time = time.time()
for _ in range(1000000):
_ = 1 if 1 > 0 else 2
end_time = time.time()
print(f"branching: " + str(math.ceil((end_time - start_time) * 1000)))
print("branching: " + str(math.ceil((end_time - start_time) * 1000)))

def add_nums(x, y):
return x + y
Expand All @@ -122,77 +122,77 @@ def add_nums(x, y):
for _ in range(1, 1000000):
_ = add_nums(10, 20)
end_time = time.time()
print(f"fn-args: " + str(math.ceil((end_time - start_time) * 1000)))
print("fn-args: " + str(math.ceil((end_time - start_time) * 1000)))

a = 0
start_time = time.time()
for _ in range(1, 1000000):
a = 123
end_time = time.time()
print(f"var-assign: " + str(math.ceil((end_time - start_time) * 1000)))
print("var-assign: " + str(math.ceil((end_time - start_time) * 1000)))

start_time = time.time()
for _ in range(1, 1000000):
_ = 10 + 20 + 30 + 40
end_time = time.time()
print(f"math-chain: " + str(math.ceil((end_time - start_time) * 1000)))
print("math-chain: " + str(math.ceil((end_time - start_time) * 1000)))

start_time = time.time()
for _ in range(1, 1000000):
_ = [1, 2, 3]
end_time = time.time()
print(f"block-alloc: " + str(math.ceil((end_time - start_time) * 1000)))
print("block-alloc: " + str(math.ceil((end_time - start_time) * 1000)))

d = {"key": 100}
acc = 0
start_time = time.time()
for _ in range(1, 1000000):
acc += d["key"]
end_time = time.time()
print(f"dict-lookup: " + str(math.ceil((end_time - start_time) * 1000)))
print("dict-lookup: " + str(math.ceil((end_time - start_time) * 1000)))

start_time = time.time()
for i in range(1, 1000000):
_ = f"hello-{i}"
_ = "hello" + str(i)
end_time = time.time()
print(f"string-format: " + str(math.ceil((end_time - start_time) * 1000)))
print("string-format: " + str(math.ceil((end_time - start_time) * 1000)))

acc = 0
start_time = time.time()
for i in range(1, 1000000):
acc += i
end_time = time.time()
print(f"math-accumulate: " + str(math.ceil((end_time - start_time) * 1000)))
print("math-accumulate: " + str(math.ceil((end_time - start_time) * 1000)))

data = list(range(1000000))
start_time = time.time()
total = sum(data)
end_time = time.time()
print(f"offload-sum: " + str(math.ceil((end_time - start_time) * 1000)))
print("offload-sum: " + str(math.ceil((end_time - start_time) * 1000)))

parts = [str(i) for i in range(100000)]
start_time = time.time()
result = "".join(parts)
end_time = time.time()
print(f"string-build: " + str(math.ceil((end_time - start_time) * 1000)))
print("string-build: " + str(math.ceil((end_time - start_time) * 1000)))

import re
pattern = re.compile(r'\d+')
start_time = time.time()
for _ in range(1000000):
pattern.match("12345")
end_time = time.time()
print(f"regex-match: " + str(math.ceil((end_time - start_time) * 1000)))
print("regex-match: " + str(math.ceil((end_time - start_time) * 1000)))

s = set(range(1000000))
start_time = time.time()
for i in range(1000000):
_ = i in s
end_time = time.time()
print(f"set-lookup: " + str(math.ceil((end_time - start_time) * 1000)))
print("set-lookup: " + str(math.ceil((end_time - start_time) * 1000)))

start_time = time.time()
_ = [x * 2 for x in range(1000000)]
end_time = time.time()
print(f"list-comprehension: " + str(math.ceil((end_time - start_time) * 1000)))
print("list-comprehension: " + str(math.ceil((end_time - start_time) * 1000)))

Loading