performance measurements

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

 N  CPU secs Elapsed secs Memory KB Code B ≈ CPU Load
15.585.768,556367  34% 34% 24% 93%
15.325.348,440367  16% 12% 100% 12%
15.495.508,472367  25% 23% 100% 18%

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

Python 3.3.1 (default, Apr 11 2013, 12:45:45)
[GCC 4.7.2] on linux

 iobench Python 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

Mon, 12 Nov 2018 12:05:02 GMT

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

PROGRAM OUTPUT NOT CHECKED:
<function fread at 0x7f961c5da7b8> 100 bytes, 0.59us per write
<function fwrite at 0x7f961c5da950> 100 bytes, 0.60us per write
<function fread at 0x7f961c5da7b8> 1000 bytes, 0.70us per write
<function fwrite at 0x7f961c5da950> 1000 bytes, 0.68us per write
<function fread at 0x7f961c5da7b8> 10000 bytes, 1.13us per write
<function fwrite at 0x7f961c5da950> 10000 bytes, 0.76us per write
<function file_read at 0x7f961c5da8c8> 100 bytes, 0.19us per write
<function file_write at 0x7f961c5da730> 100 bytes, 0.23us per write
<function file_read at 0x7f961c5da8c8> 1000 bytes, 1.32us per write
<function file_write at 0x7f961c5da730> 1000 bytes, 0.54us per write
<function file_read at 0x7f961c5da8c8> 10000 bytes, 4.97us per write
<function file_write at 0x7f961c5da730> 10000 bytes, 2.02us per write

Revised BSD license

  Home   Conclusions   License   Play