vine: dagvine implementation#4253
Draft
JinZhou5042 wants to merge 196 commits into
Draft
Conversation
…' into separate_pending_and_ready_tasks
dthain
requested changes
Jun 8, 2026
dthain
left a comment
Member
There was a problem hiding this comment.
Jin, this is on the right track overall. Per our discussion today, you have a nice separation between the graph manager and the vine task manager. Some cleanup items:
- This component overall will be known as
vine_graph(C) orVineGraph(Py) so that it is clearly part of the TaskVine overall project, but clearly distinct from thevine_managerin the code base. - The components of
vine_graphmay not include anything from the manager except the public interfacetaskvine.h. So, you will have to make a few adjustments so that you are not looking directly into thevine_taskandvine_filestructures etc, but only using the public APIs. (or adding some API entry points as needed). - Naming within the C component should call the structures and corresponding functions
vine_graph,vine_graph_nodeand so forth. - Please put all of the C code in
taskvine/src/graphwithout subdirectories. - Please put all of the Python code in
taskvine/src/bindings/python3/ndcctools/taskvinewith names likeVineGraph,VineGraphDaskAdaptorand so forth. - Add a user facing document that explains how to use VineGraph.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Proposed Changes
For #4114, a graph executor on the C side, without dependencies on Dask or other Python requirements.
This PR depends on the other several open PRs to be merged.
An example run by this executor:
Merge Checklist
The following items must be completed before PRs can be merged.
Check these off to verify you have completed all steps.
make testRun local tests prior to pushing.make formatFormat source code to comply with lint policies. Note that some lint errors can only be resolved manually (e.g., Python)make lintRun lint on source code prior to pushing.