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
151.9138.541,368,480367  11% 11% 32% 52% 9% 9% 7% 28%

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

 Thu, 06 May 2021 22:18:48 GMT

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

PROGRAM OUTPUT NOT CHECKED:
<function fread at 0x5afa96f3> 100 bytes, 0.72us per write
<function fwrite at 0x4a3363cd> 100 bytes, 0.85us per write
<function fread at 0x5afa96f3> 1000 bytes, 0.85us per write
<function fwrite at 0x4a3363cd> 1000 bytes, 1.16us per write
<function fread at 0x5afa96f3> 10000 bytes, 2.56us per write
<function fwrite at 0x4a3363cd> 10000 bytes, 12.07us per write
<function file_read at 0x5de1ec9f> 100 bytes, 2.09us per write
<function file_write at 0x28654737> 100 bytes, 2.77us per write
<function file_read at 0x5de1ec9f> 1000 bytes, 3.76us per write
<function file_write at 0x28654737> 1000 bytes, 11.34us per write
<function file_read at 0x5de1ec9f> 10000 bytes, 33.72us per write
<function file_write at 0x28654737> 10000 bytes, 99.85us per write

Revised BSD license

  Home   Conclusions   License   Play