Manual-sync mirror of chromium.googlesource.com/external/github.com/WebKit/Speedometer.git
Find a file
Camillo Bruni ed40d3fcaf
Reduce newssite image asset count (#565)
Reduce the number of pre-generated images in newssite next and nuxt from 343 to 20 each.
The high file count causes delays when using the service workers.

Reduce image count
- Udpate news site ressources to use the limited image set
- Add build script to update ressources.txt for news-nuxt / next
2026-07-15 13:58:06 +02:00
.github/workflows Add support for running tests in nodejs (#559) 2026-07-14 16:59:05 +02:00
resources Add complexity param (#430) 2026-07-14 17:03:35 +02:00
suites Reduce newssite image asset count (#565) 2026-07-15 13:58:06 +02:00
suites-experimental Add complexity param (#430) 2026-07-14 17:03:35 +02:00
tests Reduce newssite image asset count (#565) 2026-07-15 13:58:06 +02:00
.eslintignore Format and lint script fixes (#560) 2026-07-13 22:26:13 +02:00
.eslintrc Add root: true to the top level eslint configuration file 2024-01-23 14:07:58 +01:00
.gitignore Open Update .gitignore file (#556) 2026-07-08 09:53:41 +02:00
.npmrc Dev setup (#55) 2023-01-30 14:52:46 -08:00
.prettierignore Format and lint script fixes (#560) 2026-07-13 22:26:13 +02:00
.prettierrc Experimental Workload: Responsive Design (#453) 2026-06-01 16:28:42 -07:00
about.html Use "next" as version on main consistently (#497) 2025-04-16 18:44:59 +02:00
babel.config.json Ember - Step 2 - format from root / cleanup (#119) 2023-03-30 18:13:18 +02:00
Development.md Change default port to 8900 (#429) 2024-09-10 13:09:29 -07:00
Governance.md Add Eslint & Prettier (#57) 2023-02-08 13:53:53 -08:00
index.html Add measurePrepare param (#440) 2025-05-27 16:28:45 +02:00
instructions.html Use "next" as version on main consistently (#497) 2025-04-16 18:44:59 +02:00
LICENSE Update license dates, add Microsoft (#393) 2024-03-05 12:09:16 -08:00
netlify.toml Add a netlify configuration file (#472) 2025-01-22 14:40:54 +01:00
package-lock.json Better test error logging (#527) 2026-06-16 15:41:24 +02:00
package.json Add support for running tests in nodejs (#559) 2026-07-14 16:59:05 +02:00
README.md Add Measurement and Scoring details to README.md (#467) 2025-01-08 11:26:46 +01:00
Testing.md Add support for running tests in nodejs (#559) 2026-07-14 16:59:05 +02:00

What is Speedometer?

Speedometer is a benchmark for web browsers that measures Web application responsiveness by timing simulated user interactions on various workloads. Our primary goal is to make it reflect the real-world Web as much as possible. When a browser improves its score on the benchmark, actual users should benefit. In order to achieve this, it should:

  • Test end-to-end user journeys instead of testing specific features in a tight loop. Each test should exercise the full set of what’s needed from the engine in order for a user to accomplish a task.
  • Evolve over time, adapting to the present Web on a regular basis. This should be informed by current usage data, and by consensus about features which are important for engines to optimize to provide a consistent experience for users and site authors.
  • Be accessible to the public and useful to browser engineers. It should run in every modern browser by visiting a normal web page. It should run relatively quickly, while providing enough test coverage to be reflective of the real-world Web.

Score and Test Measurement

Each test can contain several steps who contributed to the test duration. Note that the prepare step of a test is unmeasured and thus does not contribute to the score. All following test steps are measured and summed up in the test step time.

Each step consists of the following phases:

Sync:
Time spent in synchronous JS execution.
Async:
Time spent in asynchronous JS like Promise or setTimeout tasks scheduled by the sync-step.

Score

The final benchmark score is calculated based of the inverse of geomean of all tests. We average the score over multiple iterations with the arithmetic mean. By using the geomean to combine the test durations we maintain the invariant that relative improvements are favoured equally amongst all tests, even though they can have vastly different durations.