Skip to content

Releases: krausest/js-framework-benchmark

Chrome 105

03 Sep 17:50
Compare
Choose a tag to compare

Results are updated for chrome 105:
https://krausest.github.io/js-framework-benchmark/2022/table_chrome_105.0.5195.102.html

Attached you find a binary build of all frameworks such that you can run the benchmark without installing and building all frameworks (see README for how to use the build.zip)

Discussion:
Looks like no big changes. Seems like the remove row benchmark got worse for a few fast frameworks like e.g. solid, wasm- bindgen and blockdom. Maybe we'll add a CPU slowdown for the remove benchmark in the next run.
Select row has already a really high CPU slowdown and we should observe whether the values are still meaningful (1more and blockdom were a bit slower than the other fast frameworks for chrome 104 too).

Chrome 104

04 Aug 20:56
Compare
Choose a tag to compare

Results for chrome 104 are in: https://krausest.github.io/js-framework-benchmark/2022/table_chrome_104.0.5112.79.html
Once again on my MacBook Air M1. I used puppeteer for this run, playwright reported a bit strange results for remove row.

Chrome 103

26 Jun 20:06
Compare
Choose a tag to compare

Results for chrome 103 are ready: https://krausest.github.io/js-framework-benchmark/2022/table_chrome_103.0.5060.53_osx.html
This time I wanted to use my MacBook Air. I decided to use a cloud vm to build the frameworks. This was a bit more work than I thought.
I switched to latest node tls (v16.15.1). Running npm ci caused an update of most lock files and was incredibly slow, so I decided to npm install all frameworks which broke quite a few of them.
As a target platform to build and host the frameworks I decided to play with a virtual cloud server. So far the framework information (e.g. version) was loaded from the disk, and only the assembled files were loaded over http. I switched from lws to an express server that also provides the framework information. npm start starts this server now.
Overall I'm not happy with the large standard error in the create 1,000 rows benchmark. Maybe I find the time to check linux results (though the days of my linux laptop are mostly gone).

As usual the attached zip file contains all precompiled frameworks. Just unzip in the js-framework-benchmark root dir, start the web server npm start and start running the benchmark npm run bench

Chrome 102

27 May 17:24
Compare
Choose a tag to compare

Results for chrome 102 are published: https://krausest.github.io/js-framework-benchmark/2022/table_chrome_102.0.5005.61.html

Attached is a zip file with all precompiled frameworks. Just unzip in the js-framework-benchmark root dir, start the web server npm start and start running the benchmark npm run bench
build.zip

Chrome 101

28 Apr 19:19
Compare
Choose a tag to compare

Results for chrome 101 are published: https://krausest.github.io/js-framework-benchmark/2022/table_chrome_101.0.4951.41.html

Please note that for some benchmarks (most notably create 1k and 10k rows) the variance of the measurement increased in comparison to chrome 100. This is rather bad, since ideally we'd like to have low variance since only that guarantees stable results.

(build.zip is experimental. It should allow unzipping in the js-framework-benchmark directory and install the compiled files for all implementations such that building them locally is optional. This note will be updated when I did some further tests.)

Chrome 100

20 Apr 10:02
Compare
Choose a tag to compare

Results for chrome 100 are finally published: https://krausest.github.io/js-framework-benchmark/2022/table_chrome_100.0.4896.127.html

Please note that I had to replace the test runner. The Webdriver benchmark driver returned strange results that could neither be explained nor reproduced for clear rows. Thus I switched to puppeteer. Sadly the variance in the measurement has gone up and numbers appear not to be directly comparable to the older webdriver results such that I'm not publishing the chart showing the performance across chrome versions. See #1020 for the full drama.

(build.zip is experimental. It should allow unzipping in the js-framework-benchmark directory and install the compiled files for all implementations such that building them locally is optional. This note will be updated when I did some further tests.)

Chrome 99

04 Mar 17:37
Compare
Choose a tag to compare

Results for chrome 99 are published: https://krausest.github.io/js-framework-benchmark/2022/table_chrome_99.0.4844.51.html

Looks like no big changea in chrome's performance (maybe except alpine for clear row, which got much faster):
Screenshot from 2022-03-04 18-32-11

Chrome 98 results

03 Feb 20:01
Compare
Choose a tag to compare

Results for chrome 98 are published: https://krausest.github.io/js-framework-benchmark/2022/table_chrome_98.0.4758.80.html

Here's the chart for vanillajs-keyed for the latest chrome versions:

Screenshot from 2022-02-03 20-59-37