Skip to content

bench_runner: replace Kahan summation with MathSumPrecise - #67222

Merged
nodejs-github-bot merged 3 commits into
nodejs:mainfrom
LiviaMedeiros:bench-kahan-sumprecise
Nov 5, 2026
Merged

nodejs-github-bot merged 3 commits into
nodejs:mainfrom
LiviaMedeiros:bench-kahan-sumprecise

Conversation

@LiviaMedeiros

Copy link
Copy Markdown
Member

In v27.x we can sum numbers natively.

@LiviaMedeiros LiviaMedeiros added dont-land-on-v22.x PRs that should not land on the v22.x-staging branch and should not be released in v22.x. dont-land-on-v24.x PRs that should not land on the v24.x-staging branch and should not be released in v24.x. dont-land-on-v26.x PRs that should not land on the v26.x-staging branch and should not be released in v26.x. labels Nov 3, 2026
@nodejs-github-bot nodejs-github-bot added the needs-ci PRs that need a full CI run. label Nov 3, 2026
Signed-off-by: LiviaMedeiros <livia@cirno.name>
@LiviaMedeiros
LiviaMedeiros force-pushed the bench-kahan-sumprecise branch from 3c7f798 to faa106d Compare November 3, 2026 11:05
@LiviaMedeiros LiviaMedeiros added the lib / src Issues and PRs involving general changes in the lib/ or src/ directories. label Nov 3, 2026
@codecov

codecov Bot commented Nov 3, 2026 •

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 90.71%. Comparing base (96de0e2) to head (525314b).
⚠️ Report is 32 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main   #67222      +/-   ##
==========================================
- Coverage   92.99%   90.71%   -2.29%     
==========================================
  Files         428      797     +369     
  Lines      195633   278888   +83255     
  Branches    30268    53633   +23365     
==========================================
+ Hits       181937   252986   +71049     
- Misses      13369    16266    +2897     
- Partials      327     9636    +9309     
Files with missing lines Coverage Δ
lib/internal/bench_runner/benchmark.js 99.65% <100.00%> (-0.01%) ⬇️

... and 500 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Comment thread lib/internal/bench_runner/benchmark.js Resolved
LiviaMedeiros and others added 2 commits November 3, 2026 23:51
Co-authored-by: Antoine du Hamel <duhamelantoine1995@gmail.com>
Signed-off-by: LiviaMedeiros <livia@cirno.name>
@LiviaMedeiros LiviaMedeiros added the request-ci Add this label to start a Jenkins CI on a PR. Only starts once the PR has an approving review. label Nov 3, 2026
@github-actions github-actions Bot removed the request-ci Add this label to start a Jenkins CI on a PR. Only starts once the PR has an approving review. label Nov 3, 2026
@nodejs-github-bot

Copy link
Copy Markdown
Collaborator

@nodejs-github-bot

Copy link
Copy Markdown
Collaborator

@aduh95 aduh95 added author ready PRs with CI started, the required approvals, and no outstanding review comments. commit-queue PRs queued for automated landing through the Commit Queue. labels Nov 5, 2026
@nodejs-github-bot nodejs-github-bot added commit-queue-failed PRs whose Commit Queue landing failed and need manual intervention before retrying. and removed commit-queue PRs queued for automated landing through the Commit Queue. labels Nov 5, 2026
@nodejs-github-bot

Copy link
Copy Markdown
Collaborator

Commit Queue failed

This pull request has multiple commits, but no landing policy was selected.

Add commit-queue-squash PRs the Commit Queue should land as one squashed commit. to land it as one commit, or commit-queue-rebase PRs the Commit Queue should land as multiple self-contained commits. to land the commits separately.

The pull request was removed from the Commit Queue and labeled commit-queue-failed PRs whose Commit Queue landing failed and need manual intervention before retrying. . After resolving the failure, remove that label and add commit-queue PRs queued for automated landing through the Commit Queue. to retry.

