KusStar / benchmark-static-hermes

Benchmarking Static Hermes, with other JS Engines.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Benchmark Static Hermes

About Static Hermes, check Static Hermes: the Next Generation of Hermes - Tzvetan Mikov | React Native EU 2023, Static Hermes (React Native EU 2023 Announcement) , facebook/hermes - static_h branch

This repo make comparison between Static Hermes and other JS engines.

  • V8(Node.js)
  • JavaScriptCore(JavaScriptCore.framework)
  • QuickJS
  • previous bytecode hermes

Run

Only run on macOS.

git clone https://github.com/kusstar/benchmark-static-hermes.git
cd benchmark-static-hermes
git submodule update --init --recursive
sh build.sh
sh bench.sh

Result

The running time only calculate the time of executing JS code, not include precompile time or engine initial setup time.

Run on MacBook Pro 2021 M1 PRO 16GB.

Check bench.sh and benches/ for more detail.

base.js calc.js json.js md5.js nbody.js
V8 0ms 410ms 354ms 198ms 35ms
JavaScriptCore 0ms 271ms 153ms 179ms 35ms
quickjs 0ms 6101ms timeout 3381ms 1150ms
bytecode hermes 0ms 2085ms 648ms 2027ms 841ms
static untyped hermes 0ms 2334ms 546ms 2504ms 555ms
static typed hermes 0ms 4ms 520ms 2263ms 53ms

About

Benchmarking Static Hermes, with other JS Engines.


Languages

Language:JavaScript 76.7%Language:TypeScript 17.0%Language:Shell 6.3%