module metagraph_optimization import Base.show import Base.== import Base.in include("tasks.jl") include("nodes.jl") include("graph.jl") include("task_functions.jl") include("node_functions.jl") include("graph_functions.jl") include("graph_optimizations.jl") export Node, Edge, ComputeTaskNode, DataTaskNode, DAG export AbstractTask, AbstractComputeTask, AbstractDataTask, DataTask, ComputeTaskP, ComputeTaskS1, ComputeTaskS2, ComputeTaskV, ComputeTaskU, FusedComputeTask export make_node, make_edge, insert_node, insert_edge, is_entry_node, is_exit_node, parents, children, compute, data, compute_effort, compute_intensity export node_fusion, node_reduction, node_split export ==, in, show end # module metagraph_optimization