Python Interpreters Benchmarks
x64 ArchLinux : AMD® Ryzen 7 4700U®

 performance measurements

Each table row shows performance measurements for this Graal program with a particular command-line input value N.

 N  CPU secs Elapsed secs Memory KB Code B ≈ CPU Load
168.4655.93685,108367  55% 13% 4% 4% 40% 17% 12% 7%

Read the ↓ make, command line, and program output logs to see how this program was run.

Read iobench benchmark to see what this program should do.

 notes

 iobench Graal program source code

import os, time

def measure(func, repetitions, size):
    t0 = time.time()
    func(repetitions, size)
    print(
        func,
        "%d bytes, %.2fus per write" % (
            size,
            (time.time() - t0) / repetitions * 1000 * 1000
        )
    )

def fwrite(repetitions, size):
    fd = os.open("/dev/null", os.O_WRONLY)
    for i in range(repetitions):
        os.write(fd, b" " * size)

def fread(repetitions, size):
    fd = os.open("/dev/full", os.O_RDONLY)
    for i in range(repetitions):
        os.read(fd, size)

def file_write(repetitions, size):
    f = open("/dev/null", "w")
    for i in range(repetitions):
        f.write(" " * size)
    f.flush()

def file_read(repetitions, size):
    f = open("/dev/full")
    for i in range(repetitions):
        f.read(size)

if __name__ == '__main__':
    measure(fread, 1000000, 100)
    measure(fwrite, 1000000, 100)
    measure(fread, 1000000, 1000)
    measure(fwrite, 1000000, 1000)
    measure(fread, 100000, 10000)
    measure(fwrite, 100000, 10000)
    measure(file_read, 1000000, 100)
    measure(file_write, 1000000, 100)
    measure(file_read, 1000000, 1000)
    measure(file_write, 1000000, 1000)
    measure(file_read, 100000, 10000)
    measure(file_write, 100000, 10000)

 make, command-line, and program output logs

 Fri, 30 Oct 2020 21:28:10 GMT

COMMAND LINE:
 /usr/lib/jvm/java-8-graalvm/bin/graalpython iobench.graal 1

PROGRAM OUTPUT NOT CHECKED:
<function fread at 0x1abf01a4> 100 bytes, 1.45us per write
<function fwrite at 0x73ddb7d9> 100 bytes, 0.92us per write
<function fread at 0x1abf01a4> 1000 bytes, 1.49us per write
<function fwrite at 0x73ddb7d9> 1000 bytes, 1.63us per write
<function fread at 0x1abf01a4> 10000 bytes, 1.36us per write
<function fwrite at 0x73ddb7d9> 10000 bytes, 7.34us per write
<function file_read at 0x691c1263> 100 bytes, 6.29us per write
<function file_write at 0x41cc5da7> 100 bytes, 4.95us per write
<function file_read at 0x691c1263> 1000 bytes, 6.30us per write
<function file_write at 0x41cc5da7> 1000 bytes, 16.52us per write
<function file_read at 0x691c1263> 10000 bytes, 18.06us per write
<function file_write at 0x41cc5da7> 10000 bytes, 135.68us per write

Revised BSD license

  Home   Conclusions   License   Play