-
Notifications
You must be signed in to change notification settings - Fork 29.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fs: remove custom Buffer pool for streams #33981
Conversation
cf19ba7
to
b58a7bb
Compare
Needs a CI and benchmark CI... However, at the moment I'm unable to start either for some reason. Will try again tomorrow. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can you also update the comment on line 134 in test-crypto-authenticated-stream.js?
The performance benefit of using a custom pool are negligable. Furthermore, it causes problems with Workers and transferrable. Rather than further adding complexity for compat with Workers, just remove the pooling logic. Refs: nodejs#33880 (comment) Fixes: nodejs#31733
Needs a CI and benchmark CI |
Slower with a low highwatermark < 4k, which is expected and I think that's acceptable as I don't see that being a common case at all. 19:58:22 fs/read-stream-throughput.js n=1024 highWaterMark=1024 filesize=1024000 encodingType='asc' *** -11.00 % ±3.01% ±4.01% ±5.22%
19:58:22 fs/read-stream-throughput.js n=1024 highWaterMark=1024 filesize=1024000 encodingType='buf' *** -10.15 % ±3.46% ±4.61% ±6.01%
19:58:22 fs/read-stream-throughput.js n=1024 highWaterMark=1024 filesize=1024000 encodingType='utf' *** -6.08 % ±2.53% ±3.37% ±4.40%
19:58:22 fs/read-stream-throughput.js n=1024 highWaterMark=1048576 filesize=1024000 encodingType='asc' 1.28 % ±4.14% ±5.52% ±7.20%
19:58:22 fs/read-stream-throughput.js n=1024 highWaterMark=1048576 filesize=1024000 encodingType='buf' * 14.52 % ±13.09% ±17.42% ±22.67%
19:58:22 fs/read-stream-throughput.js n=1024 highWaterMark=1048576 filesize=1024000 encodingType='utf' 17.52 % ±20.33% ±27.07% ±35.28%
19:58:22 fs/read-stream-throughput.js n=1024 highWaterMark=4096 filesize=1024000 encodingType='asc' -0.39 % ±2.94% ±3.91% ±5.10%
19:58:22 fs/read-stream-throughput.js n=1024 highWaterMark=4096 filesize=1024000 encodingType='buf' * -4.47 % ±3.36% ±4.47% ±5.83%
19:58:22 fs/read-stream-throughput.js n=1024 highWaterMark=4096 filesize=1024000 encodingType='utf' -1.49 % ±2.29% ±3.05% ±3.97%
19:58:22 fs/read-stream-throughput.js n=1024 highWaterMark=65535 filesize=1024000 encodingType='asc' -1.46 % ±8.08% ±10.75% ±13.99%
19:58:22 fs/read-stream-throughput.js n=1024 highWaterMark=65535 filesize=1024000 encodingType='buf' -0.84 % ±7.46% ±9.94% ±12.96%
19:58:22 fs/read-stream-throughput.js n=1024 highWaterMark=65535 filesize=1024000 encodingType='utf' -0.54 % ±6.16% ±8.19% |
@nodejs/crypto: Got problems with two crypto failures https://ci.nodejs.org/job/node-test-commit-linux-containered/20895/ Any ideas? |
@ronag I've opened nodejs/build#2363 for the setAAD issue. Didn't the crypto check fix the other test failure? |
Doesn't seem so. Which confuses me. I'll try another CI. |
@bnoordhuis: Still failing... Do I need to do anything further than ca1d829? |
Landed in db0e991 |
The performance benefit of using a custom pool are negligable. Furthermore, it causes problems with Workers and transferrable. Rather than further adding complexity for compat with Workers, just remove the pooling logic. Refs: #33880 (comment) Fixes: #31733 PR-URL: #33981 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
@ronag could you please backport this to v14.x? It conflicted in a handful of places and I didn't want to try my luck 😅 |
The performance benefit of using a custom pool are negligable. Furthermore, it causes problems with Workers and transferrable. Rather than further adding complexity for compat with Workers, just remove the pooling logic. Refs: nodejs#33880 (comment) Fixes: nodejs#31733 PR-URL: nodejs#33981 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
The performance benefit of using a custom pool are negligable. Furthermore, it causes problems with Workers and transferrable. Rather than further adding complexity for compat with Workers, just remove the pooling logic. Refs: #33880 (comment) Fixes: #31733 PR-URL: #33981 Backport-PR-URL: #38397 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
The `test-crypto-authenticated-stream` test was moved out of `test/known_issues` and now lives in `test/parallel` PR-URL: #47454 Refs: #33981 Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Moshe Atlow <moshe@atlow.co.il> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Rich Trott <rtrott@gmail.com>
The `test-crypto-authenticated-stream` test was moved out of `test/known_issues` and now lives in `test/parallel` PR-URL: #47454 Refs: #33981 Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Moshe Atlow <moshe@atlow.co.il> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Rich Trott <rtrott@gmail.com>
The `test-crypto-authenticated-stream` test was moved out of `test/known_issues` and now lives in `test/parallel` PR-URL: #47454 Refs: #33981 Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Moshe Atlow <moshe@atlow.co.il> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Rich Trott <rtrott@gmail.com>
The `test-crypto-authenticated-stream` test was moved out of `test/known_issues` and now lives in `test/parallel` PR-URL: nodejs#47454 Refs: nodejs#33981 Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Moshe Atlow <moshe@atlow.co.il> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Rich Trott <rtrott@gmail.com>
Refs: #33880 (comment)
Fixes: #31733
Checklist
make -j4 test
(UNIX), orvcbuild test
(Windows) passes