Duktape 2.2.0 performance measurement

Octane

Octane sub-scores and overall score. Higher is better, highest of 10 runs. Omits a few Octane tests which fail to run (see Duktape repo tests/octane). Overall score for MuJS and Jerryscript omitted because some sub-scores are missing so an overall score would not be comparable.

Test duk-pgo.O2.220 duk.O2.220 duk-pgo.O2.210 duk.O2.210 duk.O2.200 duk.O2.150 mujs jerry
Box2D 1208 928 1180 830 756 586 311 -
CodeLoad 6276 6542 6127 6310 5676 4579 - -
Crypto 293 280 285 242 185 183 - 193
DeltaBlue 305 220 295 192 178 138 78 166
EarleyBoyer 586 589 530 529 342 291 - -
Gameboy 2209 1783 2197 1491 1324 1119 - -
NavierStokes 843 749 778 687 557 503 - -
PdfJS 855 808 831 754 390 352 - -
RayTrace 468 396 427 352 241 209 330 234
Richards 225 178 220 150 144 112 115 166
Splay 1261 1118 1083 930 696 635 29 -
SplayLatency 2865 5719 2813 4240 3344 2288 266 -
SCORE 888 830 844 724 568 475 - -

Duktape microbenchmarks, comparison to other engines

Baseline is duk.O2.220, compared to a few other engines. Lower is better, lowest of 5 runs.

duk.O2.220 mujs jerry
test-add-fastint 0.67 (4.37) ▼ (2.96) ▼
test-add-float 0.71 (4.40) ▼ (4.14) ▼
test-add-int 0.70 (4.47) ▼ (4.74) ▼
test-add-nan-fastint 0.89 (4.38) ▼ (3.49) ▼
test-add-nan 0.70 (4.38) ▼ (4.15) ▼
test-add-string 14.26 9.97 ▲ 13.22 ⇑
test-arith-add 2.72 (17.45) ▼ (16.58) ▼
test-arith-add-string 1.40 1.00 ▲ 1.31
test-arith-div 7.69 (12.20) ▼ (21.04) ▼
test-arith-mod 6.87 (14.80) ▼ (25.42) ▼
test-arith-mul 3.93 (12.05) ▼ (16.42) ▼
test-arith-sub 2.82 (12.21) ▼ (16.92) ▼
test-array-append 0.53 (48.00) ▼ -
test-array-cons-list 0.63 (8.79) ▼ (2.22) ▼
test-array-foreach 2.23 (3.69) ▼ 1.66 ▲
test-array-literal-100 2.61 (446.78) ▼ (3.92) ▼
test-array-literal-20 0.66 (59.65) ▼ (0.91) ▼
test-array-literal-3 0.26 (6.15) ▼ 0.24 ⇑
test-array-pop 1.66 (51.24) ▼ (7.07) ▼
test-array-push 2.02 (8.52) ▼ (4.02) ▼
test-array-read 1.96 (236.50) ▼ (5.73) ▼
test-array-read-lenloop 2.14 (123.30) ▼ (4.57) ▼
test-array-sort 3.22 - (4.26) ▼
test-array-write 1.90 (255.16) ▼ (6.62) ▼
test-array-write-length 1.60 (3.67) ▼ (2.71) ▼
test-assign-add 4.17 (38.24) ▼ (25.02) ▼
test-assign-addto 4.18 (37.46) ▼ (30.29) ▼
test-assign-addto-nan 1.43 (8.07) ▼ (6.44) ▼
test-assign-boolean 5.14 (10.35) ▼ (20.94) ▼
test-assign-const-int2 6.15 (10.61) ▼ (12.75) ▼
test-assign-const-int 3.01 (10.53) ▼ (12.80) ▼
test-assign-const 4.18 (10.74) ▼ (18.82) ▼
test-assign-literal 4.42 (10.89) ▼ (23.24) ▼
test-assign-proplhs-reg 2.68 2.65 (5.62) ▼
test-assign-proprhs 2.85 2.66 (3.98) ▼
test-assign-reg 3.27 (9.68) ▼ (17.20) ▼
test-base64-decode 1.73 - -
test-base64-decode-whitespace 1.94 - -
test-base64-encode 1.87 - -
test-bitwise-ops 1.90 (14.86) ▼ (21.80) ▼
test-break-fast 1.23 (1.31) (1.41) ▼
test-break-slow 7.44 2.84 ▲ 4.60 ▲
test-buffer-nodejs-read 2.39 - -
test-buffer-nodejs-write 3.12 - -
test-buffer-object-read 2.41 - -
test-buffer-object-write 3.18 - -
test-buffer-plain-read 1.96 - -
test-buffer-plain-write 1.93 - -
test-call-apply 2.37 (2.52) (2.50)
test-call-basic-1 6.36 6.27 (9.65) ▼
test-call-basic-2 6.51 4.60 ▲ (8.83) ▼
test-call-basic-3 8.34 (12.96) ▼ (15.18) ▼
test-call-basic-4 17.56 (42.82) ▼ (40.11) ▼
test-call-bound-deep 2.98 - (4.45) ▼
test-call-bound 2.84 - 2.02 ▲
test-call-call 2.13 1.57 ▲ 1.73 ▲
test-call-native 11.31 (16.99) ▼ 8.60 ▲
test-call-prop 3.92 3.16 ▲ (4.69) ▼
test-call-proxy-apply-1 26.93 - -
test-call-proxy-pass-1 13.81 - -
test-call-reg 2.54 2.48 (3.84) ▼
test-call-reg-new 4.92 3.00 ▲ 3.38 ▲
test-call-tail-1 1.04 - (1.82) ▼
test-call-tail-2 1.16 - (1.99) ▼
test-call-var 5.50 4.87 ▲ 4.33 ▲
test-closure-inner-functions 1.27 0.70 ▲ 0.26 ▲
test-compile-mandel 13.12 6.45 ▲ 2.40 ▲
test-compile-mandel-nofrac 10.06 6.46 ▲ 2.40 ▲
test-compile-short 5.67 2.32 ▲ 0.97 ▲
test-compile-string-ascii 7.93 6.89 ▲ -
test-continue-fast 1.55 (2.16) ▼ (2.60) ▼
test-continue-slow 7.74 3.66 ▲ 6.56 ▲
test-empty-loop 1.78 (6.40) ▼ (3.59) ▼
test-empty-loop-slowpath 0.97 (1.08) ▼ 0.71 ▲
test-empty-loop-step3 1.82 (8.05) ▼ (7.07) ▼
test-enum-basic 3.26 0.71 ▲ 1.16 ▲
test-equals-fastint 0.57 (2.58) ▼ (3.36) ▼
test-equals-nonfastint 0.64 (2.58) ▼ (4.75) ▼
test-error-create 1.60 (5.09) ▼ 0.86 ▲
test-fib-2 3.20 (3.68) ▼ (5.95) ▼
test-fib 5.90 3.62 ▲ 5.75
test-func-bind 2.18 - 1.01 ▲
test-global-lookup 6.16 4.53 ▲ 2.75 ▲
test-hello-world 0.00 0.00 0.00
test-hex-decode 4.01 - -
test-hex-encode 3.21 - -
test-jc-serialize-indented 3.17 - -
test-jc-serialize 2.15 - -
test-json-parse-hex 3.47 - -
test-json-parse-integer 2.90 (23.51) ▼ -
test-json-parse-number 5.09 2.70 ▲ -
test-json-parse-string 5.23 (51.66) ▼ -
test-json-serialize-fastpath-loop 3.32 (13.44) ▼ (581.44) ▼
test-json-serialize-forceslow 9.51 2.40 ▲ 9.14
test-json-serialize-hex 1.54 - -
test-json-serialize-indented-deep100 1.38 (1.60) ▼ (149.64) ▼
test-json-serialize-indented-deep25 3.17 (11.84) ▼ (280.97) ▼
test-json-serialize-indented-deep500 0.94 - -
test-json-serialize-indented 5.57 (16.33) ▼ (108.33) ▼
test-json-serialize 6.40 2.37 ▲ (9.06) ▼
test-json-serialize-jsonrpc-message 3.11 - -
test-json-serialize-nofrac 0.62 (1.74) ▼ (7.26) ▼
test-json-serialize-plainbuf 2.55 - -
test-json-serialize-slowpath-loop 3.42 - (11.18) ▼
test-json-string-bench 2.80 (53.98) ▼ -
test-json-string-stringify 10.05 (11.67) ▼ -
test-jx-serialize-bufobj-forceslow 4.11 - -
test-jx-serialize-bufobj 1.52 - -
test-jx-serialize-indented 3.04 - -
test-jx-serialize 2.08 - -
test-mandel 2.94 (15.22) ▼ (14.56) ▼
test-math-clz32 2.21 - -
test-misc-1dcell 3.70 (127.98) ▼ (8.58) ▼
test-object-garbage-2 2.61 (54.54) ▼ (3.31) ▼
test-object-garbage 4.05 2.68 ▲ 2.78 ▲
test-object-literal-100 7.10 (30.28) ▼ (12.54) ▼
test-object-literal-20 1.62 (4.30) ▼ (2.27) ▼
test-object-literal-3 0.36 (0.52) ▼ (0.39) ⇓
test-prop-read-1024 3.31 (6.82) ▼ (4.46) ▼
test-prop-read-16 3.32 (4.48) ▼ (4.43) ▼
test-prop-read-256 3.27 (8.29) ▼ (4.43) ▼
test-prop-read-32 3.32 (5.62) ▼ (4.44) ▼
test-prop-read-48 3.34 (6.52) ▼ (4.42) ▼
test-prop-read-4 3.43 (4.00) ▼ (4.42) ▼
test-prop-read-64 3.31 (6.52) ▼ (4.34) ▼
test-prop-read-8 3.32 (4.93) ▼ (4.43) ▼
test-prop-read-inherited 4.76 4.75 (9.40) ▼
test-prop-read 3.44 (3.96) ▼ (4.43) ▼
test-prop-write-1024 3.14 (10.39) ▼ (5.26) ▼
test-prop-write-16 3.20 (4.46) ▼ (5.27) ▼
test-prop-write-256 3.14 (8.21) ▼ (5.32) ▼
test-prop-write-32 3.18 (5.52) ▼ (5.32) ▼
test-prop-write-48 3.22 (6.57) ▼ (5.29) ▼
test-prop-write-4 3.20 (3.93) ▼ (5.30) ▼
test-prop-write-64 3.21 (6.55) ▼ (5.32) ▼
test-prop-write-8 3.16 (4.92) ▼ (5.26) ▼
test-prop-write 3.25 (3.95) ▼ (5.28) ▼
test-proxy-get 1.62 - -
test-random 1.61 1.14 ▲ (2.14) ▼
test-reflect-ownkeys-sorted 1.11 - -
test-reflect-ownkeys-unsorted 1.12 - -
test-regexp-case-insensitive-compile 0.71 0.00 ▲ 0.00 ▲
test-regexp-case-insensitive-execute 1.69 (46.32) ▼ 0.12 ▲
test-regexp-case-sensitive-compile 1.82 0.90 ▲ 0.66 ▲
test-regexp-case-sensitive-execute 1.59 0.65 ▲ 1.60
test-regexp-compile 2.45 2.02 ▲ 0.57 ▲
test-regexp-execute 1.81 (2.30) ▼ 1.54 ▲
test-regexp-string-parse 8.08 - -
test-reg-readwrite-object 4.54 (10.75) ▼ (18.71) ▼
test-reg-readwrite-plain 2.87 (10.85) ▼ (14.85) ▼
test-strict-equals-fastint 0.70 (3.37) ▼ (4.18) ▼
test-strict-equals-nonfastint 0.76 (3.38) ▼ (5.62) ▼
test-string-array-concat 6.66 (320.63) ▼ -
test-string-arridx 1.81 1.32 ▲ (2.00) ▼
test-string-charlen-ascii 1.42 (6.20) ▼ 0.99 ▲
test-string-charlen-nonascii 3.38 (9.84) ▼ 0.68 ▲
test-string-compare 2.63 - -
test-string-decodeuri 5.53 2.98 ▲ -
test-string-encodeuri 5.40 5.06 -
test-string-garbage 4.49 2.41 ▲ 2.55 ▲
test-string-intern-grow2 0.78 - -
test-string-intern-grow 5.10 - -
test-string-intern-grow-short2 4.29 - -
test-string-intern-grow-short 4.45 - -
test-string-intern-match 0.22 - -
test-string-intern-match-short 1.98 - -
test-string-intern-miss 0.39 - -
test-string-intern-miss-short 2.34 - -
test-string-number-list 0.72 (9.56) ▼ -
test-string-plain-concat 0.60 (1.26) ▼ (0.66) ⇓
test-string-scan-nonascii 4.96 (63.81) ▼ (19.89) ▼
test-string-uppercase 3.33 (6.19) ▼ -
test-textdecoder-ascii 4.03 - -
test-textdecoder-nonascii 3.56 - -
test-textencoder-ascii 6.87 - -
test-textencoder-nonascii 13.27 - -
test-try-catch-nothrow 4.34 3.08 ▲ 4.37
test-try-catch-throw 36.55 30.04 ▲ 20.73 ▲
test-try-finally-nothrow 5.18 2.90 ▲ 4.93
test-try-finally-throw 46.46 33.72 ▲ 26.64 ▲

