2727
2828< head >
2929 < meta charset ="utf-8 " />
30-
3130 < title > JetStream 3 In-Depth Analysis</ title >
32-
3331 < link rel ="stylesheet " href ="resources/JetStream.css ">
34-
3532</ head >
3633
37- < body class ="overflow-scroll ">
34+ < body class ="in-depth overflow-scroll ">
3835 < h1 class ="logo ">
3936 < div id ="jetstreams ">
4037 < a href ="index.html " class ="logo-image "> JetStream 3</ a >
@@ -142,9 +139,18 @@ <h3>
142139 </ h3 >
143140
144141 < 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+ =======
145150 The < span style ="color: var(--text-color-very-subtle); "> greyed-out workloads</ span > are not run by
146151 default but can be manually enabled on the command-line or via
147152 the < i > testList</ i > URL parameter.
153+ > > > > > > > main
148154 </ p >
149155
150156 < dl id ="workload-details ">
243249 href ="https://v8.github.io/web-tooling-benchmark/ "> Web Tooling Benchmark</ a > ,.
244250 Source code: < a href ="web-tooling-benchmark/src/babylon.mjs "> babylon.mjs</ a >
245251 </ dd >
246- < dt id ="babylonjs-scene-es5 " class =" non-default " > babylonjs-scene-es5</ dt >
252+ < dt id ="babylonjs-scene-es5 "> babylonjs-scene-es5</ dt >
247253 < dt id ="babylonjs-scene-es6 "> babylonjs-scene-es6</ dt >
248- < dt id ="babylonjs-startup-es5 " class =" non-default " > babylonjs-startup-es5</ dt >
254+ < dt id ="babylonjs-startup-es5 "> babylonjs-startup-es5</ dt >
249255 < dt id ="babylonjs-startup-es6 "> babylonjs-startup-es6</ dt >
250256 < dd >
251257 These benchmarks test the < a href ="https://www.babylonjs.com/ "> Babylon.js</ a > 3D engine.
@@ -265,14 +271,14 @@ <h3>
265271 This benchmark was previously published in < a href ="https://browserbench.org/ARES-6/ "> ARES-6</ a > .
266272 Source code: < a href ="ARES-6/Basic "> Basic</ a >
267273 </ dd >
268- < dt id ="bigint-bigdenary " class =" non-default " > bigint-bigdenary</ dt >
274+ < dt id ="bigint-bigdenary "> bigint-bigdenary</ dt >
269275 < dd >
270276 < a href ="https://github.com/uzyn/bigdenary "> BigDenary</ a > , an arbitrary-precision
271277 decimal arithmetic, implemented in JavaScript by U-Zyn Chua.
272278 Tests arithmetic operations on BigInt.
273279 Source code: < a href ="bigint/bigdenary-bundle.js "> bigdenary-bundle.js</ a >
274280 </ dd >
275- < dt id ="bigint-noble-bls12-381 " class =" non-default " > bigint-noble-bls12-381</ dt >
281+ < dt id ="bigint-noble-bls12-381 "> bigint-noble-bls12-381</ dt >
276282 < dd >
277283 < a href ="https://hackmd.io/@benjaminion/bls12-381 "> BLS12-381</ a > , pairing-friendly
278284 Barreto-Lynn-Scott elliptic curve construction,
@@ -288,15 +294,15 @@ <h3>
288294 by Paul Miller. Tests typed arrays and arithmetic operations on BigInt.
289295 Source code: < a href ="bigint/noble-ed25519-bundle.js "> noble-ed25519-bundle.js</ a >
290296 </ dd >
291- < dt id ="bigint-noble-secp256k1 " class =" non-default " > bigint-noble-secp256k1</ dt >
297+ < dt id ="bigint-noble-secp256k1 "> bigint-noble-secp256k1</ dt >
292298 < dd >
293299 < a href ="https://www.secg.org/sec2-v2.pdf "> secp256k1</ a > , an elliptic curve that could
294300 be used for asymmetric encryption, ECDH key agreement protocol and signature schemes,
295301 < a href ="https://github.com/paulmillr/noble-secp256k1 "> implemented in JavaScript</ a >
296302 by Paul Miller. Tests typed arrays and arithmetic operations on BigInt.
297303 Source code: < a href ="bigint/noble-secp256k1-bundle.js "> noble-secp256k1-bundle.js</ a >
298304 </ dd >
299- < dt id ="bigint-paillier " class =" non-default " > bigint-paillier</ dt >
305+ < dt id ="bigint-paillier "> bigint-paillier</ dt >
300306 < dd >
301307 < a href ="https://en.wikipedia.org/wiki/Paillier_cryptosystem "> Paillier cryptosystem</ a > ,
302308 a probabilistic asymmetric algorithm for public key cryptography,
341347 A similar version of this benchmark was previously published in Octane version 2.
342348 Source code: < a href ="Octane/crypto.js "> crypto.js</ a >
343349 </ dd >
344- < dt id ="Dart-flute-complex-wasm " class =" non-default " > Dart-flute-complex-wasm</ dt >
350+ < dt id ="Dart-flute-complex-wasm "> Dart-flute-complex-wasm</ dt >
345351 < dt id ="Dart-flute-todomvc-wasm "> Dart-flute-todomvc-wasm</ dt >
346352 < dd >
347353 Two Dart benchmark programs compiled to WasmGC that are using a simplified version of the Flutter UI
457463 Source code: < a href ="Octane/gbemu-part1.js "> gbemu-part1.js</ a > , < a
458464 href ="Octane/gbemu-part2.js "> gbemu-part2.js</ a >
459465 </ dd >
460- < dt id ="gcc-loops-wasm " class =" non-default " > gcc-loops-wasm</ dt >
466+ < dt id ="gcc-loops-wasm "> gcc-loops-wasm</ dt >
461467 < dd >
462468 Example loops used to tune the GCC and LLVM vectorizers, compiled to WebAssembly with
463469 < a href ="https://emscripten.org "> Emscripten</ a > . The original C++ version of this benchmark was
@@ -473,15 +479,15 @@ <h3>
473479 of this benchmark was originally published as part of the WebKit test suite.
474480 Source code: < a href ="simple/hash-map.js "> hash-map.js</ a >
475481 </ dd >
476- < dt id ="HashSet-wasm " class =" non-default " > HashSet-wasm</ dt >
482+ < dt id ="HashSet-wasm "> HashSet-wasm</ dt >
477483 < dd >
478484 A WebAssembly benchmark replaying a set of hash table operations performed in WebKit when loading
479485 a web page. This benchmark was compiled from C++ to WebAssembly using < a
480486 href ="https://emscripten.org "> Emscripten</ a > .
481487 Source code: < a href ="wasm/HashSet/HashSet.cpp "> HashSet.cpp</ a > , < a
482488 href ="wasm/HashSet/benchmark.js "> HashSet.js</ a >
483489 </ dd >
484- < dt id ="intl " class =" non-default " > intl</ dt >
490+ < dt id ="intl "> intl</ dt >
485491 < dd >
486492 This benchmark tests the performance of the < a
487493 href ="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl "> Intl
545551 generators.
546552 Source code: < a href ="generators/lazy-collections.js "> lazy-collections.js</ a >
547553 </ dd >
548- < dt id ="lebab-wtb " class =" non-default " > lebab-wtb</ dt >
554+ < dt id ="lebab-wtb "> lebab-wtb</ dt >
549555 < dd >
550556 < a href ="https://github.com/lebab/lebab "> Lebab</ a > transpiles ES5 code into ES6/ES7.
551557 This benchmark runs Lebab on test JavaScript programs.
@@ -625,6 +631,13 @@ <h3>
625631 Source code: < a href ="web-tooling-benchmark/src/postcss.mjs "> postcss.mjs</ a >
626632 </ dd >
627633 < 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+ =======
628641 < dd >
629642 This benchmark runs the < a href ="https://prettier.io/ "> Prettier</ a > code formatter on various
630643 JavaScript
634647 Source code: < a href ="web-tooling-benchmark/src/prettier.mjs "> prettier.mjs</ a >
635648 </ dd >
636649 < dt id ="prismjs-startup-es5 " class ="non-default "> prismjs-startup-es5</ dt >
650+ > > > > > > > main
637651 < dt id ="prismjs-startup-es6 "> prismjs-startup-es6</ dt >
638652 < dd >
639653 These benchmarks measure the performance of the < a href ="https://prismjs.com/ "> PrismJS</ a > syntax
657671 Tests get / set Proxy traps, as well as various Array methods.
658672 Source code: < a href ="proxy/vue-benchmark.js "> vue-benchmark.js</ a >
659673 </ dd >
660- < dt id ="quicksort-wasm " class =" non-default " > quicksort-wasm</ dt >
674+ < dt id ="quicksort-wasm "> quicksort-wasm</ dt >
661675 < dd >
662676 Quicksort benchmark, compiled to WebAssembly with < a href ="https://emscripten.org "> Emscripten</ a > .
663677 The original C version of this benchmark was previously published in the LLVM test suite.
884898 order of existing files.
885899 Source code: < a href ="generators/sync-file-system.js "> sync-file-system.js</ a >
886900 </ dd >
887- < dt id ="tfjs-wasm " class =" non-default " > tfjs-wasm</ dt >
888- < dt id ="tfjs-wasm-simd " class =" non-default " > tfjs-wasm-simd</ dt >
901+ < dt id ="tfjs-wasm "> tfjs-wasm</ dt >
902+ < dt id ="tfjs-wasm-simd "> tfjs-wasm-simd</ dt >
889903 < dd >
890904 Tests < a href ="https://github.com/tensorflow/tfjs "> Tensorflow.js</ a > pre-trained machine learning
891905 models supported by < a
907921 Source code: in the < a href ="threejs/ "> threejs/</ a > directory.
908922 </ dd >
909923 < dt id ="transformersjs-bert-wasm "> transformersjs-bert-wasm</ dt >
910- < dt id ="transformersjs-whisper-wasm " class =" non-default " > transformersjs-whisper-wasm</ dt >
924+ < dt id ="transformersjs-whisper-wasm "> transformersjs-whisper-wasm</ dt >
911925 < dd >
912926 Two machine learning tasks using the < a
913927 href ="https://huggingface.co/docs/transformers.js/en/index "> Transformers.js</ a > library, which
@@ -938,13 +952,21 @@ <h3>
938952 A similar version of this benchmark was previously published in Octane version 2.
939953 Source code: < a href ="Octane/typescript.js "> typescript.js</ a >
940954 </ 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+ =======
941962 < dt id ="typescript-octane " class ="non-default "> typescript-octane</ dt >
942963 < dd >
943964 The original < a href ="https://developers.google.com/octane/ "> Octane</ a > version of the TypeScript
944965 benchmark. It measures the time it takes the TypeScript compiler to compile a large input file,
945966 stressing the performance of a large-scale JavaScript application with complex data structures.
946967 Source code: < a href ="Octane/typescript.js "> typescript.js</ a >
947968 </ dd >
969+ > > > > > > > main
948970 < dt id ="UniPoker "> UniPoker</ dt >
949971 < dd >
950972 UniPoker is a 5 card stud poker simulation using the Unicode playing card code points,
@@ -987,8 +1009,45 @@ <h3>
9871009
9881010 < p > < a href ="index.html " class ="button "> ← Return to Tests</ a > </ p >
9891011 </ article >
990-
9911012 </ main >
992- </ body >
9931013
994- </ html >
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+ }
1030+
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 >
1052+ </ body>
1053+ </ html>
0 commit comments