Skip to content
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

Add a benchmark comparing task spawning vs in-line joining #90

Open
yoshuawuyts opened this issue Nov 16, 2022 · 0 comments
Open

Add a benchmark comparing task spawning vs in-line joining #90

yoshuawuyts opened this issue Nov 16, 2022 · 0 comments
Labels
enhancement New feature or request

Comments

@yoshuawuyts
Copy link
Owner

yoshuawuyts commented Nov 16, 2022

We should anticipate that when we put out the futures-concurrency RFC that members of the community may ask about which benefits e.g. join or merge provide over abstractions like task::spawn or select! {}. There are several benefits, including integration with debuggers, ease of use, documentation, structured concurrency, and overall correctness. But also, and this is relevant to the recent work we've been doing: performance!

We should author a benchmark comparing e.g. tokio::spawn and tokio::spawn_local against {tuple,array,vec}::join. We may want to implement #82 for futures as part of this, so we can control the number of wakes and don't exclusively perform synchronous work. But it'll be interesting to see the performance delta between the two.

@yoshuawuyts yoshuawuyts added the enhancement New feature or request label Nov 16, 2022
@yoshuawuyts yoshuawuyts changed the title Add a benchmark comparing task spawning vs in-line join Add a benchmark comparing task spawning vs in-line joining Nov 16, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant