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
162.6847.211,226,504367  42% 15% 28% 41% 33% 16% 15% 15%

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

 Mon, 25 Jan 2021 21:25:11 GMT

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

PROGRAM OUTPUT NOT CHECKED:
<function fread at 0x24ebf31d> 100 bytes, 1.33us per write
<function fwrite at 0x78304166> 100 bytes, 0.90us per write
<function fread at 0x24ebf31d> 1000 bytes, 1.32us per write
<function fwrite at 0x78304166> 1000 bytes, 1.22us per write
<function fread at 0x24ebf31d> 10000 bytes, 1.21us per write
<function fwrite at 0x78304166> 10000 bytes, 5.78us per write
<function file_read at 0x562a47f2> 100 bytes, 4.94us per write
<function file_write at 0x2898905a> 100 bytes, 5.14us per write
<function file_read at 0x562a47f2> 1000 bytes, 4.12us per write
<function file_write at 0x2898905a> 1000 bytes, 14.63us per write
<function file_read at 0x562a47f2> 10000 bytes, 12.01us per write
<function file_write at 0x2898905a> 10000 bytes, 114.76us per write

Revised BSD license

  Home   Conclusions   License   Play