• DocumentCode
    1117230
  • Title

    Hierarchical compilation of macro dataflow graphs for multiprocessors with local memory

  • Author

    Prasanna, G. N Srhivasa ; Agarwal, Anant ; Musicus, Bruce R.

  • Author_Institution
    Lab. for Comput. Sci., MIT, Cambridge, MA, USA
  • Volume
    5
  • Issue
    7
  • fYear
    1994
  • fDate
    7/1/1994 12:00:00 AM
  • Firstpage
    720
  • Lastpage
    736
  • Abstract
    This paper presents a hierarchical approach for compiling macro dataflow graphs for multiprocessors with local memory. Macro dataflow graphs comprise several nodes (or macro operations) that must be executed subject to prespecified precedence constraints. Programs consisting of multiple nested loops, where the precedence constraints between the loops are known, can be viewed as macro dataflow graphs. The hierarchical compilation approach comprises a processor allocation phase followed by a partitioning phase. In the processor allocation phase, using estimated speedup functions for the macro nodes, computationally efficient techniques establish the sequencing and parallelism of macro operations for close-to-optimal run-times. The second phase partitions the computations in each macro node to maximize communication locality for the level of parallelism determined by the processor allocation phase. The same approach can also be used for programs consisting of multiple loop nests, when each of the nested loops can be characterized by a speedup function. These ideas have been implemented in a prototype structure-driven compiler, SDC, for expressions of matrix operations. The paper presents the performance of the compiler for several matrix expressions on a simulator of the Alewife multiprocessor
  • Keywords
    multiprocessing systems; performance evaluation; program compilers; Alewife multiprocessor; SDC; close-to-optimal run-times; hierarchical compilation; local memory; macro dataflow graphs; macro operations; multiple nested loops; nested loops; partitioning phase; performance; precedence constraints; processor allocation; prototype structure-driven compiler; simulator; Computational modeling; Concurrent computing; Distributed computing; Laboratories; Parallel processing; Phase estimation; Processor scheduling; Prototypes; Resource management; Runtime;
  • fLanguage
    English
  • Journal_Title
    Parallel and Distributed Systems, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    1045-9219
  • Type

    jour

  • DOI
    10.1109/71.296318
  • Filename
    296318