2727
2828< head >
2929 < meta charset ="utf-8 " />
30+
3031 < title > JetStream 3 In-Depth Analysis</ title >
32+
3133 < link rel ="stylesheet " href ="resources/JetStream.css ">
34+
3235</ head >
3336
34- < body class ="in-depth overflow-scroll ">
37+ < body class ="overflow-scroll ">
3538 < h1 class ="logo ">
3639 < div id ="jetstreams ">
3740 < a href ="index.html " class ="logo-image "> JetStream 3</ a >
@@ -139,18 +142,9 @@ <h3>
139142 </ h3 >
140143
141144 < p >
142- < < < < < < < HEAD
143- The < span style ="color: var(--text-color-very-subtle); "> greyed-out workloads</ span > are not run by default but can be manually enabled on the command-line or via
144- the < code > ?test=</ code > URL parameter.
145- You can also click on the workload name to run that one individually, or on tags to run all workloads with a certain tag.
146- ||||||| 6588e89
147- The < span style ="color: var(--text-color-very-subtle); "> greyed-out workloads</ span > are not run by default but can be manually enabled on the command-line or via
148- the < i > testList</ i > URL parameter.
149- =======
150145 The < span style ="color: var(--text-color-very-subtle); "> greyed-out workloads</ span > are not run by
151146 default but can be manually enabled on the command-line or via
152147 the < i > testList</ i > URL parameter.
153- > > > > > > > main
154148 </ p >
155149
156150 < dl id ="workload-details ">
249243 href ="https://v8.github.io/web-tooling-benchmark/ "> Web Tooling Benchmark</ a > ,.
250244 Source code: < a href ="web-tooling-benchmark/src/babylon.mjs "> babylon.mjs</ a >
251245 </ dd >
252- < dt id ="babylonjs-scene-es5 "> babylonjs-scene-es5</ dt >
246+ < dt id ="babylonjs-scene-es5 " class =" non-default " > babylonjs-scene-es5</ dt >
253247 < dt id ="babylonjs-scene-es6 "> babylonjs-scene-es6</ dt >
254- < dt id ="babylonjs-startup-es5 "> babylonjs-startup-es5</ dt >
248+ < dt id ="babylonjs-startup-es5 " class =" non-default " > babylonjs-startup-es5</ dt >
255249 < dt id ="babylonjs-startup-es6 "> babylonjs-startup-es6</ dt >
256250 < dd >
257251 These benchmarks test the < a href ="https://www.babylonjs.com/ "> Babylon.js</ a > 3D engine.
@@ -271,14 +265,14 @@ <h3>
271265 This benchmark was previously published in < a href ="https://browserbench.org/ARES-6/ "> ARES-6</ a > .
272266 Source code: < a href ="ARES-6/Basic "> Basic</ a >
273267 </ dd >
274- < dt id ="bigint-bigdenary "> bigint-bigdenary</ dt >
268+ < dt id ="bigint-bigdenary " class =" non-default " > bigint-bigdenary</ dt >
275269 < dd >
276270 < a href ="https://github.com/uzyn/bigdenary "> BigDenary</ a > , an arbitrary-precision
277271 decimal arithmetic, implemented in JavaScript by U-Zyn Chua.
278272 Tests arithmetic operations on BigInt.
279273 Source code: < a href ="bigint/bigdenary-bundle.js "> bigdenary-bundle.js</ a >
280274 </ dd >
281- < dt id ="bigint-noble-bls12-381 "> bigint-noble-bls12-381</ dt >
275+ < dt id ="bigint-noble-bls12-381 " class =" non-default " > bigint-noble-bls12-381</ dt >
282276 < dd >
283277 < a href ="https://hackmd.io/@benjaminion/bls12-381 "> BLS12-381</ a > , pairing-friendly
284278 Barreto-Lynn-Scott elliptic curve construction,
@@ -294,15 +288,15 @@ <h3>
294288 by Paul Miller. Tests typed arrays and arithmetic operations on BigInt.
295289 Source code: < a href ="bigint/noble-ed25519-bundle.js "> noble-ed25519-bundle.js</ a >
296290 </ dd >
297- < dt id ="bigint-noble-secp256k1 "> bigint-noble-secp256k1</ dt >
291+ < dt id ="bigint-noble-secp256k1 " class =" non-default " > bigint-noble-secp256k1</ dt >
298292 < dd >
299293 < a href ="https://www.secg.org/sec2-v2.pdf "> secp256k1</ a > , an elliptic curve that could
300294 be used for asymmetric encryption, ECDH key agreement protocol and signature schemes,
301295 < a href ="https://github.com/paulmillr/noble-secp256k1 "> implemented in JavaScript</ a >
302296 by Paul Miller. Tests typed arrays and arithmetic operations on BigInt.
303297 Source code: < a href ="bigint/noble-secp256k1-bundle.js "> noble-secp256k1-bundle.js</ a >
304298 </ dd >
305- < dt id ="bigint-paillier "> bigint-paillier</ dt >
299+ < dt id ="bigint-paillier " class =" non-default " > bigint-paillier</ dt >
306300 < dd >
307301 < a href ="https://en.wikipedia.org/wiki/Paillier_cryptosystem "> Paillier cryptosystem</ a > ,
308302 a probabilistic asymmetric algorithm for public key cryptography,
347341 A similar version of this benchmark was previously published in Octane version 2.
348342 Source code: < a href ="Octane/crypto.js "> crypto.js</ a >
349343 </ dd >
350- < dt id ="Dart-flute-complex-wasm "> Dart-flute-complex-wasm</ dt >
344+ < dt id ="Dart-flute-complex-wasm " class =" non-default " > Dart-flute-complex-wasm</ dt >
351345 < dt id ="Dart-flute-todomvc-wasm "> Dart-flute-todomvc-wasm</ dt >
352346 < dd >
353347 Two Dart benchmark programs compiled to WasmGC that are using a simplified version of the Flutter UI
463457 Source code: < a href ="Octane/gbemu-part1.js "> gbemu-part1.js</ a > , < a
464458 href ="Octane/gbemu-part2.js "> gbemu-part2.js</ a >
465459 </ dd >
466- < dt id ="gcc-loops-wasm "> gcc-loops-wasm</ dt >
460+ < dt id ="gcc-loops-wasm " class =" non-default " > gcc-loops-wasm</ dt >
467461 < dd >
468462 Example loops used to tune the GCC and LLVM vectorizers, compiled to WebAssembly with
469463 < a href ="https://emscripten.org "> Emscripten</ a > . The original C++ version of this benchmark was
@@ -479,15 +473,15 @@ <h3>
479473 of this benchmark was originally published as part of the WebKit test suite.
480474 Source code: < a href ="simple/hash-map.js "> hash-map.js</ a >
481475 </ dd >
482- < dt id ="HashSet-wasm "> HashSet-wasm</ dt >
476+ < dt id ="HashSet-wasm " class =" non-default " > HashSet-wasm</ dt >
483477 < dd >
484478 A WebAssembly benchmark replaying a set of hash table operations performed in WebKit when loading
485479 a web page. This benchmark was compiled from C++ to WebAssembly using < a
486480 href ="https://emscripten.org "> Emscripten</ a > .
487481 Source code: < a href ="wasm/HashSet/HashSet.cpp "> HashSet.cpp</ a > , < a
488482 href ="wasm/HashSet/benchmark.js "> HashSet.js</ a >
489483 </ dd >
490- < dt id ="intl "> intl</ dt >
484+ < dt id ="intl " class =" non-default " > intl</ dt >
491485 < dd >
492486 This benchmark tests the performance of the < a
493487 href ="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl "> Intl
551545 generators.
552546 Source code: < a href ="generators/lazy-collections.js "> lazy-collections.js</ a >
553547 </ dd >
554- < dt id ="lebab-wtb "> lebab-wtb</ dt >
548+ < dt id ="lebab-wtb " class =" non-default " > lebab-wtb</ dt >
555549 < dd >
556550 < a href ="https://github.com/lebab/lebab "> Lebab</ a > transpiles ES5 code into ES6/ES7.
557551 This benchmark runs Lebab on test JavaScript programs.
@@ -631,13 +625,6 @@ <h3>
631625 Source code: < a href ="web-tooling-benchmark/src/postcss.mjs "> postcss.mjs</ a >
632626 </ dd >
633627 < dt id ="prettier-wtb "> prettier-wtb</ dt >
634- < < < < < < < HEAD
635- < dd > TODO</ dd >
636- < dt id ="prismjs-startup-es5 "> prismjs-startup-es5</ dt >
637- ||||||| 6588e89
638- < dd > TODO</ dd >
639- < dt id ="prismjs-startup-es5 " class ="non-default "> prismjs-startup-es5</ dt >
640- =======
641628 < dd >
642629 This benchmark runs the < a href ="https://prettier.io/ "> Prettier</ a > code formatter on various
643630 JavaScript
647634 Source code: < a href ="web-tooling-benchmark/src/prettier.mjs "> prettier.mjs</ a >
648635 </ dd >
649636 < dt id ="prismjs-startup-es5 " class ="non-default "> prismjs-startup-es5</ dt >
650- > > > > > > > main
651637 < dt id ="prismjs-startup-es6 "> prismjs-startup-es6</ dt >
652638 < dd >
653639 These benchmarks measure the performance of the < a href ="https://prismjs.com/ "> PrismJS</ a > syntax
671657 Tests get / set Proxy traps, as well as various Array methods.
672658 Source code: < a href ="proxy/vue-benchmark.js "> vue-benchmark.js</ a >
673659 </ dd >
674- < dt id ="quicksort-wasm "> quicksort-wasm</ dt >
660+ < dt id ="quicksort-wasm " class =" non-default " > quicksort-wasm</ dt >
675661 < dd >
676662 Quicksort benchmark, compiled to WebAssembly with < a href ="https://emscripten.org "> Emscripten</ a > .
677663 The original C version of this benchmark was previously published in the LLVM test suite.
898884 order of existing files.
899885 Source code: < a href ="generators/sync-file-system.js "> sync-file-system.js</ a >
900886 </ dd >
901- < dt id ="tfjs-wasm "> tfjs-wasm</ dt >
902- < dt id ="tfjs-wasm-simd "> tfjs-wasm-simd</ dt >
887+ < dt id ="tfjs-wasm " class =" non-default " > tfjs-wasm</ dt >
888+ < dt id ="tfjs-wasm-simd " class =" non-default " > tfjs-wasm-simd</ dt >
903889 < dd >
904890 Tests < a href ="https://github.com/tensorflow/tfjs "> Tensorflow.js</ a > pre-trained machine learning
905891 models supported by < a
921907 Source code: in the < a href ="threejs/ "> threejs/</ a > directory.
922908 </ dd >
923909 < dt id ="transformersjs-bert-wasm "> transformersjs-bert-wasm</ dt >
924- < dt id ="transformersjs-whisper-wasm "> transformersjs-whisper-wasm</ dt >
910+ < dt id ="transformersjs-whisper-wasm " class =" non-default " > transformersjs-whisper-wasm</ dt >
925911 < dd >
926912 Two machine learning tasks using the < a
927913 href ="https://huggingface.co/docs/transformers.js/en/index "> Transformers.js</ a > library, which
@@ -952,21 +938,13 @@ <h3>
952938 A similar version of this benchmark was previously published in Octane version 2.
953939 Source code: < a href ="Octane/typescript.js "> typescript.js</ a >
954940 </ dd >
955- < < < < < < < HEAD
956- < dt id ="typescript-octane "> typescript-octane</ dt >
957- < dd > TODO</ dd >
958- ||||||| 6588e89
959- < dt id ="typescript-octane " class ="non-default "> typescript-octane</ dt >
960- < dd > TODO</ dd >
961- =======
962941 < dt id ="typescript-octane " class ="non-default "> typescript-octane</ dt >
963942 < dd >
964943 The original < a href ="https://developers.google.com/octane/ "> Octane</ a > version of the TypeScript
965944 benchmark. It measures the time it takes the TypeScript compiler to compile a large input file,
966945 stressing the performance of a large-scale JavaScript application with complex data structures.
967946 Source code: < a href ="Octane/typescript.js "> typescript.js</ a >
968947 </ dd >
969- > > > > > > > main
970948 < dt id ="UniPoker "> UniPoker</ dt >
971949 < dd >
972950 UniPoker is a 5 card stud poker simulation using the Unicode playing card code points,
@@ -1009,45 +987,8 @@ <h3>
1009987
1010988 < p > < a href ="index.html " class ="button "> ← Return to Tests</ a > </ p >
1011989 </ article >
1012- </ main >
1013-
1014- < script >
1015- const isInBrowser = true ;
1016- </ script >
1017- < script src ="utils/params.js "> </ script >
1018- < script src ="JetStreamDriver.js "> </ script >
1019- < script >
1020- ( function ( ) {
1021- for ( const benchmark of BENCHMARKS ) {
1022- let dt = document . getElementById ( benchmark . name ) ;
1023- if ( ! dt ) {
1024- continue ;
1025- }
1026-
1027- if ( benchmark . tags . has ( "disabled" ) ) {
1028- dt . classList . add ( "non-default" ) ;
1029- }
1030990
1031- const nameLink = document . createElement ( "a" ) ;
1032- nameLink . href = `index.html?test=${ benchmark . name } ` ;
1033- nameLink . className = "workload-link" ;
1034- nameLink . textContent = dt . textContent ;
1035- dt . textContent = "" ;
1036- dt . appendChild ( nameLink ) ;
1037-
1038- const tags = Array . from ( benchmark . tags ) . sort ( ) ;
1039- for ( const tag of tags ) {
1040- if ( tag === "all" || tag === "default" ) {
1041- continue ;
1042- }
1043- const link = document . createElement ( "a" ) ;
1044- link . href = `index.html?tags=${ tag } ` ;
1045- link . textContent = tag ;
1046- link . className = "tag-link" ;
1047- dt . appendChild ( link ) ;
1048- }
1049- }
1050- } ) ( ) ;
1051- </ script >
991+ </ main >
1052992</ body >
1053- </ html>
993+
994+ </ html >
0 commit comments