Skip to content

Reorganize workloads into a top-level workloads/ directory - #318

Open
harini9803 wants to merge 1 commit into
WebKit:mainfrom
harini9803:workload-directory-reorganization
Open

harini9803 wants to merge 1 commit into
WebKit:mainfrom
harini9803:workload-directory-reorganization

Conversation

@harini9803

Copy link
Copy Markdown

Fixes #276.

Pure cleanup/reorg — no workload was changed materially.

  • All workloads now live under workloads/.
  • Each workload has its own subdirectory named exactly after its registered
    name, except closely-related workloads that share files (ARES-6, Octane,
    RexBench, SeaMonster, SunSpider, bigint, proxy, code-load, babylonjs,
    prismjs, transformersjs, Dart, dotnet, tfjs-wasm, intl,
    web-tooling-benchmark).
  • The wasm/ grouping is gone; Wasm workloads sit next to the JS ones.
  • simple/, generators/, class-fields/ and worker/ were split, since
    their workloads shared no files.

912 of the 926 changed files are pure renames. Content edits are limited to
five root files (JetStreamDriver.js, in-depth.html, .prettierignore,
.gitignore, tests/run-license.mjs) and nine workload files: four
webpack.config.mjs (../utils -> ../../utils), three sources with
hardcoded root-relative paths (below), plus a stale comment in
argon2-wasm/benchmark.js and a stale link in dotnet/README.md.

Testing

  • test:chrome -- default — 77 benchmarks, 0 failures
  • test:chrome -- disabled — 17 benchmarks, 0 failures
  • test:in-depth — 4/4, incl. the relative-link check
  • test:license — passes; verified no files silently dropped from checking
  • prettier — unchanged (same pre-existing warnings as main)
  • V8 shell (jsvu v15.6.21): unit tests, CLI, proxy-mobx, grouped SunSpider,
    and argon2-wasm — the last one exercises the compressed-resource path that
    loads zlib-wasm/shell.js.

Firefox/Safari, and the jsc/spidermonkey shells, are left to CI.

Notes for review

  • Besides the mechanical path updates, three workload sources had root-relative
    paths hardcoded inside them — invisible to the driver's files/preload
    lists: transformersjs/benchmark.js (localModelPath and the ONNX mjs
    prefix), tfjs-wasm/tfjs.js (WASM_TFJS_DIR), and zlib-wasm/shell.js
    (shell-only zlib polyfill).
  • test:build triggers on changed directories, and every workload directory
    moved, so CI will rebuild all 8 buildable workloads — expect a long run.
  • wasm/tsf.js / wasm/tsf.wasm are unreferenced leftovers from the initial
    WebKit import, superseded by tsf-wasm/build/. I moved rather than deleted
    them — happy to drop them in a follow-up if you'd prefer.
  • RexBench/sunspider_benchmark.js references SunSpider/...; it's a legacy
    standalone harness not registered in BENCHMARKS, and that path was already
    broken before this change, so I left it alone.

Pure cleanup/reorg; no workload changed materially.

- Move every workload under workloads/.
- Each workload gets its own subdirectory named exactly after its
  registered name, except closely-related workloads that share files
  (ARES-6, Octane, RexBench, SeaMonster, SunSpider, bigint, proxy,
  code-load, babylonjs, prismjs, transformersjs, Dart, dotnet,
  tfjs-wasm, intl, web-tooling-benchmark).
- Drop the wasm/ grouping; Wasm workloads now sit next to the JS ones.

Renamed to match workload names: wasm/HashSet -> HashSet-wasm,
wasm/TSF -> tsf-wasm, wasm/quicksort -> quicksort-wasm,
wasm/gcc-loops -> gcc-loops-wasm, wasm/richards -> richards-wasm,
wasm/argon2 -> argon2-wasm, wasm/zlib -> zlib-wasm,
wasm/j2cl-box2d -> j2cl-box2d-wasm, wasm/dotnet -> dotnet,
sqlite3 -> sqlite3-wasm, 8bitbench -> 8bitbench-wasm,
Kotlin-compose -> Kotlin-compose-wasm, mobx -> mobx-startup,
TypeScript -> typescript-lib, ARES-6/ml -> ARES-6/ML.

Split directories whose workloads shared no files: simple/,
generators/, class-fields/, worker/.

Updated path references in JetStreamDriver.js, in-depth.html,
.prettierignore, .gitignore, tests/run-license.mjs, four
webpack.config.mjs files (../utils -> ../../utils), and the
root-relative paths hardcoded inside workload sources:
transformersjs/benchmark.js (localModelPath, onnx mjs prefix),
tfjs-wasm/tfjs.js (WASM_TFJS_DIR), zlib-wasm/shell.js.
@netlify

netlify Bot commented Sep 20, 2026

Copy link
Copy Markdown

Deploy Preview for webkit-jetstream-preview ready!

Name Link
🔨 Latest commit d2c65db
🔍 Latest deploy log https://app.netlify.com/projects/webkit-jetstream-preview/deploys/6aaf6f2731905a0008ee5705
😎 Deploy Preview https://deploy-preview-318--webkit-jetstream-preview.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
🤖 Make changes Run an agent on this branch

To edit notification comments on pull requests, go to your Netlify project configuration.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Cleanup workload directory structure

1 participant