Full Commit Queue output
�[36m⠋�[39m Loading data for nodejs/node/pull/67222
�[36m⠋�[39m Loading data for nodejs/node/pull/67222
�[36m⠋�[39m Getting collaborator contacts from README of nodejs/node
�[36m⠋�[39m Getting PR from nodejs/node/pull/67222
�[36m⠋�[39m Getting reviews from nodejs/node/pull/67222
�[36m⠋�[39m Getting comments from nodejs/node/pull/67222
�[36m⠋�[39m Getting commits from nodejs/node/pull/67222
✔  Done loading data for nodejs/node/pull/67222
----------------------------------- PR info ------------------------------------
Title      bench_runner: replace Kahan summation with `MathSumPrecise` (#67222)
Author     Livia Medeiros <livia@cirno.name> (@LiviaMedeiros)
Branch     LiviaMedeiros:bench-kahan-sumprecise -> nodejs:main
Labels     lib / src, author ready, needs-ci, commit-queue, dont-land-on-v22.x, dont-land-on-v24.x, dont-land-on-v26.x
Commits    3
 - lib: replace Kahan summation with `MathSumPrecise`
 - Update lib/internal/bench_runner/benchmark.js
 - squash: import `SafeArrayIterator`
Committers 2
 - LiviaMedeiros <livia@cirno.name>
 - GitHub <noreply@github.com>
PR-URL: https://github.com/nodejs/node/pull/67222
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
------------------------------ Generated metadata ------------------------------
PR-URL: https://github.com/nodejs/node/pull/67222
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
--------------------------------------------------------------------------------
   ℹ  This PR was created on Tue, 03 Nov 2026 10:48:32 GMT
   ✔  Approvals: 2
   ✔  - Luigi Pinca (@lpinca): https://github.com/nodejs/node/pull/67222#pullrequestreview-5759984386
   ✔  - Antoine du Hamel (@aduh95) (TSC): https://github.com/nodejs/node/pull/67222#pullrequestreview-5788490888
   ✔  Last GitHub CI successful
   ℹ  Last Full PR CI on 2026-11-05T08:10:12Z: https://ci.nodejs.org/job/node-test-pull-request/78855/
�[36m⠙�[39m Querying data for job/node-test-pull-request/78855/
�[36m⠙�[39m Querying data for job/node-test-pull-request/78855/
�[36m⠙�[39m Querying API for job/node-test-pull-request/78855/
✔  Build data downloaded
   ✔  Last Jenkins CI successful
--------------------------------------------------------------------------------
   ✔  No git cherry-pick in progress
   ✔  No git am in progress
   ✔  No git rebase in progress
--------------------------------------------------------------------------------
�[36m⠹�[39m Bringing origin/main up to date...
�[36m⠹�[39m Bringing origin/main up to date...
From https://github.com/nodejs/node
 * branch                  main       -> FETCH_HEAD
✔  origin/main is now up-to-date
�[36m⠸�[39m Downloading patch for 67222
�[36m⠸�[39m Downloading patch for 67222
From https://github.com/nodejs/node
 * branch                  refs/pull/67222/merge -> FETCH_HEAD
✔  Fetched commits as 8337f973de8e..525314bf5add
--------------------------------------------------------------------------------
[main 4fa8886613] lib: replace Kahan summation with `MathSumPrecise`
 Author: LiviaMedeiros <livia@cirno.name>
 Date: Tue Nov 3 18:26:09 2026 +0800
 1 file changed, 2 insertions(+), 13 deletions(-)
[main 98770afe79] Update lib/internal/bench_runner/benchmark.js
 Author: Livia Medeiros <livia@cirno.name>
 Date: Tue Nov 3 23:51:23 2026 +0800
 1 file changed, 1 insertion(+), 1 deletion(-)
[main 216020cf45] squash: import `SafeArrayIterator`
 Author: LiviaMedeiros <livia@cirno.name>
 Date: Tue Nov 3 23:56:27 2026 +0800
 1 file changed, 1 insertion(+)
   ✔  Patches applied
There are 3 commits in the PR. Attempting autorebase.
(node:390) [DEP0190] DeprecationWarning: Passing args to a child process with shell option true can lead to security vulnerabilities, as the arguments are not escaped, only concatenated.
(Use `node --trace-deprecation ...` to show where the warning was created)
Rebasing (2/6)
Executing: git node land --amend --yes
--------------------------------- New Message ----------------------------------
lib: replace Kahan summation with `MathSumPrecise`

Signed-off-by: LiviaMedeiros <livia@cirno.name>
PR-URL: https://github.com/nodejs/node/pull/67222
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
--------------------------------------------------------------------------------
[detached HEAD 1e9c2d00a6] lib: replace Kahan summation with `MathSumPrecise`
 Author: LiviaMedeiros <livia@cirno.name>
 Date: Tue Nov 3 18:26:09 2026 +0800
 1 file changed, 2 insertions(+), 13 deletions(-)
Rebasing (3/6)
Rebasing (4/6)
Executing: git node land --amend --yes
--------------------------------- New Message ----------------------------------
Update lib/internal/bench_runner/benchmark.js

Co-authored-by: Antoine du Hamel <duhamelantoine1995@gmail.com>
PR-URL: https://github.com/nodejs/node/pull/67222
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
--------------------------------------------------------------------------------
[detached HEAD 962e877594] Update lib/internal/bench_runner/benchmark.js
 Author: Livia Medeiros <livia@cirno.name>
 Date: Tue Nov 3 23:51:23 2026 +0800
 1 file changed, 1 insertion(+), 1 deletion(-)
Rebasing (5/6)
Rebasing (6/6)
Executing: git node land --amend --yes
--------------------------------- New Message ----------------------------------
squash: import `SafeArrayIterator`

Signed-off-by: LiviaMedeiros <livia@cirno.name>
PR-URL: https://github.com/nodejs/node/pull/67222
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
--------------------------------------------------------------------------------
[detached HEAD 3922575343] squash: import `SafeArrayIterator`
 Author: LiviaMedeiros <livia@cirno.name>
 Date: Tue Nov 3 23:56:27 2026 +0800
 1 file changed, 1 insertion(+)
Successfully rebased and updated refs/heads/main.
--------------------------------------------------------------------------------
   ℹ  Add `commit-queue-squash` label to land the PR as one commit, or `commit-queue-rebase` to land as separate commits.

View workflow run

@LiviaMedeiros LiviaMedeiros added commit-queue PRs queued for automated landing through the Commit Queue. commit-queue-squash PRs the Commit Queue should land as one squashed commit. and removed commit-queue-failed PRs whose Commit Queue landing failed and need manual intervention before retrying. labels Nov 5, 2026
@nodejs-github-bot
nodejs-github-bot merged commit 708f09c into nodejs:main Nov 5, 2026
80 checks passed
@nodejs-github-bot

Copy link
Copy Markdown
Collaborator

Landed in 708f09c

@nodejs-github-bot nodejs-github-bot removed the commit-queue PRs queued for automated landing through the Commit Queue. label Nov 5, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

author ready PRs with CI started, the required approvals, and no outstanding review comments. commit-queue-squash PRs the Commit Queue should land as one squashed commit. dont-land-on-v22.x PRs that should not land on the v22.x-staging branch and should not be released in v22.x. dont-land-on-v24.x PRs that should not land on the v24.x-staging branch and should not be released in v24.x. dont-land-on-v26.x PRs that should not land on the v26.x-staging branch and should not be released in v26.x. lib / src Issues and PRs involving general changes in the lib/ or src/ directories. needs-ci PRs that need a full CI run.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants