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

[PERF] ActorGraphInterpreter and other Akka streams internals use Expression based props #6806

Closed
to11mtm opened this issue Jun 19, 2023 · 0 comments · Fixed by #6821
Closed

Comments

@to11mtm
Copy link
Member

to11mtm commented Jun 19, 2023

Related to #4698

Version Information
1.4.x

Describe the performance issue
ActorGraphInterpreter Props static method uses Expressions, which has a large perf impact for cases where streams are created in a transient/semi-transient (i.e. stream per actor lifecycle) fashion.

Additionally some stages use this as well, and, per above, we shouldn't.

Data and Specs
See #4698 for details. The benchmarks there illustrate the overall concern well enough.

Expected behavior
Don't use Expression based props where it's possible transient actors are being created.

Actual behavior
We use expression based props and it hurts perf by a significant margin

Environment
N/A

Additional context
This is not as big a problem for single streams created.

This should almost certainly be covered by unit tests, as ActorGraphInterpreter uses a single arg at present and is not touched frequently.

@to11mtm to11mtm changed the title [PERF] ActorGraphInterpreter uses Expression based props [PERF] ActorGraphInterpreter and other Akka streams internals use Expression based props Jun 19, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant