1# Copyright 2024 The Chromium Authors 2# Use of this source code is governed by a BSD-style license that can be 3# found in the LICENSE file. 4 5from __future__ import annotations 6 7from typing import Tuple 8 9from crossbench.benchmarks.jetstream.jetstream_3 import (JetStream3Benchmark, 10 JetStream3Probe, 11 JetStream3Story, 12 ProbeClsTupleT) 13 14 15class JetStream30Probe(JetStream3Probe): 16 __doc__ = JetStream3Probe.__doc__ 17 NAME: str = "jetstream_3.0" 18 19 20class JetStream30Story(JetStream3Story): 21 __doc__ = JetStream3Story.__doc__ 22 NAME: str = "jetstream_3.0" 23 URL: str = "https://chromium-workloads.web.app/jetstream/v3.0/" 24 URL_OFFICIAL: str = "https://browserbench.org/JetStream3.0/" 25 SUBSTORIES: Tuple[str, ...] = ( 26 "WSL", 27 "UniPoker", 28 "uglify-js-wtb", 29 "typescript", 30 "tsf-wasm", 31 "tfjs-wasm-simd", 32 "tfjs-wasm", 33 "tagcloud-SP", 34 "sync-fs", 35 "string-unpack-code-SP", 36 "stanford-crypto-sha256", 37 "stanford-crypto-pbkdf2", 38 "stanford-crypto-aes", 39 "splay", 40 "segmentation", 41 "richards-wasm", 42 "richards", 43 "regexp", 44 "regex-dna-SP", 45 "raytrace-public-class-fields", 46 "raytrace-private-class-fields", 47 "raytrace", 48 "quicksort-wasm", 49 "proxy-vue", 50 "proxy-mobx", 51 "prepack-wtb", 52 "pdfjs", 53 "OfflineAssembler", 54 "octane-zlib", 55 "octane-code-load", 56 "navier-stokes", 57 "n-body-SP", 58 "multi-inspector-code-load", 59 "ML", 60 "mandreel", 61 "lebab-wtb", 62 "lazy-collections", 63 "json-stringify-inspector", 64 "json-parse-inspector", 65 "jshint-wtb", 66 "js-tokens", 67 "HashSet-wasm", 68 "hash-map", 69 "gcc-loops-wasm", 70 "gbemu", 71 "gaussian-blur", 72 "float-mm.c", 73 "FlightPlanner", 74 "first-inspector-code-load", 75 "espree-wtb", 76 "earley-boyer", 77 "doxbee-promise", 78 "doxbee-async", 79 "delta-blue", 80 "date-format-xparb-SP", 81 "date-format-tofte-SP", 82 "crypto-sha1-SP", 83 "crypto-md5-SP", 84 "crypto-aes-SP", 85 "crypto", 86 "coffeescript-wtb", 87 "chai-wtb", 88 "cdjs", 89 "Box2D", 90 "bomb-workers", 91 "bigint-paillier", 92 "bigint-noble-secp256k1", 93 "bigint-noble-ed25519", 94 "bigint-noble-bls12-381", 95 "bigint-bigdenary", 96 "Basic", 97 "base64-SP", 98 "babylon-wtb", 99 "Babylon", 100 "async-fs", 101 "argon2-wasm-simd", 102 "argon2-wasm", 103 "Air", 104 "ai-astar", 105 "acorn-wtb", 106 "8bitbench-wasm", 107 "3d-raytrace-SP", 108 "3d-cube-SP", 109 ) 110 111 112class JetStream30Benchmark(JetStream3Benchmark): 113 """ 114 Benchmark runner for JetStream 3.0. 115 """ 116 117 NAME: str = "jetstream_3.0" 118 DEFAULT_STORY_CLS = JetStream30Story 119 PROBES: ProbeClsTupleT = (JetStream30Probe,) 120 121 @classmethod 122 def version(cls) -> Tuple[int, ...]: 123 return (3, 0) 124 125 @classmethod 126 def aliases(cls) -> Tuple[str, ...]: 127 return ("js3", "jetstream_3") + super().aliases() 128