Skip to content
This repository has been archived by the owner on May 16, 2024. It is now read-only.

[ETFeeder] Resolve deps based on not only data_deps, but also ctrl_deps #80

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

changhai0109
Copy link

Summary

In ETFeederNode, add fields of all_deps, which is a complete set of data_deps and ctrl_deps.
Add unreleased_deps to track the parents of a node which is not issued yet.
Update deps resolving reference to all_deps instead of data_deps.

Test Plan

Add following function to et_generator

def two_comp_nodes_ctrl_dependent(num_npus: int, runtime: int) -> None:
    for npu_id in range(num_npus):
        output_filename = f"two_comp_nodes_ctrl_dependent.{npu_id}.et"
        with open(output_filename, "wb") as et:
            encode_message(et, GlobalMetadata(version="0.0.4"))

            parent_node = get_node("COMP_NODE", COMP_NODE)
            parent_node.duration_micros = runtime
            parent_node.attr.append(ChakraAttr(name="is_cpu_op", bool_val=False))
            encode_message(et, parent_node)

            child_node = get_node("COMP_NODE", COMP_NODE)
            child_node.duration_micros = runtime
            child_node.ctrl_deps.append(parent_node.id)
            child_node.attr.append(ChakraAttr(name="is_cpu_op", bool_val=False))
            encode_message(et, child_node)

register this function in main as follows

def main():
   ...
  two_comp_nodes_ctrl_dependent(args.num _npus, args.default_runtime)
  ...

Run et_generator and get two_comp_nodes_ctrl_dependent.{npu_id}.et, then run with astrasim.

@changhai0109 changhai0109 requested a review from a team as a code owner December 7, 2023 16:33
Copy link

github-actions bot commented Dec 7, 2023

MLCommons CLA bot All contributors have signed the MLCommons CLA ✍️ ✅

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant