Modeling task graphs in MLIR

Hi all,

Are there any MLIR dialects which are intended to model task graphs? By task graph I mean a directed graph where nodes are operations and edges are “run-after” dependencies and not data dependencies like in a dataflow graph.

Thanks!

I think the async dialect models such dependencies. See for e.g the async execute op.

In future (late this year or early next year) we will have task dependencies in the OpenMP dialect when we start working on tasks.

1 Like

Thank you @kiranchandramohan, that seems to be the closest thing to what I’m looking for.

I was curious if anyone came up with a more direct way of expressing “runs-after” dependencies, other than using a made up data dependency (async.token).