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

SafeCollector rework #1196

Merged
merged 5 commits into from
May 29, 2019
Merged

SafeCollector rework #1196

merged 5 commits into from
May 29, 2019

Conversation

qwwdfsad
Copy link
Member

@qwwdfsad qwwdfsad commented May 16, 2019

  • Strengthen flow context preservation invariant
  • Cache result of the context check thus speeding up safe collector on happy path by a factor of three
  • Separate fast and slow paths in JobSupport to drastically change inlining decisions of the JVM that are crucial for leaf coroutines with flows

@qwwdfsad qwwdfsad requested a review from elizarov May 16, 2019 11:27
@qwwdfsad qwwdfsad changed the title SafeFlow performance improvements: SafeCollector performance improvements: May 16, 2019
  * Cache result of the context check thus speeding up safe collector on happy path by a factor of three
  * Separate fast and slow paths in JobSupport to drastically change inlining decisions of the JVM that are crucial for leaf coroutines with flows
    * Add additional check in SafeCollector with an error message pointing to channelFlow
    * Improve performance of the CoroutineId check in SafeCollector

Fixes #1210
@qwwdfsad qwwdfsad changed the title SafeCollector performance improvements: SafeCollector rework May 21, 2019
@qwwdfsad qwwdfsad requested a review from elizarov May 27, 2019 09:58
Copy link
Contributor

@elizarov elizarov left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've added commit removing unused "minusId". I'll squash & merge when it passes tests.

@elizarov elizarov merged commit 15ee8a3 into develop May 29, 2019
@qwwdfsad qwwdfsad deleted the safe-flow branch June 4, 2019 09:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants