| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
Improve performance by transferring information about write status to JS through an `AliasedBuffer`, rather than object properties set from C++.
|
@addaleax build started: https://ci.nodejs.org/blue/organizations/jenkins/node-test-pull-request-lite-pipeline/detail/node-test-pull-request-lite-pipeline/1354/pipeline |
Sorry, something went wrong.
Sorry, something went wrong.
|
Benchmarks looked good but had some isolated negative instances – I’d like to make sure these aren’t real performance regressions… Benchmark CI again (net-c2s.js only, more iterations): https://ci.nodejs.org/view/Node.js%20benchmark/job/benchmark-node-micro-benchmarks/253/ |
Sorry, something went wrong.
|
Think I figured out why the benchmarks had that weird drop for ASCII writes. (Edit: No, my mistake.) New benchmark CI: https://ci.nodejs.org/view/Node.js%20benchmark/job/benchmark-node-micro-benchmarks/254/ |
Sorry, something went wrong.
|
So … the most recent full benchmark (https://ci.nodejs.org/view/Node.js%20benchmark/job/benchmark-node-micro-benchmarks/254/) shows a significant -8 % regression for one of the large-buffer ASCII variants of a benchmark. Running only that benchmark with a few more iterations (https://ci.nodejs.org/view/Node.js%20benchmark/job/benchmark-node-micro-benchmarks/255/) shows a significant 5 % increase. (I did not reproduce either locally.) I don’t quite know how to make sense of that – I don’t understand how this patch would lead to a regression, and the high significance levels in the different benchmarks would make my first guess that it’s related to how we benchmark things, so I’d feel comfortable going ahead with it (especially in like of the more common significant improvements), but I wanted to point this out in case anybody felt differently. |
Sorry, something went wrong.
|
Resume CI again: https://ci.nodejs.org/job/node-test-pull-request/18182/ |
Sorry, something went wrong.
Improve performance by transferring information about write status to JS through an `AliasedBuffer`, rather than object properties set from C++. PR-URL: nodejs#23843 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Anatoli Papirovski <apapirovski@mac.com>
Improve performance by transferring information about write status to JS through an `AliasedBuffer`, rather than object properties set from C++. PR-URL: #23843 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Anatoli Papirovski <apapirovski@mac.com>
Improve performance by transferring information about write status to JS through an `AliasedBuffer`, rather than object properties set from C++. PR-URL: #23843 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Anatoli Papirovski <apapirovski@mac.com>
|
Is this something we would want to backport to LTS? I'm assuming it would likely have to be the entire StreamBase refactor in one go. |
Sorry, something went wrong.
I think it might be better not to.
Not really, no. It’s like all other changes – some commits make sense to backport, others have a nonzero risk of breakage (although I try to run CITGM on all of them). |
Sorry, something went wrong.
| Back | FazBrowse Home | New Git URL |
Improve performance by transferring information about write status
to JS through an AliasedBuffer, rather than object properties
set from C++.
Checklist