Each table row shows performance measurements for this Numba program with a particular command-line input value N.
N | CPU secs | Elapsed secs | Memory KB | Code B | ≈ CPU Load |
---|---|---|---|---|---|
1 | 4.86 | 4.88 | 131,784 | 400 | 37% 7% 7% 9% 61% 5% 16% 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.
import os, time from numba import jit 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 ) ) @jit(forceobj=True) def fwrite(repetitions, size): fd = os.open("/dev/null", os.O_WRONLY) for i in range(repetitions): os.write(fd, b" " * size) @jit(forceobj=True) def fread(repetitions, size): fd = os.open("/dev/full", os.O_RDONLY) for i in range(repetitions): os.read(fd, size) @jit(forceobj=True) def file_write(repetitions, size): f = open("/dev/null", "w") for i in range(repetitions): f.write(" " * size) f.flush() @jit(forceobj=True) 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)
Wed, 12 Jan 2022 11:57:39 GMT COMMAND LINE: /usr/bin/python3 iobench.numba 1 PROGRAM OUTPUT NOT CHECKED: CPUDispatcher(<function fread at 0x7faa88a352d0>) 100 bytes, 0.75us per write CPUDispatcher(<function fwrite at 0x7faa889d1120>) 100 bytes, 0.58us per write CPUDispatcher(<function fread at 0x7faa88a352d0>) 1000 bytes, 0.52us per write CPUDispatcher(<function fwrite at 0x7faa889d1120>) 1000 bytes, 0.44us per write CPUDispatcher(<function fread at 0x7faa88a352d0>) 10000 bytes, 0.89us per write CPUDispatcher(<function fwrite at 0x7faa889d1120>) 10000 bytes, 0.50us per write CPUDispatcher(<function file_read at 0x7faa88a35fc0>) 100 bytes, 0.35us per write CPUDispatcher(<function file_write at 0x7faa88a35e10>) 100 bytes, 0.37us per write CPUDispatcher(<function file_read at 0x7faa88a35fc0>) 1000 bytes, 0.49us per write CPUDispatcher(<function file_write at 0x7faa88a35e10>) 1000 bytes, 0.30us per write CPUDispatcher(<function file_read at 0x7faa88a35fc0>) 10000 bytes, 2.79us per write CPUDispatcher(<function file_write at 0x7faa88a35e10>) 10000 bytes, 0.92us per write