Each table row shows performance measurements for this Nuitka program with a particular command-line input value N.
N | CPU secs | Elapsed secs | Memory KB | Code B | ≈ CPU Load |
---|---|---|---|---|---|
1 | 2.75 | 2.76 | 11,008 | 367 | 100% 0% 0% 0% 0% 0% 1% 0% |
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 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)
Sun, 23 Apr 2023 09:13:38 GMT MAKE: make[1]: Vstupuje se do adresáře „/home/dundee/work/pybenchmarks/bencher/tmp/iobench/tmp“ nuitka3 --remove-output iobench.nuitka Nuitka-Options:INFO: Used command line options: --remove-output iobench.nuitka Nuitka-Options:WARNING: You did not specify to follow or include anything but main program. Check options and make sure that is intended. Nuitka:INFO: Starting Python compilation with Nuitka '1.5' on Python '3.10' commercial grade 'not installed'. Nuitka:INFO: Completed Python level compilation and optimization. Nuitka:INFO: Generating source code for C backend compiler. Nuitka:INFO: Running data composer tool for optimal constant value handling. Nuitka:INFO: Running C compilation via Scons. Nuitka-Scons:INFO: Backend C compiler: gcc (gcc). Nuitka-Scons:INFO: Backend linking program with 7 files (no progress information available). Nuitka-Scons:WARNING: You are not using ccache. Nuitka:INFO: Removing build directory 'iobench.nuitka.build'. Nuitka:INFO: Successfully created 'iobench.nuitka.bin'. cp iobench.nuitka.bin iobench.nuitka_run make[1]: Opouští se adresář „/home/dundee/work/pybenchmarks/bencher/tmp/iobench/tmp“ 14.37s to complete and log all make actions COMMAND LINE: ./iobench.nuitka_run 1 PROGRAM OUTPUT NOT CHECKED: <compiled_function fread at 0x7f92ce7a7b50> 100 bytes, 0.35us per write <compiled_function fwrite at 0x7f92ce7a7880> 100 bytes, 0.31us per write <compiled_function fread at 0x7f92ce7a7b50> 1000 bytes, 0.42us per write <compiled_function fwrite at 0x7f92ce7a7880> 1000 bytes, 0.37us per write <compiled_function fread at 0x7f92ce7a7b50> 10000 bytes, 0.53us per write <compiled_function fwrite at 0x7f92ce7a7880> 10000 bytes, 0.41us per write <compiled_function file_read at 0x7f92ce7a7d30> 100 bytes, 0.13us per write <compiled_function file_write at 0x7f92ce7a7c40> 100 bytes, 0.11us per write <compiled_function file_read at 0x7f92ce7a7d30> 1000 bytes, 0.40us per write <compiled_function file_write at 0x7f92ce7a7c40> 1000 bytes, 0.24us per write <compiled_function file_read at 0x7f92ce7a7d30> 10000 bytes, 2.25us per write <compiled_function file_write at 0x7f92ce7a7c40> 10000 bytes, 0.77us per write