Skip to content

Instantly share code, notes, and snippets.

@michaeljclark
Created May 6, 2017 00:11
Show Gist options
  • Save michaeljclark/010db6977705e7234724a72098f3f9eb to your computer and use it in GitHub Desktop.
Save michaeljclark/010db6977705e7234724a72098f3f9eb to your computer and use it in GitHub Desktop.
RISC-V to x86 binary translation benchmarks
Runtime (seconds)
RV32 x86-32 RV64 x86-64
meta meta qemu meta meta qemu
interp JIT user native interp JIT user native
primes 11.57 0.63 0.52 0.34 5.07 0.20 0.27 0.11
miniz 32.55 1.53 2.17 0.81 41.52 2.18 2.20 0.76
SHA-512 55.27 2.49 2.74 0.73 23.69 0.71 1.12 0.24
AES 32.75 1.07 1.52 0.37 38.39 1.29 1.61 0.27
qsort 3.86 0.32 1.01 0.13 3.96 0.35 0.94 0.13
dhrystone 23.34 0.62 2.18 0.18 22.30 0.60 2.21 0.10
DMIPS (v1.1) 243 9153 2610 31386 254 9555 2576 55132
Performance Ratio (smaller is better)
RV32 x86-32 RV64 x86-64
meta meta qemu meta meta qemu
interp JIT user native interp JIT user native
primes 34.33 1.85 1.55 1.00 44.43 1.76 2.36 1.00
miniz 40.19 1.89 2.68 1.00 55.00 2.89 2.92 1.00
SHA-512 76.23 3.44 3.78 1.00 100.39 3.02 4.76 1.00
AES 88.02 2.87 4.08 1.00 140.12 4.71 5.88 1.00
qsort 28.82 2.39 7.50 1.00 29.52 2.60 7.04 1.00
dhrystone 128.97 3.44 12.04 1.00 214.45 5.73 21.23 1.00
Ratio (average) 66:1 3.3:1 5.3:1 1:1 97:1 3.5:1 7.4:1 1:1
Notes:
- riscv32/riscv64 (gcc -Os) 7.0.1 20170321 (experimental)
- x86-32/x86-64 (gcc -O3) (Debian 6.3.0-6) 6.3.0 20170205
- native Intel(R) Core(TM) i7-5557U CPU @ 3.10GHz
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment