-
Notifications
You must be signed in to change notification settings - Fork 47
Setup bluebird and/or wikipedia benchmarks for promise performance #188
Comments
Also see the first item on the list for nodejs/diagnostics#124. |
This repository contains the data to address the question of the Promise performance impact of async_hooks raised in nodejs/benchmarking#188.
Ok, I managed to run the aforementioned benchmarks today with and without The full results and benchmarks are available at https://github.com/bmeurer/async-hooks-performance-impact. Not sure it makes sense to include these benchmarks as part of the regular nightly runs at this point. It seems that we might first need to come to an agreement whether we think that |
@bmeurer By bluebird, do you mean with petkaantonov/bluebird#1472 applied? |
No it's the bluebird benchmarks running with native promises. |
It looks like to implement async_hooks for promises V8 enters C++ code and then go back into JavaScript land to call actual callback. Should we somehow migrate promise hooks from C++ builtin to TF builtin to get a performance boost? And probably it is not best place for this question but what is main use case for async_hooks? Is it for some kind of async context tracking? |
@gsathya already suggested to move the promise hooks to JS and eventually spec them. This would help to reduce the C++ overhead, but so far I don't think that's the only/main bottleneck. |
Discussed, last meeting, nothing for TSC to decide at this point. Let async hooks team address, removing tag for now. |
Seems like @nodejs/async_hooks hasn't been mentioned here yet. Doing so. |
Seems like the |
@Trott thanks, I had removed manually from the last agenda, but forgot to remove the tag. |
@bmeurer since we have no other promise centric benchmarks I'm wondering if running these nightly would be better than nothing? |
@mhdawson Makes sense. I've created versions of these benchmarks, see https://github.com/v8/promise-performance-tests, which we use for V8 internally to track |
Specifically we're interested in the difference between regular runs with these workloads and runs where we have
async_hooks
enabled (see #181 for background).The text was updated successfully, but these errors were encountered: