Flow Graphs: The Basics
摘要
The flow graph interfaces [flow_graph] let us express programs as graphs of interconnected computations that model the event-based coordination parallel pattern described in Figure 2-2 of Chapter 2 . In many cases, these applications stream data through a set of filters or stages. We call these data flow graphs. Graphs can also express happens-before relationships between operations without explicitly passing data, allowing us to express dependency structures that cannot be easily expressed with a parallel loop or pipeline. Some linear algebra computations, such as Cholesky decomposition, have efficient parallel implementations that avoid heavyweight synchronization points by tracking dependencies on smaller operations instead. We call graphs that express these happens-before relationships dependency graphs.