Skip to content

Commit b122ce5

Browse files
committed
adapt micros to harness
- bump number of iterations to 25 for warmup curves
1 parent 711c428 commit b122ce5

26 files changed

+92
-348
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,7 @@ language
5050
Python3.g4.stamp
5151
*.orig
5252
/graalpython/com.oracle.graal.python.test/src/tests/cpyext/Py*.c
53+
/graalpython/com.oracle.graal.python.test/src/tests/cpyext/Test*.c
5354
/*.diff
5455
## generated from: pyhocon -i ci.hocon -f json -o ci.json
5556
/ci.json

graalpython/benchmarks/src/micro/arith-modulo.py

Lines changed: 2 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@
2222
# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
2323
# OF THE POSSIBILITY OF SUCH DAMAGE.
2424
# modulo ops
25-
import time
2625

2726

2827
def docompute(num):
@@ -42,20 +41,11 @@ def docompute(num):
4241

4342

4443
def measure(num):
45-
print("Start timing...")
46-
start = time.time()
47-
4844
for run in range(num):
4945
sum = docompute(5000) # 5000
5046

5147
print("sum", sum)
5248

53-
duration = "%.3f\n" % (time.time() - start)
54-
print("arith-modulo: " + duration)
55-
56-
57-
print('warming up ...')
58-
for run in range(2000):
59-
docompute(10) # 1000
6049

61-
measure(50)
50+
def __benchmark__(num=50):
51+
measure(50)

graalpython/benchmarks/src/micro/attribute-access-polymorphic.py

Lines changed: 2 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@
2222
# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
2323
# OF THE POSSIBILITY OF SUCH DAMAGE.
2424
# micro benchmark: attribute access polymorphic inspired by richards
25-
import time
2625

2726
iteration = 20000 # 50000
2827

@@ -73,23 +72,11 @@ def do_stuff():
7372

7473

7574
def measure(num):
76-
for i in range(3):
77-
do_stuff()
78-
79-
print("Start timing...")
80-
start = time.time()
81-
8275
for i in range(num): # 50000
8376
result = do_stuff()
8477

8578
print(result)
86-
duration = "%.3f\n" % (time.time() - start)
87-
print("attribute-access-polymorphic: " + duration)
88-
8979

90-
# warm up
91-
print('warming up ...')
92-
for i in range(1000):
93-
do_stuff()
9480

95-
measure(1000)
81+
def __benchmark__(num=1000):
82+
measure(num)

graalpython/benchmarks/src/micro/attribute-access.py

Lines changed: 3 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@
2222
# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
2323
# OF THE POSSIBILITY OF SUCH DAMAGE.
2424
# micro benchmark: attribute access
25-
import time
2625

2726
iteration = 50000 # 50000
2827

@@ -41,20 +40,11 @@ def do_stuff(foo):
4140

4241

4342
def measure(num):
44-
print("Start timing...")
45-
start = time.time()
46-
4743
for i in range(num): # 50000
4844
result = do_stuff(Foo(42))
4945

5046
print(result)
51-
duration = "%.3f\n" % (time.time() - start)
52-
print("attribute-access: " + duration)
53-
54-
55-
# warm up
56-
print('warming up ...')
57-
for i in range(2000):
58-
do_stuff(Foo(42))
47+
5948

60-
measure(5000)
49+
def __benchmark__(num=5000):
50+
measure(num)

graalpython/benchmarks/src/micro/attribute-bool.py

Lines changed: 2 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@
2222
# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
2323
# OF THE POSSIBILITY OF SUCH DAMAGE.
2424
# micro benchmark: boolean attribute access
25-
import time
2625

2726
iteration = 500000
2827

@@ -66,20 +65,11 @@ def do_stuff():
6665

6766

6867
def measure(num):
69-
print("Start timing...")
70-
start = time.time()
71-
7268
for i in range(num):
7369
result = do_stuff()
7470

7571
print(result)
76-
duration = "%.3f\n" % (time.time() - start)
77-
print("attribute-bool: " + duration)
78-
7972

80-
# warm up
81-
print('warming up ...')
82-
for i in range(2000):
83-
do_stuff()
8473

85-
measure(3000)
74+
def __benchmark__(num=3000):
75+
measure(num)

graalpython/benchmarks/src/micro/boolean-logic.py

Lines changed: 2 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@
2222
# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
2323
# OF THE POSSIBILITY OF SUCH DAMAGE.
2424
# micro benchmark: method call polymorphic inspired by richards
25-
import time
2625

2726
iteration = 50000
2827

@@ -85,20 +84,11 @@ def no_object_do_stuff():
8584

8685

8786
def measure(num):
88-
print("Start timing...")
89-
start = time.time()
90-
9187
for i in range(num): # 50000
9288
result = do_stuff()
9389

9490
print(result)
95-
duration = "%.3f\n" % (time.time() - start)
96-
print("boolean-logic: " + duration)
97-
9891

99-
# warm up
100-
print('warming up ...')
101-
for i in range(1000):
102-
do_stuff()
10392

104-
measure(1000)
93+
def __benchmark__(num=1000):
94+
measure(num)

graalpython/benchmarks/src/micro/builtin-len-tuple.py

Lines changed: 2 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,6 @@
2222
# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
2323
# OF THE POSSIBILITY OF SUCH DAMAGE.
2424
# builtin function len()
25-
import time
26-
2725

2826
def call_len(num, ll):
2927
length = 0
@@ -34,21 +32,11 @@ def call_len(num, ll):
3432

3533

3634
def measure():
37-
print("Start timing...")
38-
start = time.time()
39-
4035
ll = tuple(range(1000))
4136
length = call_len(1000000000, ll) # 1000000
4237

4338
print("Final length ", length)
4439

45-
duration = "%.3f\n" % (time.time() - start)
46-
print("builtin-len-tuple: " + duration)
47-
48-
49-
# warm up
50-
print('warming up ...')
51-
for run in range(10000):
52-
call_len(50000, (1, 2, 3, 4, 5))
5340

54-
measure()
41+
def __benchmark__(*args):
42+
measure()

graalpython/benchmarks/src/micro/builtin-len.py

Lines changed: 2 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,6 @@
2222
# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
2323
# OF THE POSSIBILITY OF SUCH DAMAGE.
2424
# builtin function len()
25-
import time
26-
2725

2826
def call_len(num, ll):
2927
length = 0
@@ -35,21 +33,12 @@ def call_len(num, ll):
3533

3634

3735
def measure():
38-
print("Start timing...")
39-
start = time.time()
40-
4136
ll = [x * 2 for x in range(1000)]
4237
length = call_len(500000000, ll) # 1000000000
4338

4439
print("Final length ", length)
4540

46-
duration = "%.3f\n" % (time.time() - start)
47-
print("builtin-len: " + duration)
48-
4941

50-
# warm up
51-
print('warming up ...')
52-
for run in range(5000):
53-
call_len(10000, [1, 2, 3, 4, 5])
5442

55-
measure()
43+
def __benchmark__(*args):
44+
measure()

graalpython/benchmarks/src/micro/call-method-polymorphic.py

Lines changed: 3 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@
2222
# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
2323
# OF THE POSSIBILITY OF SUCH DAMAGE.
2424
# micro benchmark: method call polymorphic inspired by richards
25-
import time
2625

2726
iteration = 10000
2827

@@ -84,20 +83,11 @@ def do_stuff():
8483

8584

8685
def measure(num):
87-
print("Start timing...")
88-
start = time.time()
89-
9086
for i in range(num): # 50000
9187
result = do_stuff()
9288

9389
print(result)
94-
duration = "%.3f\n" % (time.time() - start)
95-
print("call-method-polymorphic: " + duration)
96-
97-
98-
# warm up
99-
print('warming up ...')
100-
for i in range(1000):
101-
do_stuff()
90+
10291

103-
measure(1000)
92+
def __benchmark__(num=1000):
93+
measure(num)

graalpython/benchmarks/src/micro/for-range.py

Lines changed: 3 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@
2222
# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
2323
# OF THE POSSIBILITY OF SUCH DAMAGE.
2424
# micro benchmark: simple for range loop
25-
import time
2625

2726
iteration = 50000 # 50000
2827

@@ -40,20 +39,11 @@ def sumitup(iteration):
4039

4140

4241
def measure(num):
43-
print("Start timing...")
44-
start = time.time()
45-
4642
for i in range(num): # 50000
4743
sumitup(iteration)
4844

4945
print(sumitup(iteration))
50-
duration = "%.3f\n" % (time.time() - start)
51-
print("for-range: " + duration)
52-
53-
54-
print('warming up ...')
55-
for i in range(10000): # 5000
56-
sumitup(6000) # 1000
46+
5747

58-
# add("a", "b")
59-
measure(50000)
48+
def __benchmark__(num=50000):
49+
measure(num)

0 commit comments

Comments
 (0)