Repository navigation
Fs benchmarks take 10+ hours #49689
Description
Activity
- addedfsIssues and PRs related to file-system APIs and the fs module.Issues and PRs related to file-system APIs and the fs module.benchmarkIssues and PRs related to Node.js benchmarks and benchmarking infrastructure.Issues and PRs related to Node.js benchmarks and benchmarking infrastructure.
on Sep 17, 2023 I think the fs benchmarks are having the same kind of issue that happen to many other benchmarks - they have a bit too many combinations of the parameters, and some of them are unnecessary. For example there are usually too many
size/lenvariations. For example in this.node/benchmark/fs/readfile-promises.js
Lines 17 to 24 in cdcb01a
len: [ 1024, 512 * 1024, 4 * 1024 ** 2, 8 * 1024 ** 2, 16 * 1024 ** 2, 32 * 1024 ** 2, ], We probably just need 2-3 combinations by default. Or at least only pick 2-3 combinations when we are running the entire fs benchmark. There could be something OS-specific about them to make certain options not representative enough to be in that default set but I think we can always expand the variations when there's actually any doubt.
Reacted by Yagiz Nizipli and Vinicius LourençoI think the fs benchmarks are having the same kind of issue that happen to many other benchmarks - they have a bit too many combinations of the parameters, and some of them are unnecessary.
This would probably be solved by #39285
Also related nodejs/build#3483.
We could also make benchmark iterations scalable. Running a few benchmarks for 1e5 iterations is usually not a problem, but running all benchmarks for 1e5 iterations might be.
Reacted by Yagiz Nizipli and Erick WendelI usually start with 1e7 iterations, and if it takes more time than I can bear, I reduce it by a factor of 10 and check if the benched result is not significantly different. Rinse and repeat.
Is possible to create some kind of repo/issue to track slow benchmarks? Like we have for flaky tests?
github-actions commented
on May 28, 2026 on May 28, 2026 – with GitHub ActionsContributorMore actionsThis issue has been marked as stale due to 210 days of inactivity.
It will be automatically closed in 30 days if no further activity occurs. If this is still relevant, please leave a comment or update it to keep it open.- addedstaleIssues and PRs marked stale due to inactivity and scheduled for automatic closure.Issues and PRs marked stale due to inactivity and scheduled for automatic closure.
on May 28, 2026 github-actions commented
on Jun 28, 2026 on Jun 28, 2026 – with GitHub ActionsContributorMore actionsThis issue has been automatically closed after 30 days of inactivity following its stale status (no activity for a total of 240 days).
If this is still relevant, feel free to reopen it or leave a comment with additional details so we can continue the discussion.
Current node:fs benchmarks take 10+ hours on our CI, making it impossible to run all of them and have a healthy emotional state. It also blocks other benchmark jobs.
I recommend aiming for 2-3 hours and changing the benchmarks according to fit into this deadline.
cc @nodejs/performance