Title :
Resource requirements of dataflow programs
Author :
Culler, David E. ; Arvind
Author_Institution :
Lab. for Comput. Sci., MIT, Cambridge, MA, USA
fDate :
30 May-2 Jun 1988
Abstract :
Parallel execution of programs requires more resources and more complex resource management than sequential execution. If concurrent tasks can be spawned dynamically, programs may require an inordinate amount of resources when the potential parallelism in the program is much greater than the amount of parallelism the machine can utilize. Loop bounding, a technique for dynamically controlling the amount of parallelism exposed in dataflow programs, is described. The effectiveness of the technique in reducing token storage requirements is supported by experimental data in the form of parallelism profiles and waiting-token profiles. Comparisons are made throughout with more conventional approaches to parallel computing. It is shown that limiting the maximum number of coherent iterations of loops is effective in reducing the resource requirements of typical scientific programs without sacrificing performance. The implementation of this idea is based on compiling loops into dataflow graphs with a loop-bounding parameter than can be set at run time according to some policy
Keywords :
parallel programming; dataflow graphs; dataflow programs; loop bounding; parallel execution; resource management; resource requirements; token storage requirements; Computer languages; Computer science; Concurrent computing; Contracts; Data structures; High level languages; Laboratories; Parallel processing; Resource management; System recovery;
Conference_Titel :
Computer Architecture, 1988. Conference Proceedings. 15th Annual International Symposium on
Conference_Location :
Honolulu, HI
Print_ISBN :
0-8186-0861-7
DOI :
10.1109/ISCA.1988.5223