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

v1.12.0 #118

Merged
merged 1 commit into from
May 25, 2024
Merged

v1.12.0 #118

merged 1 commit into from
May 25, 2024

Conversation

notgull
Copy link
Member

@notgull notgull commented May 12, 2024

  • Add static executors, which are an optimization over executors that are kept
    around forever. (Static Executors #112)

Signed-off-by: John Nunley <[email protected]>
@notgull notgull requested a review from taiki-e May 13, 2024 02:19
@notgull
Copy link
Member Author

notgull commented May 25, 2024

@taiki-e Any chance you can review this? This is blocking performance improvements in Bevy.

(If you don't have time it's already been reviewed by other members so I'm fine publishing this.)

@taiki-e
Copy link
Collaborator

taiki-e commented May 25, 2024

Add static executors, which are an optimization over executors that are kept
around forever. (#112)

Is it confirmed that the performance issue is not handled well by inlining?

When I received a similar request on crossbeam before, it could be handled almost well with inlining alone.
crossbeam-rs/crossbeam#979 (comment)

@notgull
Copy link
Member Author

notgull commented May 25, 2024

Apparently the core issue was the locking of the Mutex used to abort the task when the Executor is dropped. When this Mutex isn't being locked Bevy has observed noticeable performance gains.

@notgull
Copy link
Member Author

notgull commented May 25, 2024

Ref: #112 (comment)

@taiki-e
Copy link
Collaborator

taiki-e commented May 25, 2024

Oh, that indeed cannot be handled by inlining.

@notgull notgull merged commit 7577d56 into master May 25, 2024
8 checks passed
@notgull notgull deleted the notgull/next branch May 25, 2024 19:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

3 participants