<div>Hello,</div><div><br></div>In order to test/demonstrate arbitrary DAG dependency support in the new ZMQ Python scheduler, I wrote an example using NetworkX, as Fernando suggested.<div><br></div><div>It generates a random DAG with a given number of nodes and edges, runs a set of empty jobs (one for each node) using the DAG as a dependency graph, where each edge represents a job depending on another.</div>

<div>It then validates the results, ensuring that no job ran before its dependencies, and draws the graph, with nodes arranged in X according to time, which means that all arrows must point to the right if the time-dependencies were met.</div>

<div><br></div><div>It happily handles pretty elaborate (hundreds of edges) graphs.</div><div><br></div><meta charset="utf-8"><div>Too bad I didn&#39;t have this done for today&#39;s Py4Science talk.</div><div><br></div>
<div>
Script can be found here:</div><div><a href="http://github.com/minrk/ipython/blob/newparallel/examples/demo/dagdeps.py">http://github.com/minrk/ipython/blob/newparallel/examples/demo/dagdeps.py</a></div><div><br></div><div>

-MinRK</div><div><br></div>