Back to Search Start Over

Concurrency Analysis in Dynamic Dataflow Graphs

Authors :
Sandip Kundu
Felipe M. G. França
Tiago A. O. Alves
Leandro A. J. Marzulo
Source :
IEEE Transactions on Emerging Topics in Computing. 9:44-54
Publication Year :
2021
Publisher :
Institute of Electrical and Electronics Engineers (IEEE), 2021.

Abstract

Dynamic dataflow scheduling enables effective exploitation of concurrency while making parallel programming easier. To this end, analyzing the inherent degree of concurrency available in dataflow graphs is an important task, since it may aid compilers or programmers to assess the potential performance a program can achieve via parallel execution. However, traditional concurrency analysis techniques only work for DAGs (directed acyclic graphs), hence the need for new techniques that contemplate graphs with cycles. In this paper we present techniques to perform concurrency analysis on generic dynamic dataflow graphs, even in the presence of cycles. In a dataflow graph, nodes represent instructions and edges describe dependencies. The novelty of our approach is that we allow concurrency between different iterations of the loops. Consequently, a set of concurrent nodes may contain instructions from different loops that can be proven independent. In this work, we provide a set of theoretical tools for obtaining bounds and illustrate implementation of parallel dataflow runtime on a set of representative graphs for important classes of benchmarks to compare measured performance against derived bounds.

Details

ISSN :
23764562
Volume :
9
Database :
OpenAIRE
Journal :
IEEE Transactions on Emerging Topics in Computing
Accession number :
edsair.doi...........b2b3c895e3b52b4c4f4d1870447a5b92
Full Text :
https://doi.org/10.1109/tetc.2018.2799078