PDP-11 benchmark
When you run it, you'll see after 10 seconds a value in hex: that's the number of iterations it could do in 10 seconds. It expects a working kw11-l in the system.
If you like you can assemble the source with e.g. this assembler. You can also run the .bin-file directly in e.g. simh like this:
set cpu 11/70 set nothrottle load benchmark.bin go
The program should be loaded at address 01000 (octal) and executed from that address as well.
- benchmark.asm source code
- benchmark.bin tape image
- benchmark.raw bare metal image (no tape header)
- benchmark-odt.txt a text-file containing commands that can be "pasted" into an ODT-session (untested!)
results
*1: compiled with -Ofast -march=native -mtune=native
*2: ran under pypy
| cpu | emulator or system | speed (hex) |
|---|---|---|
| AMD Ryzen 9 7950X3D | simh v3.8-1 | 0056b0b8 *1 |
| Macbook Air M3 | simh v3.12-2 | 00357ded |
| AMD Ryzen 9 7950X3D | Kek (git 6e2ccd5) | 00258ae0 |
| Raspberry Pi 5 | simh v3.8-1 | 000a9c95 |
| AMD Ryzen 9 7950X3D | NWebber (git 485cdcc) | 000a1732 *2 |
| Raspberry Pi 4 | simh v3.8-1 | 0005760e |
| Raspberry Pi 2 | simh v3.8-1 | 00011ad6 |
| ESP32-S3 | Kek (git bb4e70a) | 00002adf |
Note: when I have data of a real PDP11/70 system then I'll add percentages.
example output
