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

 performance measurements

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

 N  CPU secs Elapsed secs Memory KB Code B ≈ CPU Load
17.397.4272,292367  4% 3% 4% 4% 100% 4% 3% 4%

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 PyPy 3 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:26 GMT

COMMAND LINE:
 /usr/bin/pypy3 iobench.pypy3 1

PROGRAM OUTPUT NOT CHECKED:
<function fread at 0x00007f6bef2008e0> 100 bytes, 0.20us per write
<function fwrite at 0x00007f6bef2011a0> 100 bytes, 0.14us per write
<function fread at 0x00007f6bef2008e0> 1000 bytes, 0.24us per write
<function fwrite at 0x00007f6bef2011a0> 1000 bytes, 0.14us per write
<function fread at 0x00007f6bef2008e0> 10000 bytes, 0.79us per write
<function fwrite at 0x00007f6bef2011a0> 10000 bytes, 0.14us per write
<function file_read at 0x00007f6bef2012e0> 100 bytes, 0.34us per write
<function file_write at 0x00007f6bef201240> 100 bytes, 0.02us per write
<function file_read at 0x00007f6bef2012e0> 1000 bytes, 3.11us per write
<function file_write at 0x00007f6bef201240> 1000 bytes, 0.13us per write
<function file_read at 0x00007f6bef2012e0> 10000 bytes, 28.15us per write
<function file_write at 0x00007f6bef201240> 10000 bytes, 1.15us per write

Revised BSD license

  Home   Conclusions   License   Play