Skip to content

benchmark: remove duplicate ffi add-64 benchmark - #66121

Open
soulee-dev wants to merge 1 commit into
nodejs:mainfrom
soulee-dev:benchmark-ffi-remove-add-64
Open

soulee-dev wants to merge 1 commit into
nodejs:mainfrom
soulee-dev:benchmark-ffi-remove-add-64

Conversation

@soulee-dev

Copy link
Copy Markdown
Contributor

benchmark/ffi/add-64.js and benchmark/ffi/add-f64.js measured the same
thing: both dlopen the fixture library, bind add_f64 with the signature
{ return: 'f64', arguments: ['f64', 'f64'] }, and call it n = 1e7 times.
The only difference was the argument constants (add(20.5, 21.5) vs
add(1.5, 2.5)), which does not change what is being measured.

add-f64.js came first (#62918). add-64.js was added later in #63068 as
part of a batch of add-* benchmarks; git records it as a copy of
add-f64.js with only the constants changed to that batch's convention, and
nothing in the review of either PR treats it as a distinct case. Nothing in
benchmark/, doc/, test/ or tools/ references the add-64 name.

This removes add-64.js and keeps add-f64.js, whose name matches the
add_f64 symbol it measures and the naming of the other add-<type>.js
files.

Verified locally:

$ NODE=$PWD/out/Release/node make lint-js
$ out/Release/node benchmark/ffi/add-f64.js n=1000
ffi/add-f64.js n=1000: 6,655,574.04
$ python3 tools/test.py -j 4 ffi
[00:02|% 100|+  13|-   0]: Done

Refs: #63068
Refs: #62918

add-64.js measured the same add_f64 symbol with the same signature as
add-f64.js and differed only in its argument constants.

Signed-off-by: Soul Lee <alus20x@gmail.com>
@nodejs-github-bot

Copy link
Copy Markdown
Collaborator

Review requested:

  • @nodejs/performance

@nodejs-github-bot nodejs-github-bot added benchmark Issues and PRs related to Node.js benchmarks and benchmarking infrastructure. ffi Issues and PRs related to experimental Foreign Function Interface support. labels Sep 19, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

benchmark Issues and PRs related to Node.js benchmarks and benchmarking infrastructure. ffi Issues and PRs related to experimental Foreign Function Interface support.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants