Scalable Heuristic Algorithms for the Parallel Execution of Data Flow Acyclic Digraphs - Mo, Zeyao; Zhang, Aiqing; Wittum, Gabriel (SIAM journal on scientific computing, 2009)
Data flow acyclic directed graphs (digraphs) can be applied to accurately describe the data dependency for a wide range of grid-based scientific computing applications ranging from numerical algebra to realistic applications of radiation or neutron transport. The parallel computing of these applications is equivalent to the parallel execution of digraphs. This paper presents a framework of scalable heuristic algorithms for the parallel execution of digraphs. This framework consists of three components: the heuristic partitioning method of a digraph, the parallel sweeping algorithm for a partitioned digraph, and the heuristic strategy for vertex scheduling and vertex packing. Evaluation rules of heuristic algorithms are presented for better theoretical understanding and performance optimization. Parallel benchmarks for the multigroup neutron or radiation $S_n$ transport using processors from 100 to 2048 on two massively parallel machines show that these heuristic algorithms scale well.