Skip to content

Instantly share code, notes, and snippets.

@lastmjs
Last active March 19, 2024 05:19
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save lastmjs/d058b2c8133b1cf45262883b3429b1be to your computer and use it in GitHub Desktop.
Save lastmjs/d058b2c8133b1cf45262883b3429b1be to your computer and use it in GitHub Desktop.
Boa/QuickJS Benchmarks Comparison
This compares Boa and QuickJS against these benchmarks: https://bellard.org/quickjs/bench.html
From these numbers we have evidence to believe that Azle's performance can be improved ~28x by switching to QuickJS.
We also have evidence from https://bellard.org/quickjs/bench.html that QuickJS could be improved up to 2x without compilation/JIT, and that compiled languages have one order of magnitude improvement over interpreted languages.
Boa:
target/release/boa combined.js
PROGRESS Richards
RESULT Richards 17.6
PROGRESS DeltaBlue
RESULT DeltaBlue 17.7
PROGRESS Encrypt
PROGRESS Decrypt
RESULT Crypto 26.3
PROGRESS RayTrace
RESULT RayTrace 65.8
PROGRESS Earley
PROGRESS Boyer
RESULT EarleyBoyer 56.2
ERROR RegExp TypeError: not a constructor
undefined
PROGRESS RegExp
PROGRESS Splay
RESULT Splay 40.4
PROGRESS NavierStokes
RESULT NavierStokes 8.32
SCORE 26.9
QuickJS:
./qjs -d tests/bench-v8/combined.js
PROGRESS Richards
RESULT Richards 686
PROGRESS DeltaBlue
RESULT DeltaBlue 666
PROGRESS Encrypt
PROGRESS Decrypt
RESULT Crypto 743
PROGRESS RayTrace
RESULT RayTrace 856
PROGRESS Earley
PROGRESS Boyer
RESULT EarleyBoyer 1390
PROGRESS RegExp
RESULT RegExp 195
PROGRESS Splay
RESULT Splay 1254
PROGRESS NavierStokes
RESULT NavierStokes 1288
SCORE 773
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment