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

[Core feature] Parallelize Node Executions in FlytePropeller #3866

Closed
2 tasks done
hamersaw opened this issue Jul 12, 2023 · 1 comment
Closed
2 tasks done

[Core feature] Parallelize Node Executions in FlytePropeller #3866

hamersaw opened this issue Jul 12, 2023 · 1 comment
Assignees
Labels
backlogged For internal use. Reserved for contributor team workflow. enhancement New feature or request exo
Milestone

Comments

@hamersaw
Copy link
Contributor

Motivation: Why do you think this is important?

Currently, FlytePropeller uses a modified DFS to traverse the FlyteWorkflow DAG where each node evaluation is synchronous. This means that in certain scenarios DAG traversal can be a bottleneck. For example, extremely large workflows or tasks that operate synchronously.

Goal: What should the final outcome look like, ideally?

FlytePropeller should evaluate nodes in parallel. This could be done adding a layer of futures on top of the current traversal algorithm so that node scheduling remains consistent but the actual evaluation is done in the background.

Describe alternatives you've considered

Leaving it as is may result in poor performance in certain scenarios as described.

Propose: Link/Inline OR Additional context

No response

Are you sure this issue hasn't been raised already?

  • Yes

Have you read the Code of Conduct?

  • Yes
@hamersaw hamersaw added the enhancement New feature or request label Jul 12, 2023
@hamersaw hamersaw added this to the 1.7.0 milestone Jul 12, 2023
@hamersaw hamersaw self-assigned this Jul 12, 2023
@hamersaw hamersaw added exo backlogged For internal use. Reserved for contributor team workflow. labels Nov 8, 2023
@hamersaw
Copy link
Contributor Author

Closing in favor of a pluggable scheduler in flytepropeller, which will automatically require parallelized node executions.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backlogged For internal use. Reserved for contributor team workflow. enhancement New feature or request exo
Projects
None yet
1 participant