Duktape microbenchmarks, pruned

Baseline is duk.O2.210, compared to duk.O2.220, i.e. improvement or regression from 2.1.x -> 2.2.x. Lower is better, lowest of 5 runs.

duk.O2.220 duk.O2.210 duk.O2.200 duk.O2.150 mujs jerry lua python
test-add-fastint 0.67 ⇑ 0.74 (0.86) ▼ (0.91) ▼ (4.37) ▼ (2.96) ▼ - -
test-add-float 0.71 0.69 (0.87) ▼ (0.91) ▼ (4.40) ▼ (4.14) ▼ - -
test-add-int 0.70 0.72 (0.86) ▼ (0.94) ▼ (4.47) ▼ (4.74) ▼ - -
test-add-nan-fastint (0.89) ▼ 0.76 (0.90) ▼ (0.99) ▼ (4.38) ▼ (3.49) ▼ - -
test-add-nan 0.70 0.70 (0.86) ▼ (0.91) ▼ (4.38) ▼ (4.15) ▼ - -
test-add-string 14.26 ▲ 16.86 (17.97) (18.83) ▼ 9.97 ▲ 13.22 ▲ - -
test-arith-add 2.72 ⇑ 2.95 (3.48) ▼ (3.74) ▼ (17.45) ▼ (16.58) ▼ - -
test-arith-add-string 1.40 ▲ 1.70 (1.82) ⇓ (1.88) ▼ 1.00 ▲ 1.31 ▲ - -
test-arith-div 7.69 7.92 (8.42) (9.29) ▼ (12.20) ▼ (21.04) ▼ - -
test-arith-mod 6.87 7.35 7.52 (8.76) ▼ (14.80) ▼ (25.42) ▼ - -
test-arith-mul 3.93 4.00 (4.30) ⇓ (5.13) ▼ (12.05) ▼ (16.42) ▼ - -
test-arith-sub 2.82 2.98 (3.54) ▼ (3.96) ▼ (12.21) ▼ (16.92) ▼ - -
test-array-append (0.53) 0.51 (0.69) ▼ (0.76) ▼ (48.00) ▼ - - -
test-array-cons-list 0.63 ▲ 0.72 (0.96) ▼ (2.60) ▼ (8.79) ▼ (2.22) ▼ - -
test-array-foreach 2.23 ▲ 2.63 (2.77) (3.00) ▼ (3.69) ▼ 1.66 ▲ - -
test-array-literal-100 2.61 ▲ 4.42 (6.46) ▼ (6.72) ▼ (446.78) ▼ 3.92 ▲ - -
test-array-literal-20 0.66 ▲ 1.11 (1.73) ▼ (1.98) ▼ (59.65) ▼ 0.91 ▲ - -
test-array-literal-3 0.26 ▲ 0.31 (0.50) ▼ (0.72) ▼ (6.15) ▼ 0.24 ▲ - -
test-array-pop 1.66 ▲ 2.06 (2.44) ▼ (7.94) ▼ (51.24) ▼ (7.07) ▼ 1.17 ▲ 1.19 ▲
test-array-push 2.02 ▲ 2.30 (2.70) ▼ (5.35) ▼ (8.52) ▼ (4.02) ▼ 1.03 ▲ 0.62 ▲
test-array-read 1.96 2.00 (2.30) ▼ (3.10) ▼ (236.50) ▼ (5.73) ▼ 1.11 ▲ (2.18) ⇓
test-array-read-lenloop 2.14 2.16 (2.43) ▼ (2.77) ▼ (123.30) ▼ (4.57) ▼ - -
test-array-sort 3.22 3.30 3.31 (3.51) - (4.26) ▼ - -
test-array-write 1.90 1.94 (2.24) ▼ (3.00) ▼ (255.16) ▼ (6.62) ▼ 1.38 ▲ (3.06) ▼
test-array-write-length 1.60 ▲ 1.80 (1.91) (3.01) ▼ (3.67) ▼ (2.71) ▼ - -
test-assign-add 4.17 4.20 (5.37) ▼ (6.04) ▼ (38.24) ▼ (25.02) ▼ 3.48 ▲ (16.02) ▼
test-assign-addto 4.18 4.19 (5.33) ▼ (6.08) ▼ (37.46) ▼ (30.29) ▼ 3.49 ▲ (17.09) ▼
test-assign-addto-nan (1.43) ▼ 1.21 (1.44) ▼ (1.64) ▼ (8.07) ▼ (6.44) ▼ - -
test-assign-boolean 5.14 5.14 5.18 5.22 (10.35) ▼ (20.94) ▼ - -
test-assign-const-int2 6.15 6.05 (8.40) ▼ (10.02) ▼ (10.61) ▼ (12.75) ▼ - -
test-assign-const-int 3.01 3.00 (4.20) ▼ 3.07 (10.53) ▼ (12.80) ▼ 2.53 ▲ (5.95) ▼
test-assign-const 4.18 ▲ 5.22 (5.70) ⇓ 4.43 ▲ (10.74) ▼ (18.82) ▼ 2.55 ▲ (5.97) ▼
test-assign-literal (4.42) 4.23 (5.40) ▼ (4.73) ▼ (10.89) ▼ (23.24) ▼ 2.74 ▲ (13.35) ▼
test-assign-proplhs-reg 2.68 ⇑ 2.91 (3.21) ▼ (4.06) ▼ 2.65 ⇑ (5.62) ▼ - -
test-assign-proprhs 2.85 3.04 (3.21) (4.29) ▼ 2.66 ▲ (3.98) ▼ - -
test-assign-reg 3.27 3.41 (4.80) ▼ 3.36 (9.68) ▼ (17.20) ▼ 2.52 ▲ (5.97) ▼
test-base64-decode 1.73 1.74 1.68 - - - - (8.71) ▼
test-base64-decode-whitespace 1.94 ▲ 2.20 2.10 - - - - (8.64) ▼
test-base64-encode 1.87 1.87 1.86 - - - - (20.67) ▼
test-bitwise-ops 1.90 ⇑ 2.05 (2.40) ▼ (2.50) ▼ (14.86) ▼ (21.80) ▼ - -
test-break-fast 1.23 ▲ 1.54 (1.82) ▼ (1.59) 1.31 ▲ 1.41 ⇑ - -
test-break-slow 7.44 ▲ 8.48 (9.45) ▼ (9.19) ⇓ 2.84 ▲ 4.60 ▲ - -
test-buffer-nodejs-read 2.39 2.52 (2.83) ▼ (2.88) ▼ - - - -
test-buffer-nodejs-write 3.12 3.28 (3.54) ⇓ (3.47) - - - -
test-buffer-object-read 2.41 2.52 (2.86) ▼ (2.90) ▼ - - - -
test-buffer-object-write 3.18 3.38 (3.55) 3.45 - - - -
test-buffer-plain-read 1.96 2.04 (2.37) ▼ (2.40) ▼ - - - -
test-buffer-plain-write 1.93 2.02 (2.30) ▼ (2.19) ⇓ - - - -
test-call-apply 2.37 ▲ 4.29 (4.72) ▼ (5.52) ▼ 2.52 ▲ 2.50 ▲ - -
test-call-basic-1 6.36 ▲ 7.52 (8.44) ▼ (9.69) ▼ 6.27 ▲ (9.65) ▼ 2.16 ▲ 5.60 ▲
test-call-basic-2 6.51 ▲ 7.56 (8.50) ▼ (9.62) ▼ 4.60 ▲ (8.83) ▼ - -
test-call-basic-3 8.34 ▲ 9.65 (10.67) ▼ (15.86) ▼ (12.96) ▼ (15.18) ▼ - -
test-call-basic-4 17.56 ⇑ 19.46 (21.38) ⇓ (38.86) ▼ (42.82) ▼ (40.11) ▼ - -
test-call-bound-deep 2.98 ▲ 27.79 (30.35) ⇓ (33.85) ▼ - 4.45 ▲ - -
test-call-bound 2.84 ▲ 5.53 (6.87) ▼ (7.64) ▼ - 2.02 ▲ - -
test-call-call 2.13 ▲ 3.13 (3.59) ▼ (4.22) ▼ 1.57 ▲ 1.73 ▲ - -
test-call-native 11.31 ▲ 12.90 (13.89) ⇓ (14.66) ▼ (16.99) ▼ 8.60 ▲ - -
test-call-prop 3.92 ▲ 4.43 (4.90) ▼ (6.06) ▼ 3.16 ▲ (4.69) - -
test-call-proxy-apply-1 26.93 - - - - - - -
test-call-proxy-pass-1 13.81 - - - - - - -
test-call-reg 2.54 ▲ 3.00 (3.38) ▼ (3.85) ▼ 2.48 ▲ (3.84) ▼ - -
test-call-reg-new 4.92 ▲ 5.96 (6.98) ▼ (7.23) ▼ 3.00 ▲ 3.38 ▲ - -
test-call-tail-1 1.04 ▲ 1.34 (1.67) ▼ (2.40) ▼ - (1.82) ▼ - -
test-call-tail-2 1.16 ▲ 2.46 (2.80) ▼ (3.52) ▼ - 1.99 ▲ - -
test-call-var 5.50 ▲ 6.17 (8.67) ▼ (8.74) ▼ 4.87 ▲ 4.33 ▲ - -
test-closure-inner-functions 1.27 1.33 (1.82) ▼ (2.59) ▼ 0.70 ▲ 0.26 ▲ - -
test-compile-mandel 13.12 13.44 (14.50) ⇓ (17.05) ▼ 6.45 ▲ 2.40 ▲ - -
test-compile-mandel-nofrac 10.06 10.31 (11.52) ▼ (14.02) ▼ 6.46 ▲ 2.40 ▲ - -
test-compile-short 5.67 5.84 (7.04) ▼ (9.73) ▼ 2.32 ▲ 0.97 ▲ - -
test-compile-string-ascii (7.93) ▼ 7.01 6.99 (9.82) ▼ 6.89 - - -
test-continue-fast 1.55 ▲ 2.06 (2.25) ⇓ 2.06 (2.16) (2.60) ▼ - -
test-continue-slow 7.74 ▲ 8.78 (10.00) ▼ (9.26) 3.66 ▲ 6.56 ▲ - -
test-empty-loop 1.78 1.84 (2.42) ▼ (2.38) ▼ (6.40) ▼ (3.59) ▼ 1.17 ▲ (5.14) ▼
test-empty-loop-slowpath 0.97 ▲ 1.10 (1.81) ▼ (2.39) ▼ 1.08 0.71 ▲ - -
test-empty-loop-step3 1.82 1.93 (2.49) ▼ (2.49) ▼ (8.05) ▼ (7.07) ▼ - -
test-enum-basic 3.26 3.35 (4.34) ▼ (4.95) ▼ 0.71 ▲ 1.16 ▲ - -
test-equals-fastint 0.57 ▲ 0.65 (0.71) ⇓ (1.23) ▼ (2.58) ▼ (3.36) ▼ - -
test-equals-nonfastint 0.64 0.66 (0.76) ▼ (1.34) ▼ (2.58) ▼ (4.75) ▼ - -
test-error-create 1.60 1.72 (2.37) ▼ (3.72) ▼ (5.09) ▼ 0.86 ▲ - -
test-fib-2 3.20 ▲ 3.67 (4.08) ▼ (4.70) ▼ 3.68 (5.95) ▼ - -
test-fib 5.90 ⇑ 6.49 (8.36) ▼ (8.62) ▼ 3.62 ▲ 5.75 ▲ 1.44 ▲ 2.90 ▲
test-func-bind 2.18 ▲ 3.26 (4.14) ▼ (4.27) ▼ - 1.01 ▲ - -
test-global-lookup 6.16 ▲ 6.89 (9.00) ▼ (11.81) ▼ 4.53 ▲ 2.75 ▲ - -
test-hello-world 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
test-hex-decode 4.01 4.01 4.01 4.01 - - - (13.28) ▼
test-hex-encode 3.21 3.21 3.22 - - - - 1.62 ▲
test-jc-serialize-indented 3.17 ▲ 3.84 3.62 3.93 - - - -
test-jc-serialize 2.15 ⇑ 2.38 (2.50) (2.76) ▼ - - - -
test-json-parse-hex 3.47 3.52 3.51 - - - - -
test-json-parse-integer 2.90 2.96 (4.10) ▼ (4.35) ▼ (23.51) ▼ - - 0.09 ▲
test-json-parse-number 5.09 5.23 5.13 5.30 2.70 ▲ - - 0.40 ▲
test-json-parse-string 5.23 5.21 (5.75) ▼ (5.46) (51.66) ▼ - - -
test-json-serialize-fastpath-loop 3.32 ⇑ 3.60 (4.02) ▼ (4.00) ▼ (13.44) ▼ (581.44) ▼ - -
test-json-serialize-forceslow 9.51 9.80 9.90 (12.04) ▼ 2.40 ▲ 9.14 - -
test-json-serialize-hex 1.54 1.54 1.57 - - - - -
test-json-serialize-indented-deep100 1.38 1.44 (1.95) ▼ (2.70) ▼ (1.60) ▼ (149.64) ▼ - -
test-json-serialize-indented-deep25 3.17 ▲ 3.60 3.62 (3.84) (11.84) ▼ (280.97) ▼ - -
test-json-serialize-indented-deep500 0.94 0.94 (1.34) ▼ (1.64) ▼ - - - -
test-json-serialize-indented 5.57 ⇑ 6.12 (6.51) (7.06) ▼ (16.33) ▼ (108.33) ▼ - -
test-json-serialize 6.40 6.49 6.38 (6.69) 2.37 ▲ (9.06) ▼ - 0.65 ▲
test-json-serialize-jsonrpc-message 3.11 3.28 3.33 3.32 - - - -
test-json-serialize-nofrac 0.62 0.66 (0.68) (0.78) ▼ (1.74) ▼ (7.26) ▼ - -
test-json-serialize-plainbuf 2.55 2.52 (31.25) ▼ 0.07 ▲ - - - -
test-json-serialize-slowpath-loop 3.42 ⇑ 3.76 (4.63) ▼ (6.54) ▼ - (11.18) ▼ - -
test-json-string-bench 2.80 ▲ 3.19 (3.76) ▼ (5.54) ▼ (53.98) ▼ - - -
test-json-string-stringify 10.05 10.15 10.10 10.40 (11.67) ▼ - - 0.54 ▲
test-jx-serialize-bufobj-forceslow 4.11 ⇑ 4.48 (5.13) ▼ (6.26) ▼ - - - -
test-jx-serialize-bufobj 1.52 ⇑ 1.67 1.72 (1.82) ⇓ - - - -
test-jx-serialize-indented 3.04 ▲ 3.48 3.54 (3.86) ▼ - - - -
test-jx-serialize 2.08 ⇑ 2.24 (2.38) (2.63) ▼ - - - -
test-mandel 2.94 3.15 (3.74) ▼ (4.38) ▼ (15.22) ▼ (14.56) ▼ 1.96 ▲ -
test-math-clz32 2.21 - - - - - - -
test-misc-1dcell 3.70 3.93 (4.29) ⇓ (4.86) ▼ (127.98) ▼ (8.58) ▼ - -
test-object-garbage-2 2.61 ▲ 3.63 (5.38) ▼ (5.43) ▼ (54.54) ▼ 3.31 ⇑ - -
test-object-garbage (4.05) ▼ 3.33 (5.17) ▼ (5.47) ▼ 2.68 ▲ 2.78 ▲ (4.18) ▼ 0.86 ▲
test-object-literal-100 7.10 ▲ 13.97 (22.64) ▼ (20.43) ▼ (30.28) ▼ 12.54 ▲ - -
test-object-literal-20 1.62 ▲ 2.51 (3.24) ▼ (2.82) ▼ (4.30) ▼ 2.27 ⇑ - -
test-object-literal-3 0.36 ▲ 0.42 (0.61) ▼ (0.57) ▼ (0.52) ▼ 0.39 ⇑ - -
test-prop-read-1024 3.31 ⇑ 3.61 (3.97) ⇓ (5.17) ▼ (6.82) ▼ (4.46) ▼ - -
test-prop-read-16 3.32 ⇑ 3.65 (4.07) ▼ (5.48) ▼ (4.48) ▼ (4.43) ▼ - -
test-prop-read-256 3.27 ⇑ 3.62 (4.38) ▼ (5.37) ▼ (8.29) ▼ (4.43) ▼ - -
test-prop-read-32 3.32 ⇑ 3.63 (3.98) ⇓ (5.19) ▼ (5.62) ▼ (4.44) ▼ - -
test-prop-read-48 3.34 ⇑ 3.63 (3.98) ⇓ (5.27) ▼ (6.52) ▼ (4.42) ▼ - -
test-prop-read-4 3.43 3.52 3.58 (4.77) ▼ (4.00) ▼ (4.42) ▼ - -
test-prop-read-64 3.31 ⇑ 3.62 (4.00) ▼ (5.34) ▼ (6.52) ▼ (4.34) ▼ - -
test-prop-read-8 3.32 ⇑ 3.62 3.70 (4.98) ▼ (4.93) ▼ (4.43) ▼ - -
test-prop-read-inherited 4.76 ⇑ 5.18 5.11 (6.60) ▼ 4.75 ⇑ (9.40) ▼ - -
test-prop-read 3.44 ⇑ 3.70 3.60 (4.79) ▼ (3.96) ⇓ (4.43) ▼ 1.11 ▲ 2.58 ▲
test-prop-write-1024 3.14 3.30 (4.69) ▼ (4.97) ▼ (10.39) ▼ (5.26) ▼ - -
test-prop-write-16 3.20 3.36 (4.13) ▼ (5.05) ▼ (4.46) ▼ (5.27) ▼ - -
test-prop-write-256 3.14 3.30 (4.06) ▼ (4.96) ▼ (8.21) ▼ (5.32) ▼ - -
test-prop-write-32 3.18 ⇑ 3.46 (4.02) ▼ (5.09) ▼ (5.52) ▼ (5.32) ▼ - -
test-prop-write-48 3.22 3.34 (4.04) ▼ (4.98) ▼ (6.57) ▼ (5.29) ▼ - -
test-prop-write-4 3.20 ⇑ 3.45 (3.69) (4.38) ▼ (3.93) ▼ (5.30) ▼ - -
test-prop-write-64 3.21 3.30 (4.09) ▼ (5.60) ▼ (6.55) ▼ (5.32) ▼ - -
test-prop-write-8 3.16 3.30 (3.84) ▼ (4.52) ▼ (4.92) ▼ (5.26) ▼ - -
test-prop-write 3.25 ▲ 3.62 (3.83) (4.46) ▼ (3.95) ⇓ (5.28) ▼ 1.41 ▲ 2.71 ▲
test-proxy-get 1.62 ▲ 2.00 (2.17) ⇓ (2.56) ▼ - - - -
test-random 1.61 ▲ 2.25 (2.50) ▼ (6.86) ▼ 1.14 ▲ 2.14 - -
test-reflect-ownkeys-sorted 1.11 1.12 (1.37) ▼ - - - - -
test-reflect-ownkeys-unsorted 1.12 1.14 (1.37) ▼ - - - - -
test-regexp-case-insensitive-compile 0.71 ▲ 28.40 27.70 25.66 ⇑ 0.00 ▲ 0.00 ▲ - -
test-regexp-case-insensitive-execute 1.69 ▲ 2.07 2.05 1.89 ⇑ (46.32) ▼ 0.12 ▲ - -
test-regexp-case-sensitive-compile 1.82 1.91 (2.25) ▼ (2.79) ▼ 0.90 ▲ 0.66 ▲ - -
test-regexp-case-sensitive-execute 1.59 1.64 (1.96) ▼ (2.55) ▼ 0.65 ▲ 1.60 - -
test-regexp-compile 2.45 2.56 (2.92) ▼ (3.67) ▼ 2.02 ▲ 0.57 ▲ - -
test-regexp-execute 1.81 1.91 (2.20) ▼ (2.81) ▼ (2.30) ▼ 1.54 ▲ - -
test-regexp-string-parse 8.08 8.08 8.25 (13.23) ▼ - - - 0.75 ▲
test-reg-readwrite-object 4.54 4.60 (5.24) ▼ 4.70 (10.75) ▼ (18.71) ▼ 2.31 ▲ -
test-reg-readwrite-plain 2.87 3.08 (4.37) ▼ 3.05 (10.85) ▼ (14.85) ▼ 2.32 ▲ (7.01) ▼
test-strict-equals-fastint 0.70 ▲ 0.80 (0.89) ▼ (1.56) ▼ (3.37) ▼ (4.18) ▼ - -
test-strict-equals-nonfastint 0.76 ▲ 0.85 (0.96) ▼ (1.67) ▼ (3.38) ▼ (5.62) ▼ - -
test-string-array-concat 6.66 6.70 (7.74) ▼ (8.38) ▼ (320.63) ▼ - 2.72 ▲ 4.48 ▲
test-string-arridx 1.81 ▲ 2.15 (2.30) (2.44) ▼ 1.32 ▲ 2.00 - -
test-string-charlen-ascii 1.42 1.44 (1.51) (1.69) ▼ (6.20) ▼ 0.99 ▲ - -
test-string-charlen-nonascii 3.38 3.34 3.32 (3.53) (9.84) ▼ 0.68 ▲ - -
test-string-compare 2.63 ▲ 3.13 (3.30) (5.10) ▼ - - (6.24) ▼ (12.66) ▼
test-string-decodeuri 5.53 5.74 5.59 5.33 ⇑ 2.98 ▲ - - -
test-string-encodeuri 5.40 ▲ 6.08 6.26 5.76 5.06 ▲ - - -
test-string-garbage 4.49 ▲ 5.16 (6.46) ▼ (7.31) ▼ 2.41 ▲ 2.55 ▲ 2.14 ▲ 2.31 ▲
test-string-intern-grow2 0.78 0.80 (2.28) ▼ (2.29) ▼ - - - -
test-string-intern-grow 5.10 5.14 (26.30) ▼ (25.72) ▼ - - - -
test-string-intern-grow-short2 4.29 ⇑ 4.73 (6.30) ▼ (6.73) ▼ - - - -
test-string-intern-grow-short 4.45 ⇑ 4.84 (15.58) ▼ (15.78) ▼ - - - -
test-string-intern-match 0.22 ▲ 0.26 (0.31) ▼ (0.32) ▼ - - - -
test-string-intern-match-short 1.98 ▲ 2.28 (3.42) ▼ (3.37) ▼ - - - -
test-string-intern-miss 0.39 0.41 (1.46) ▼ (1.48) ▼ - - - -
test-string-intern-miss-short 2.34 ▲ 2.66 (4.22) ▼ (4.40) ▼ - - - -
test-string-number-list 0.72 ▲ 0.82 (1.39) ▼ (1.92) ▼ (9.56) ▼ - - -
test-string-plain-concat (0.60) ⇓ 0.56 (1.12) ▼ (1.29) ▼ (1.26) ▼ (0.66) ▼ (0.76) ▼ 0.00 ▲
test-string-scan-nonascii 4.96 5.29 4.96 5.41 (63.81) ▼ (19.89) ▼ - -
test-string-uppercase 3.33 3.52 3.55 3.58 (6.19) ▼ - - 1.68 ▲
test-textdecoder-ascii (4.03) ▼ 3.41 3.12 ⇑ - - - - -
test-textdecoder-nonascii 3.56 3.48 (4.26) ▼ - - - - -
test-textencoder-ascii 6.87 6.98 6.92 - - - - -
test-textencoder-nonascii 13.27 ⇑ 14.28 (15.00) - - - - -
test-try-catch-nothrow (4.34) 4.20 4.27 3.74 ▲ 3.08 ▲ (4.37) - -
test-try-catch-throw 36.55 38.93 (54.91) ▼ (56.57) ▼ 30.04 ▲ 20.73 ▲ - -
test-try-finally-nothrow 5.18 5.10 5.18 4.87 2.90 ▲ 4.93 - -
test-try-finally-throw 46.46 ▲ 62.60 (73.86) ▼ (75.10) ▼ 33.72 ▲ 26.64 ▲ - -

Duktape microbenchmarks, full

Baseline is duk.O2.210, compared to duk.O2.220. Lower is better, lowest of 5 runs.

duk-perf-pgo.O2.220 duk-pgo.O2.220 duk-perf.O2.220 duk.O2.220 duk.O2.210 duk.O2.200 duk.O2.150 mujs jerry lua python perl ruby luajit rhino nodejs
test-add-fastint 0.49 ▲ 0.59 ▲ 0.65 ▲ 0.67 ⇑ 0.74 (0.86) ▼ (0.91) ▼ (4.37) ▼ (2.96) ▼ - - - - - 0.36 ▲ 0.04 ▲
test-add-float 0.56 ▲ 0.65 0.60 ▲ 0.71 0.69 (0.87) ▼ (0.91) ▼ (4.40) ▼ (4.14) ▼ - - - - - 0.34 ▲ 0.04 ▲
test-add-int 0.53 ▲ 0.59 ▲ 0.66 ⇑ 0.70 0.72 (0.86) ▼ (0.94) ▼ (4.47) ▼ (4.74) ▼ - - - - - 0.34 ▲ 0.06 ▲
test-add-nan-fastint 0.67 ▲ (0.79) 0.71 (0.89) ▼ 0.76 (0.90) ▼ (0.99) ▼ (4.38) ▼ (3.49) ▼ - - - - - 0.33 ▲ 0.05 ▲
test-add-nan 0.55 ▲ 0.64 ⇑ 0.60 ▲ 0.70 0.70 (0.86) ▼ (0.91) ▼ (4.38) ▼ (4.15) ▼ - - - - - 0.34 ▲ 0.05 ▲
test-add-string 13.89 ▲ 13.76 ▲ 13.93 ▲ 14.26 ▲ 16.86 (17.97) (18.83) ▼ 9.97 ▲ 13.22 ▲ - - - - - 0.36 ▲ 0.05 ▲
test-arith-add 1.96 ▲ 2.36 ▲ 2.62 ▲ 2.72 ⇑ 2.95 (3.48) ▼ (3.74) ▼ (17.45) ▼ (16.58) ▼ - - - - - 0.50 ▲ 0.05 ▲
test-arith-add-string 1.37 ▲ 1.38 ▲ 1.37 ▲ 1.40 ▲ 1.70 (1.82) ⇓ (1.88) ▼ 1.00 ▲ 1.31 ▲ - - - - - 0.58 ▲ 0.04 ▲
test-arith-div 6.93 ▲ 8.12 7.61 7.69 7.92 (8.42) (9.29) ▼ (12.20) ▼ (21.04) ▼ - - - - - 0.57 ▲ 0.05 ▲
test-arith-mod 6.95 7.22 6.32 ▲ 6.87 7.35 7.52 (8.76) ▼ (14.80) ▼ (25.42) ▼ - - - - - 5.39 ▲ 0.06 ▲
test-arith-mul 3.80 (4.16) 3.42 ▲ 3.93 4.00 (4.30) ⇓ (5.13) ▼ (12.05) ▼ (16.42) ▼ - - - - - 0.54 ▲ 0.05 ▲
test-arith-sub 1.86 ▲ 2.24 ▲ 2.62 ▲ 2.82 2.98 (3.54) ▼ (3.96) ▼ (12.21) ▼ (16.92) ▼ - - - - - 0.53 ▲ 0.06 ▲
test-array-append 0.44 ▲ 0.48 0.52 (0.53) 0.51 (0.69) ▼ (0.76) ▼ (48.00) ▼ - - - - - - (0.62) ▼ 0.09 ▲
test-array-cons-list 0.55 ▲ 0.57 ▲ 0.59 ▲ 0.63 ▲ 0.72 (0.96) ▼ (2.60) ▼ (8.79) ▼ (2.22) ▼ - - - - - 0.40 ▲ 0.08 ▲
test-array-foreach 2.16 ▲ 2.29 ▲ 2.04 ▲ 2.23 ▲ 2.63 (2.77) (3.00) ▼ (3.69) ▼ 1.66 ▲ - - - - - 0.84 ▲ 0.32 ▲
test-array-literal-100 2.56 ▲ 2.76 ▲ 2.60 ▲ 2.61 ▲ 4.42 (6.46) ▼ (6.72) ▼ (446.78) ▼ 3.92 ▲ - - - - - 0.46 ▲ 0.08 ▲
test-array-literal-20 0.65 ▲ 0.69 ▲ 0.68 ▲ 0.66 ▲ 1.11 (1.73) ▼ (1.98) ▼ (59.65) ▼ 0.91 ▲ - - - - - 0.35 ▲ 0.04 ▲
test-array-literal-3 0.26 ▲ 0.26 ▲ 0.25 ▲ 0.26 ▲ 0.31 (0.50) ▼ (0.72) ▼ (6.15) ▼ 0.24 ▲ - - - - - (0.33) 0.04 ▲
test-array-pop 1.18 ▲ 1.34 ▲ 1.55 ▲ 1.66 ▲ 2.06 (2.44) ▼ (7.94) ▼ (51.24) ▼ (7.07) ▼ 1.17 ▲ 1.19 ▲ - - 0.30 ▲ 0.76 ▲ 0.06 ▲
test-array-push 1.61 ▲ 1.71 ▲ 1.92 ▲ 2.02 ▲ 2.30 (2.70) ▼ (5.35) ▼ (8.52) ▼ (4.02) ▼ 1.03 ▲ 0.62 ▲ - - 0.34 ▲ 0.86 ▲ 0.10 ▲
test-array-read 1.76 ▲ 1.92 1.84 ⇑ 1.96 2.00 (2.30) ▼ (3.10) ▼ (236.50) ▼ (5.73) ▼ 1.11 ▲ (2.18) ⇓ (3.48) ▼ 1.68 ▲ 0.00 ▲ 0.39 ▲ 0.04 ▲
test-array-read-lenloop 1.51 ▲ 1.71 ▲ 2.04 2.14 2.16 (2.43) ▼ (2.77) ▼ (123.30) ▼ (4.57) ▼ - - - - - 0.96 ▲ 0.06 ▲
test-array-sort (3.61) ⇓ (3.53) 3.32 3.22 3.30 3.31 (3.51) - (4.26) ▼ - - - - - 1.61 ▲ 0.12 ▲
test-array-write 1.64 ▲ 1.82 1.88 1.90 1.94 (2.24) ▼ (3.00) ▼ (255.16) ▼ (6.62) ▼ 1.38 ▲ (3.06) ▼ (3.56) ▼ (2.34) ▼ 0.00 ▲ 0.56 ▲ 0.07 ▲
test-array-write-length 1.34 ▲ 1.38 ▲ 1.63 ⇑ 1.60 ▲ 1.80 (1.91) (3.01) ▼ (3.67) ▼ (2.71) ▼ - - - - - 1.13 ▲ 1.53 ▲
test-assign-add 3.60 ▲ 4.12 3.85 ⇑ 4.17 4.20 (5.37) ▼ (6.04) ▼ (38.24) ▼ (25.02) ▼ 3.48 ▲ (16.02) ▼ (25.70) ▼ (9.59) ▼ 0.00 ▲ 3.49 ▲ 0.04 ▲
test-assign-addto 3.63 ▲ 4.14 3.88 ⇑ 4.18 4.19 (5.33) ▼ (6.08) ▼ (37.46) ▼ (30.29) ▼ 3.49 ▲ (17.09) ▼ (24.98) ▼ (9.58) ▼ 1.00 ▲ 3.88 ⇑ 0.90 ▲
test-assign-addto-nan 1.10 ⇑ 1.21 1.15 (1.43) ▼ 1.21 (1.44) ▼ (1.64) ▼ (8.07) ▼ (6.44) ▼ - - - - - 0.39 ▲ 0.30 ▲
test-assign-boolean 5.10 5.13 5.10 5.14 5.14 5.18 5.22 (10.35) ▼ (20.94) ▼ - - - - - 0.36 ▲ 0.05 ▲
test-assign-const-int2 4.65 ▲ (6.32) 5.60 ⇑ 6.15 6.05 (8.40) ▼ (10.02) ▼ (10.61) ▼ (12.75) ▼ - - - - - 0.36 ▲ 0.05 ▲
test-assign-const-int 2.27 ▲ 2.70 ⇑ 2.92 3.01 3.00 (4.20) ▼ 3.07 (10.53) ▼ (12.80) ▼ 2.53 ▲ (5.95) ▼ (25.04) ▼ (4.87) ▼ 0.00 ▲ 0.40 ▲ 0.04 ▲
test-assign-const 3.53 ▲ 4.48 ▲ 4.00 ▲ 4.18 ▲ 5.22 (5.70) ⇓ 4.43 ▲ (10.74) ▼ (18.82) ▼ 2.55 ▲ (5.97) ▼ (25.72) ▼ 4.86 0.00 ▲ 0.36 ▲ 0.04 ▲
test-assign-literal 3.88 ⇑ (4.54) ⇓ 3.82 ⇑ (4.42) 4.23 (5.40) ▼ (4.73) ▼ (10.89) ▼ (23.24) ▼ 2.74 ▲ (13.35) ▼ - (4.79) ▼ 0.00 ▲ 0.35 ▲ 0.04 ▲
test-assign-proplhs-reg 2.49 ▲ 2.51 ▲ 2.64 ⇑ 2.68 ⇑ 2.91 (3.21) ▼ (4.06) ▼ 2.65 ⇑ (5.62) ▼ - - - - - 2.04 ▲ 0.07 ▲
test-assign-proprhs 2.01 ▲ 2.07 ▲ 2.81 ⇑ 2.85 3.04 (3.21) (4.29) ▼ 2.66 ▲ (3.98) ▼ - - - - - 1.11 ▲ 0.04 ▲
test-assign-reg 2.56 ▲ 3.03 ▲ 3.20 3.27 3.41 (4.80) ▼ 3.36 (9.68) ▼ (17.20) ▼ 2.52 ▲ (5.97) ▼ (25.75) ▼ (5.18) ▼ 0.00 ▲ 0.33 ▲ 0.04 ▲
test-base64-decode 1.74 1.73 1.73 1.73 1.74 1.68 - - - - (8.71) ▼ - - - - -
test-base64-decode-whitespace 2.21 2.26 2.22 1.94 ▲ 2.20 2.10 - - - - (8.64) ▼ - - - - -
test-base64-encode (2.07) ▼ (2.08) ▼ 1.86 1.87 1.87 1.86 - - - - (20.67) ▼ - - - - -
test-bitwise-ops 1.58 ▲ 1.88 ⇑ 1.69 ▲ 1.90 ⇑ 2.05 (2.40) ▼ (2.50) ▼ (14.86) ▼ (21.80) ▼ - - - - - (33.44) ▼ 0.04 ▲
test-break-fast 0.84 ▲ 1.14 ▲ 1.12 ▲ 1.23 ▲ 1.54 (1.82) ▼ (1.59) 1.31 ▲ 1.41 ⇑ - - - - - 0.35 ▲ 0.06 ▲
test-break-slow 6.38 ▲ 7.19 ▲ 6.62 ▲ 7.44 ▲ 8.48 (9.45) ▼ (9.19) ⇓ 2.84 ▲ 4.60 ▲ - - - - - 0.30 ▲ 0.38 ▲
test-buffer-nodejs-read 2.36 (2.60) 2.34 ⇑ 2.39 2.52 (2.83) ▼ (2.88) ▼ - - - - - - - - 0.04 ▲
test-buffer-nodejs-write (3.80) ▼ (4.08) ▼ 3.10 3.12 3.28 (3.54) ⇓ (3.47) - - - - - - - - 0.08 ▲
test-buffer-object-read 2.34 ⇑ (2.64) 2.36 2.41 2.52 (2.86) ▼ (2.90) ▼ - - - - - - - - 0.04 ▲
test-buffer-object-write (3.82) ▼ (4.16) ▼ 3.13 ⇑ 3.18 3.38 (3.55) 3.45 - - - - - - - - 0.07 ▲
test-buffer-plain-read 1.84 ⇑ 2.04 1.92 1.96 2.04 (2.37) ▼ (2.40) ▼ - - - - - - - - -
test-buffer-plain-write 1.70 ▲ 1.87 ⇑ 1.89 1.93 2.02 (2.30) ▼ (2.19) ⇓ - - - - - - - - -
test-call-apply 1.74 ▲ 1.76 ▲ 2.23 ▲ 2.37 ▲ 4.29 (4.72) ▼ (5.52) ▼ 2.52 ▲ 2.50 ▲ - - - - - 2.18 ▲ 0.35 ▲
test-call-basic-1 4.49 ▲ 4.70 ▲ 6.11 ▲ 6.36 ▲ 7.52 (8.44) ▼ (9.69) ▼ 6.27 ▲ (9.65) ▼ 2.16 ▲ 5.60 ▲ (8.24) ⇓ 2.47 ▲ 0.00 ▲ 1.51 ▲ 0.04 ▲
test-call-basic-2 4.48 ▲ 4.73 ▲ 6.18 ▲ 6.51 ▲ 7.56 (8.50) ▼ (9.62) ▼ 4.60 ▲ (8.83) ▼ - - - - - 1.82 ▲ 0.03 ▲
test-call-basic-3 6.31 ▲ 6.88 ▲ 7.95 ▲ 8.34 ▲ 9.65 (10.67) ▼ (15.86) ▼ (12.96) ▼ (15.18) ▼ - - - - - 1.87 ▲ 0.27 ▲
test-call-basic-4 15.81 ▲ 15.19 ▲ 16.45 ▲ 17.56 ⇑ 19.46 (21.38) ⇓ (38.86) ▼ (42.82) ▼ (40.11) ▼ - - - - - 1.76 ▲ 0.63 ▲
test-call-bound-deep 2.64 ▲ 2.74 ▲ 2.93 ▲ 2.98 ▲ 27.79 (30.35) ⇓ (33.85) ▼ - 4.45 ▲ - - - - - 4.31 ▲ -
test-call-bound 2.58 ▲ 2.62 ▲ 2.76 ▲ 2.84 ▲ 5.53 (6.87) ▼ (7.64) ▼ - 2.02 ▲ - - - - - 1.44 ▲ -
test-call-call 1.55 ▲ 1.52 ▲ 1.94 ▲ 2.13 ▲ 3.13 (3.59) ▼ (4.22) ▼ 1.57 ▲ 1.73 ▲ - - - - - 2.02 ▲ 0.10 ▲
test-call-native 10.57 ▲ 11.23 ▲ 10.24 ▲ 11.31 ▲ 12.90 (13.89) ⇓ (14.66) ▼ (16.99) ▼ 8.60 ▲ - - - - - 1.65 ▲ 1.54 ▲
test-call-prop 2.54 ▲ 2.64 ▲ 3.74 ▲ 3.92 ▲ 4.43 (4.90) ▼ (6.06) ▼ 3.16 ▲ (4.69) - - - - - 1.39 ▲ 0.26 ▲
test-call-proxy-apply-1 23.88 25.42 26.41 26.93 - - - - - - - - - - - -
test-call-proxy-pass-1 9.41 10.24 13.04 13.81 - - - - - - - - - - - -
test-call-reg 1.79 ▲ 1.86 ▲ 2.44 ▲ 2.54 ▲ 3.00 (3.38) ▼ (3.85) ▼ 2.48 ▲ (3.84) ▼ - - - - - 0.99 ▲ 0.04 ▲
test-call-reg-new 4.25 ▲ 4.39 ▲ 4.74 ▲ 4.92 ▲ 5.96 (6.98) ▼ (7.23) ▼ 3.00 ▲ 3.38 ▲ - - - - - 1.55 ▲ 0.13 ▲
test-call-tail-1 1.25 0.77 ▲ 0.92 ▲ 1.04 ▲ 1.34 (1.67) ▼ (2.40) ▼ - (1.82) ▼ - - - - - 0.66 ▲ 0.08 ▲
test-call-tail-2 1.36 ▲ 0.92 ▲ 1.01 ▲ 1.16 ▲ 2.46 (2.80) ▼ (3.52) ▼ - 1.99 ▲ - - - - - 0.86 ▲ 0.18 ▲
test-call-var 3.08 ▲ 3.16 ▲ 5.35 ▲ 5.50 ▲ 6.17 (8.67) ▼ (8.74) ▼ 4.87 ▲ 4.33 ▲ - - - - - 1.05 ▲ 0.04 ▲
test-closure-inner-functions 1.10 ▲ 1.21 ⇑ 1.17 ▲ 1.27 1.33 (1.82) ▼ (2.59) ▼ 0.70 ▲ 0.26 ▲ - - - - - 1.20 ⇑ 0.03 ▲
test-compile-mandel 13.31 13.34 13.11 13.12 13.44 (14.50) ⇓ (17.05) ▼ 6.45 ▲ 2.40 ▲ - - - - - 9.13 ▲ 0.05 ▲
test-compile-mandel-nofrac 10.29 10.33 10.06 10.06 10.31 (11.52) ▼ (14.02) ▼ 6.46 ▲ 2.40 ▲ - - - - - 8.86 ▲ 0.10 ▲
test-compile-short 5.19 ▲ 5.69 5.30 ⇑ 5.67 5.84 (7.04) ▼ (9.73) ▼ 2.32 ▲ 0.97 ▲ - - - - - 4.21 ▲ 0.21 ▲
test-compile-string-ascii 7.05 7.02 (7.81) ▼ (7.93) ▼ 7.01 6.99 (9.82) ▼ 6.89 - - - - - - (7.34) 0.04 ▲
test-continue-fast 1.46 ▲ 1.58 ▲ 1.86 ⇑ 1.55 ▲ 2.06 (2.25) ⇓ 2.06 (2.16) (2.60) ▼ - - - - - 0.40 ▲ 0.04 ▲
test-continue-slow 6.98 ▲ 7.36 ▲ 7.34 ▲ 7.74 ▲ 8.78 (10.00) ▼ (9.26) 3.66 ▲ 6.56 ▲ - - - - - 0.39 ▲ 0.45 ▲
test-empty-loop 1.28 ▲ 1.51 ▲ (1.98) ⇓ 1.78 1.84 (2.42) ▼ (2.38) ▼ (6.40) ▼ (3.59) ▼ 1.17 ▲ (5.14) ▼ (3.66) ▼ (4.26) ▼ 0.14 ▲ 0.65 ▲ 0.09 ▲
test-empty-loop-slowpath 0.80 ▲ 0.89 ▲ 0.92 ▲ 0.97 ▲ 1.10 (1.81) ▼ (2.39) ▼ 1.08 0.71 ▲ - - - - - 0.62 ▲ 0.06 ▲
test-empty-loop-step3 1.36 ▲ 1.56 ▲ (2.00) 1.82 1.93 (2.49) ▼ (2.49) ▼ (8.05) ▼ (7.07) ▼ - - - - - 0.62 ▲ 0.11 ▲
test-enum-basic 2.96 ▲ 3.13 3.26 3.26 3.35 (4.34) ▼ (4.95) ▼ 0.71 ▲ 1.16 ▲ - - - - - 1.49 ▲ (5.64) ▼
test-equals-fastint 0.55 ▲ 0.56 ▲ 0.57 ▲ 0.57 ▲ 0.65 (0.71) ⇓ (1.23) ▼ (2.58) ▼ (3.36) ▼ - - - - - (0.92) ▼ 0.04 ▲
test-equals-nonfastint 0.66 (0.71) ⇓ 0.57 ▲ 0.64 0.66 (0.76) ▼ (1.34) ▼ (2.58) ▼ (4.75) ▼ - - - - - (0.87) ▼ 0.06 ▲
test-error-create 1.11 ▲ 1.16 ▲ 1.50 ▲ 1.60 1.72 (2.37) ▼ (3.72) ▼ (5.09) ▼ 0.86 ▲ - - - - - 1.06 ▲ (3.58) ▼
test-fib-2 2.02 ▲ 2.27 ▲ 3.18 ▲ 3.20 ▲ 3.67 (4.08) ▼ (4.70) ▼ 3.68 (5.95) ▼ - - - - - 0.74 ▲ 0.18 ▲
test-fib 2.70 ▲ 3.04 ▲ 5.60 ▲ 5.90 ⇑ 6.49 (8.36) ▼ (8.62) ▼ 3.62 ▲ 5.75 ▲ 1.44 ▲ 2.90 ▲ (7.43) ▼ 1.28 ▲ 0.30 ▲ 1.03 ▲ 0.17 ▲
test-func-bind 2.07 ▲ 2.15 ▲ 2.15 ▲ 2.18 ▲ 3.26 (4.14) ▼ (4.27) ▼ - 1.01 ▲ - - - - - 2.12 ▲ 2.63 ▲
test-global-lookup 4.47 ▲ 4.46 ▲ 6.09 ▲ 6.16 ▲ 6.89 (9.00) ▼ (11.81) ▼ 4.53 ▲ 2.75 ▲ - - - - - 1.28 ▲ 0.05 ▲
test-hello-world 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.02 0.00 0.24 0.04
test-hex-decode 4.02 4.04 4.06 4.01 4.01 4.01 4.01 - - - (13.28) ▼ - - - - -
test-hex-encode (3.36) (3.38) 3.18 3.21 3.21 3.22 - - - - 1.62 ▲ - - - - -
test-jc-serialize-indented (7.03) ▼ (7.02) ▼ 3.14 ▲ 3.17 ▲ 3.84 3.62 3.93 - - - - - - - - -
test-jc-serialize 2.34 2.30 2.20 ⇑ 2.15 ⇑ 2.38 (2.50) (2.76) ▼ - - - - - - - - -
test-json-parse-hex (4.56) ▼ (4.51) ▼ 3.52 3.47 3.52 3.51 - - - - - - - - - -
test-json-parse-integer 2.97 (3.13) 2.97 2.90 2.96 (4.10) ▼ (4.35) ▼ (23.51) ▼ - - 0.09 ▲ - - - 2.18 ▲ 0.35 ▲
test-json-parse-number (5.53) 5.36 5.04 5.09 5.23 5.13 5.30 2.70 ▲ - - 0.40 ▲ - - - 1.24 ▲ 0.21 ▲
test-json-parse-string 5.13 5.16 5.21 5.23 5.21 (5.75) ▼ (5.46) (51.66) ▼ - - - - - - (34.30) ▼ (10.78) ▼
test-json-serialize-fastpath-loop (6.63) ▼ (6.66) ▼ 3.27 ⇑ 3.32 ⇑ 3.60 (4.02) ▼ (4.00) ▼ (13.44) ▼ (581.44) ▼ - - - - - (126.39) ▼ (33.02) ▼
test-json-serialize-forceslow (10.86) ▼ (10.79) ▼ 9.48 9.51 9.80 9.90 (12.04) ▼ 2.40 ▲ 9.14 - - - - - 6.27 ▲ 0.81 ▲
test-json-serialize-hex (1.62) (1.65) ⇓ 1.55 1.54 1.54 1.57 - - - - - - - - - -
test-json-serialize-indented-deep100 (1.74) ▼ (1.72) ▼ 1.36 1.38 1.44 (1.95) ▼ (2.70) ▼ (1.60) ▼ (149.64) ▼ - - - - - (43.64) ▼ 0.80 ▲
test-json-serialize-indented-deep25 (7.34) ▼ (7.48) ▼ 3.23 ▲ 3.17 ▲ 3.60 3.62 (3.84) (11.84) ▼ (280.97) ▼ - - - - - (75.34) ▼ (11.56) ▼
test-json-serialize-indented-deep500 (1.08) ▼ (1.05) ▼ 0.92 0.94 0.94 (1.34) ▼ (1.64) ▼ - - - - - - - - 0.82 ▲
test-json-serialize-indented (25.14) ▼ (21.47) ▼ 5.57 ⇑ 5.57 ⇑ 6.12 (6.51) (7.06) ▼ (16.33) ▼ (108.33) ▼ - - - - - (28.72) ▼ (26.86) ▼
test-json-serialize (7.76) ▼ (7.66) ▼ 6.42 6.40 6.49 6.38 (6.69) 2.37 ▲ (9.06) ▼ - 0.65 ▲ - - - 6.52 0.81 ▲
test-json-serialize-jsonrpc-message 2.00 ▲ 1.99 ▲ 2.99 ⇑ 3.11 3.28 3.33 3.32 - - - - - - - - -
test-json-serialize-nofrac 0.64 0.66 0.61 ⇑ 0.62 0.66 (0.68) (0.78) ▼ (1.74) ▼ (7.26) ▼ - - - - - (5.20) ▼ (0.71) ⇓
test-json-serialize-plainbuf 2.48 2.49 2.49 2.55 2.52 (31.25) ▼ 0.07 ▲ - - - - - - - - -
test-json-serialize-slowpath-loop 3.80 (3.90) 3.33 ▲ 3.42 ⇑ 3.76 (4.63) ▼ (6.54) ▼ - (11.18) ▼ - - - - - (14.26) ▼ (3.93)
test-json-string-bench 2.25 ▲ 2.28 ▲ 2.66 ▲ 2.80 ▲ 3.19 (3.76) ▼ (5.54) ▼ (53.98) ▼ - - - - - - 3.02 0.19 ▲
test-json-string-stringify 5.14 ▲ 5.20 ▲ 9.42 ⇑ 10.05 10.15 10.10 10.40 (11.67) ▼ - - 0.54 ▲ - - - (19.05) ▼ 5.40 ▲
test-jx-serialize-bufobj-forceslow 3.78 ▲ 3.90 ▲ 4.01 ▲ 4.11 ⇑ 4.48 (5.13) ▼ (6.26) ▼ - - - - - - - - -
test-jx-serialize-bufobj 1.56 1.52 ⇑ 1.47 ▲ 1.52 ⇑ 1.67 1.72 (1.82) ⇓ - - - - - - - - -
test-jx-serialize-indented (7.22) ▼ (7.12) ▼ 3.07 ▲ 3.04 ▲ 3.48 3.54 (3.86) ▼ - - - - - - - - -
test-jx-serialize (2.34) (2.37) 1.98 ▲ 2.08 ⇑ 2.24 (2.38) (2.63) ▼ - - - - - - - - -
test-mandel 2.29 ▲ 2.64 ▲ 2.93 2.94 3.15 (3.74) ▼ (4.38) ▼ (15.22) ▼ (14.56) ▼ 1.96 ▲ - - - 0.19 ▲ 1.76 ▲ 0.24 ▲
test-math-clz32 1.64 1.79 2.04 2.21 - - - - - - - - - - - 0.04
test-misc-1dcell 3.20 ▲ 3.52 ▲ 3.70 3.70 3.93 (4.29) ⇓ (4.86) ▼ (127.98) ▼ (8.58) ▼ - - - - - 3.20 ▲ 0.26 ▲
test-object-garbage-2 2.51 ▲ 2.59 ▲ 2.58 ▲ 2.61 ▲ 3.63 (5.38) ▼ (5.43) ▼ (54.54) ▼ 3.31 ⇑ - - - - - 2.96 ▲ 0.64 ▲
test-object-garbage (3.85) ▼ (3.98) ▼ (3.87) ▼ (4.05) ▼ 3.33 (5.17) ▼ (5.47) ▼ 2.68 ▲ 2.78 ▲ (4.18) ▼ 0.86 ▲ - - 0.00 ▲ 1.04 ▲ 0.46 ▲
test-object-literal-100 6.77 ▲ 7.22 ▲ 7.12 ▲ 7.10 ▲ 13.97 (22.64) ▼ (20.43) ▼ (30.28) ▼ 12.54 ▲ - - - - - 7.88 ▲ 2.39 ▲
test-object-literal-20 1.53 ▲ 1.62 ▲ 1.60 ▲ 1.62 ▲ 2.51 (3.24) ▼ (2.82) ▼ (4.30) ▼ 2.27 ⇑ - - - - - 1.68 ▲ 0.57 ▲
test-object-literal-3 0.32 ▲ 0.35 ▲ 0.35 ▲ 0.36 ▲ 0.42 (0.61) ▼ (0.57) ▼ (0.52) ▼ 0.39 ⇑ - - - - - (0.58) ▼ 0.04 ▲
test-prop-read-1024 2.43 ▲ 2.49 ▲ 3.25 ⇑ 3.31 ⇑ 3.61 (3.97) ⇓ (5.17) ▼ (6.82) ▼ (4.46) ▼ - - - - - 0.90 ▲ 0.43 ▲
test-prop-read-16 2.44 ▲ 2.49 ▲ 3.24 ▲ 3.32 ⇑ 3.65 (4.07) ▼ (5.48) ▼ (4.48) ▼ (4.43) ▼ - - - - - 0.76 ▲ 0.03 ▲
test-prop-read-256 2.44 ▲ 2.49 ▲ 3.25 ▲ 3.27 ⇑ 3.62 (4.38) ▼ (5.37) ▼ (8.29) ▼ (4.43) ▼ - - - - - 0.90 ▲ 0.38 ▲
test-prop-read-32 2.43 ▲ 2.50 ▲ 3.26 ▲ 3.32 ⇑ 3.63 (3.98) ⇓ (5.19) ▼ (5.62) ▼ (4.44) ▼ - - - - - 0.83 ▲ 0.39 ▲
test-prop-read-48 2.43 ▲ 2.51 ▲ 3.26 ▲ 3.34 ⇑ 3.63 (3.98) ⇓ (5.27) ▼ (6.52) ▼ (4.42) ▼ - - - - - 0.79 ▲ 0.39 ▲
test-prop-read-4 2.34 ▲ 2.46 ▲ 3.21 ⇑ 3.43 3.52 3.58 (4.77) ▼ (4.00) ▼ (4.42) ▼ - - - - - 0.78 ▲ 0.04 ▲
test-prop-read-64 2.43 ▲ 2.52 ▲ 3.24 ▲ 3.31 ⇑ 3.62 (4.00) ▼ (5.34) ▼ (6.52) ▼ (4.34) ▼ - - - - - 0.86 ▲ 0.40 ▲
test-prop-read-8 2.43 ▲ 2.48 ▲ 3.26 ⇑ 3.32 ⇑ 3.62 3.70 (4.98) ▼ (4.93) ▼ (4.43) ▼ - - - - - 0.78 ▲ 0.05 ▲
test-prop-read-inherited 2.72 ▲ 2.83 ▲ 4.48 ▲ 4.76 ⇑ 5.18 5.11 (6.60) ▼ 4.75 ⇑ (9.40) ▼ - - - - - 1.22 ▲ 0.04 ▲
test-prop-read 2.36 ▲ 2.52 ▲ 3.28 ▲ 3.44 ⇑ 3.70 3.60 (4.79) ▼ (3.96) ⇓ (4.43) ▼ 1.11 ▲ 2.58 ▲ (4.70) ▼ (3.95) 0.00 ▲ 0.66 ▲ 0.04 ▲
test-prop-write-1024 2.92 ▲ 2.96 ▲ 3.14 3.14 3.30 (4.69) ▼ (4.97) ▼ (10.39) ▼ (5.26) ▼ - - - - - 2.27 ▲ 0.44 ▲
test-prop-write-16 2.98 ▲ 3.04 ⇑ 3.29 3.20 3.36 (4.13) ▼ (5.05) ▼ (4.46) ▼ (5.27) ▼ - - - - - 2.12 ▲ 0.07 ▲
test-prop-write-256 2.95 ▲ 3.06 ⇑ 3.20 3.14 3.30 (4.06) ▼ (4.96) ▼ (8.21) ▼ (5.32) ▼ - - - - - 2.26 ▲ 0.39 ▲
test-prop-write-32 2.92 ▲ 2.96 ▲ 3.18 ⇑ 3.18 ⇑ 3.46 (4.02) ▼ (5.09) ▼ (5.52) ▼ (5.32) ▼ - - - - - 2.09 ▲ 0.39 ▲
test-prop-write-48 2.96 ▲ 2.97 ▲ 3.17 3.22 3.34 (4.04) ▼ (4.98) ▼ (6.57) ▼ (5.29) ▼ - - - - - 2.07 ▲ 0.39 ▲
test-prop-write-4 2.96 ▲ 3.09 ▲ 3.21 3.20 ⇑ 3.45 (3.69) (4.38) ▼ (3.93) ▼ (5.30) ▼ - - - - - 2.08 ▲ 0.04 ▲
test-prop-write-64 2.90 ▲ 2.97 ⇑ 3.14 3.21 3.30 (4.09) ▼ (5.60) ▼ (6.55) ▼ (5.32) ▼ - - - - - 2.29 ▲ 0.38 ▲
test-prop-write-8 2.96 ▲ 2.96 ▲ 3.16 3.16 3.30 (3.84) ▼ (4.52) ▼ (4.92) ▼ (5.26) ▼ - - - - - 2.12 ▲ 0.08 ▲
test-prop-write 3.04 ▲ 3.12 ▲ 3.04 ▲ 3.25 ▲ 3.62 (3.83) (4.46) ▼ (3.95) ⇓ (5.28) ▼ 1.41 ▲ 2.71 ▲ (4.88) ▼ (5.28) ▼ 0.00 ▲ 1.94 ▲ 0.08 ▲
test-proxy-get 1.41 ▲ 1.50 ▲ 1.53 ▲ 1.62 ▲ 2.00 (2.17) ⇓ (2.56) ▼ - - - - - - - - -
test-random 1.15 ▲ 1.26 ▲ 1.54 ▲ 1.61 ▲ 2.25 (2.50) ▼ (6.86) ▼ 1.14 ▲ 2.14 - - - - - 1.69 ▲ 0.47 ▲
test-reflect-ownkeys-sorted - 1.05 - 1.11 1.12 (1.37) ▼ - - - - - - - - - -
test-reflect-ownkeys-unsorted - 1.10 - 1.12 1.14 (1.37) ▼ - - - - - - - - - -
test-regexp-case-insensitive-compile 0.00 ▲ 0.83 ▲ 0.00 ▲ 0.71 ▲ 28.40 27.70 25.66 ⇑ 0.00 ▲ 0.00 ▲ - - - - - 0.26 ▲ -
test-regexp-case-insensitive-execute 1.75 ▲ 2.00 1.54 ▲ 1.69 ▲ 2.07 2.05 1.89 ⇑ (46.32) ▼ 0.12 ▲ - - - - - - -
test-regexp-case-sensitive-compile (1.99) 1.76 ⇑ (2.02) 1.82 1.91 (2.25) ▼ (2.79) ▼ 0.90 ▲ 0.66 ▲ - - - - - 0.96 ▲ -
test-regexp-case-sensitive-execute 1.66 1.54 (1.72) 1.59 1.64 (1.96) ▼ (2.55) ▼ 0.65 ▲ 1.60 - - - - - 1.26 ▲ -
test-regexp-compile (2.68) 2.60 2.44 2.45 2.56 (2.92) ▼ (3.67) ▼ 2.02 ▲ 0.57 ▲ - - - - - 1.76 ▲ 0.22 ▲
test-regexp-execute 1.68 ▲ 1.70 ▲ 1.79 1.81 1.91 (2.20) ▼ (2.81) ▼ (2.30) ▼ 1.54 ▲ - - - - - 1.91 0.10 ▲
test-regexp-string-parse (14.20) ▼ (14.23) ▼ 8.00 8.08 8.08 8.25 (13.23) ▼ - - - 0.75 ▲ - - - - 0.82 ▲
test-reg-readwrite-object 4.12 ▲ 4.51 4.10 ▲ 4.54 4.60 (5.24) ▼ 4.70 (10.75) ▼ (18.71) ▼ 2.31 ▲ - (42.13) ▼ (5.34) ▼ 0.00 ▲ 0.70 ▲ 0.04 ▲
test-reg-readwrite-plain 2.34 ▲ 2.73 ▲ 2.88 2.87 3.08 (4.37) ▼ 3.05 (10.85) ▼ (14.85) ▼ 2.32 ▲ (7.01) ▼ (45.25) ▼ (5.37) ▼ 0.00 ▲ 0.68 ▲ 0.03 ▲
test-strict-equals-fastint 0.68 ▲ 0.70 ▲ 0.68 ▲ 0.70 ▲ 0.80 (0.89) ▼ (1.56) ▼ (3.37) ▼ (4.18) ▼ - - - - - (1.06) ▼ 0.04 ▲
test-strict-equals-nonfastint 0.74 ▲ 0.87 0.73 ▲ 0.76 ▲ 0.85 (0.96) ▼ (1.67) ▼ (3.38) ▼ (5.62) ▼ - - - - - (1.08) ▼ 0.07 ▲
test-string-array-concat 6.24 6.48 6.75 6.66 6.70 (7.74) ▼ (8.38) ▼ (320.63) ▼ - 2.72 ▲ 4.48 ▲ (10.18) ▼ (8.36) ▼ 1.14 ▲ 2.75 ▲ 0.53 ▲
test-string-arridx 1.78 ▲ 1.76 ▲ 1.79 ▲ 1.81 ▲ 2.15 (2.30) (2.44) ▼ 1.32 ▲ 2.00 - - - - - 0.44 ▲ 0.04 ▲
test-string-charlen-ascii 1.40 1.40 1.40 1.42 1.44 (1.51) (1.69) ▼ (6.20) ▼ 0.99 ▲ - - - - - 0.48 ▲ 0.03 ▲
test-string-charlen-nonascii (3.51) 3.27 (3.47) 3.38 3.34 3.32 (3.53) (9.84) ▼ 0.68 ▲ - - - - - 0.53 ▲ 0.04 ▲
test-string-compare 2.57 ▲ 2.73 ▲ 2.54 ▲ 2.63 ▲ 3.13 (3.30) (5.10) ▼ - - (6.24) ▼ (12.66) ▼ (24.32) ▼ (6.70) ▼ 0.14 ▲ (6.58) ▼ 1.14 ▲
test-string-decodeuri 5.65 (6.16) ⇓ 5.23 ⇑ 5.53 5.74 5.59 5.33 ⇑ 2.98 ▲ - - - - - - 3.08 ▲ 5.73
test-string-encodeuri 6.00 5.95 5.26 ▲ 5.40 ▲ 6.08 6.26 5.76 5.06 ▲ - - - - - - (8.07) ▼ (30.98) ▼
test-string-garbage 4.51 ▲ 4.56 ▲ 4.38 ▲ 4.49 ▲ 5.16 (6.46) ▼ (7.31) ▼ 2.41 ▲ 2.55 ▲ 2.14 ▲ 2.31 ▲ - - 1.79 ▲ 1.24 ▲ 0.04 ▲
test-string-intern-grow2 0.74 ⇑ 0.74 ⇑ 0.75 0.78 0.80 (2.28) ▼ (2.29) ▼ - - - - - - - - -
test-string-intern-grow 5.12 5.28 5.14 5.10 5.14 (26.30) ▼ (25.72) ▼ - - - - - - - - -
test-string-intern-grow-short2 4.06 ▲ 4.18 ▲ 4.12 ▲ 4.29 ⇑ 4.73 (6.30) ▼ (6.73) ▼ - - - - - - - - -
test-string-intern-grow-short 4.20 ▲ 4.28 ▲ 4.27 ▲ 4.45 ⇑ 4.84 (15.58) ▼ (15.78) ▼ - - - - - - - - -
test-string-intern-match 0.21 ▲ 0.22 ▲ 0.22 ▲ 0.22 ▲ 0.26 (0.31) ▼ (0.32) ▼ - - - - - - - - -
test-string-intern-match-short 1.84 ▲ 1.91 ▲ 1.86 ▲ 1.98 ▲ 2.28 (3.42) ▼ (3.37) ▼ - - - - - - - - -
test-string-intern-miss 0.35 ▲ 0.38 ⇑ 0.36 ▲ 0.39 0.41 (1.46) ▼ (1.48) ▼ - - - - - - - - -
test-string-intern-miss-short 2.23 ▲ 2.29 ▲ 2.22 ▲ 2.34 ▲ 2.66 (4.22) ▼ (4.40) ▼ - - - - - - - - -
test-string-number-list 0.58 ▲ 0.60 ▲ 0.70 ▲ 0.72 ▲ 0.82 (1.39) ▼ (1.92) ▼ (9.56) ▼ - - - - - - (1.65) ▼ 0.16 ▲
test-string-plain-concat (0.58) (0.59) (0.60) ⇓ (0.60) ⇓ 0.56 (1.12) ▼ (1.29) ▼ (1.26) ▼ (0.66) ▼ (0.76) ▼ 0.00 ▲ 0.54 0.56 (0.80) ▼ 0.45 ▲ 0.04 ▲
test-string-scan-nonascii 5.16 5.43 4.80 ⇑ 4.96 5.29 4.96 5.41 (63.81) ▼ (19.89) ▼ - - - - - 2.04 ▲ 0.03 ▲
test-string-uppercase (3.76) (3.86) ⇓ 3.36 3.33 3.52 3.55 3.58 (6.19) ▼ - - 1.68 ▲ - - - 2.17 ▲ 0.13 ▲
test-textdecoder-ascii 3.05 ▲ 3.06 ▲ 3.30 (4.03) ▼ 3.41 3.12 ⇑ - - - - - - - - - -
test-textdecoder-nonascii (4.09) ▼ (4.08) ▼ (3.81) ⇓ 3.56 3.48 (4.26) ▼ - - - - - - - - - -
test-textencoder-ascii (7.21) (7.19) 6.56 6.87 6.98 6.92 - - - - - - - - - -
test-textencoder-nonascii (17.04) ▼ (17.47) ▼ 13.19 ⇑ 13.27 ⇑ 14.28 (15.00) - - - - - - - - - -
test-try-catch-nothrow 3.87 ⇑ 4.18 4.13 (4.34) 4.20 4.27 3.74 ▲ 3.08 ▲ (4.37) - - - - - 0.41 ▲ 0.12 ▲
test-try-catch-throw 33.60 ▲ 35.81 ⇑ 35.05 ⇑ 36.55 38.93 (54.91) ▼ (56.57) ▼ 30.04 ▲ 20.73 ▲ - - - - - (192.82) ▼ (103.57) ▼
test-try-finally-nothrow 4.42 ▲ 5.04 4.48 ▲ 5.18 5.10 5.18 4.87 2.90 ▲ 4.93 - - - - - 0.41 ▲ 0.46 ▲
test-try-finally-throw 42.94 ▲ 45.16 ▲ 44.76 ▲ 46.46 ▲ 62.60 (73.86) ▼ (75.10) ▼ 33.72 ▲ 26.64 ▲ - - - - - (197.95) ▼ (169.44) ▼

Setup

Measurement host:

Duktape is compiled with:

Note that: