• DocumentCode
    1131379
  • Title

    Dataflow architectures and multithreading

  • Author

    Lee, Ben ; Hurson, A.R.

  • Author_Institution
    Dept. of Electr. & Comput. Eng., Oregon State Univ., Corvallis, OR, USA
  • Volume
    27
  • Issue
    8
  • fYear
    1994
  • Firstpage
    27
  • Lastpage
    39
  • Abstract
    Contrary to initial expectations, implementing dataflow computers has presented a monumental challenge. Now, however, multithreading offers a viable alternative for building hybrid architectures that exploit parallelism. The eventual success of dataflow computers will depend on their programmability. Traditionally, they´ve been programmed in languages such as Id and SISAL (Streams and Iterations in a Single Assignment Language) that use functional semantics. These languages reveal high levels of concurrency and translate on to dataflow machines and conventional parallel machines via the Threaded Abstract Machine (TAM). However, because their syntax and semantics differ from the imperative counterparts such as Fortran and C, they have been slow to gain acceptance in the programming community. An alternative is to explore the use of established imperative languages to program dataflow machines. However, the difficulty will be analyzing data dependencies and extracting parallelism from source code that contains side effects. Therefore, more research is still needed to develop compilers for conventional languages that can produce parallel code comparable to that of parallel functional languages.<>
  • Keywords
    parallel architectures; parallel processing; Id; SISAL; Streams and Iterations in a Single Assignment Language; Threaded Abstract Machine; compilers; concurrency; data dependencies; dataflow architectures; dataflow machines; functional semantics; hybrid architectures; imperative languages; multithreading; parallel functional languages; parallel machines; parallelism; programmability; semantics; side effects; source code; syntax; Buildings; Computational modeling; Computer aided instruction; Computer architecture; Data structures; Embedded computing; Hardware; Multithreading; Parallel processing; Virtual prototyping;
  • fLanguage
    English
  • Journal_Title
    Computer
  • Publisher
    ieee
  • ISSN
    0018-9162
  • Type

    jour

  • DOI
    10.1109/2.303620
  • Filename
    303620