GeezerVisonThe World Wide Web, restored to 800 pixels of glory. | ||||||||||||||||||||||||
| Home|About|Gaming cabinet|Archives|How it works|Starter sites | ||||||||||||||||||||||||
GeezerVison is showing github.com — src: improve StreamBase read throughput by addaleax · Pull Request #23797 · nodejs/node Conversation
|
|
@addaleax build started: https://ci.nodejs.org/blue/organizations/jenkins/node-test-pull-request-lite-pipeline/detail/node-test-pull-request-lite-pipeline/1324/pipeline |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
Are there benchmark results available?
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
|
||
| #ifdef DEBUG | ||
| CHECK_EQ(static_cast<int32_t>(nread), nread); | ||
| CHECK_EQ(static_cast<int32_t>(offset), offset); |
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
Maybe also assert that offset is 0 and nread is less than 0 if ab is empty?
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
IIUC this will also allow us to remove
// TODO(bnoordhuis) Check that nread > 0.
https://github.com/nodejs/node/pull/23797/files#diff-f45eb699237c2e38dc9b49b588933c11R497.
in channel.onread
Edit: that is if we add a reverse check of ab non-empty -> nread > 0
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
I’m not sure we can guarantee nread > 0, but nread >= 0 should make sense.
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
New benchmark CI: https://ci.nodejs.org/view/Node.js%20benchmark/job/benchmark-node-micro-benchmarks/249/ |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
It looks like benchmark/net/tcp-raw-c2s.js needs to be fixed. |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
2350bd1 to
18069e4
Compare
There was an error while loading. Please reload this page.
Done! With more iterations this time: https://ci.nodejs.org/view/Node.js%20benchmark/job/benchmark-node-micro-benchmarks/250/ (edit: aborted, took too long. sorry… the other benchmarks results are pretty good, though.)
|
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
|
Benchmark CI: https://ci.nodejs.org/view/Node.js%20benchmark/job/benchmark-node-micro-benchmarks/251/console It looks like benchmark/net/tcp-raw-pipe.js needs to be updated (further): |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
@mscdex That’s happening because the modified benchmark and the previous version of it are incompatible, because they expect different function signatures… I’m going to open a PR to remove those |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
Resume CI (sigh): https://ci.nodejs.org/job/node-test-pull-request/18097/ |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
Landed in 1365f65 |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
Improve performance by providing JS with the raw ingridients for the read data, i.e. an `ArrayBuffer` + offset + length fields, instead of creating `Buffer` instances in C++ land. PR-URL: #23797 Reviewed-By: Tiancheng "Timothy" Gu <[email protected]> Reviewed-By: James M Snell <[email protected]>
Improve performance by providing JS with the raw ingridients for the read data, i.e. an `ArrayBuffer` + offset + length fields, instead of creating `Buffer` instances in C++ land. PR-URL: #23797 Reviewed-By: Tiancheng "Timothy" Gu <[email protected]> Reviewed-By: James M Snell <[email protected]>
|
Hello! Could you tell us what the actual is changing? Is it only the signature of those files and nothing else? |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
@p3x-robot I’ve commented on the linked issue, hope that’s helpful |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
found it, thanks very much! |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
Should this be backported to |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
Successfully merging this pull request may close these issues.
There was an error while loading. Please reload this page.