• DocumentCode
    2253627
  • Title

    Multithreaded code from synchronous programs: Extracting independent threads for OpenMP

  • Author

    Baudisch, Daniel ; Brandt, Jens ; Schneider, Klaus

  • Author_Institution
    Dept. of Comput. Sci., Univ. of Kaiserslautern, Kaiserslautern, Germany
  • fYear
    2010
  • fDate
    8-12 March 2010
  • Firstpage
    949
  • Lastpage
    952
  • Abstract
    Synchronous languages offer a deterministic model of concurrency at the level of actions. However, essentially all compilers for synchronous languages compile these actions into a single thread by sophisticated methods to guarantee dynamic schedules for the sequential execution of these actions. In this paper, we present the compilation of synchronous programs to multi-threaded OpenMP-based C programs. We thereby start at the level of synchronous guarded actions which is a comfortable intermediate language for synchronous languages. In addition to the explicit parallelism given in the source program, our method also exploits the implicit parallelism which is due to the underlying synchronous model of computation and the data dependencies of the guarded actions. We show how viable tasks can be constructed from the actions of a program and show the feasibility of our approach by a small example.
  • Keywords
    C language; application program interfaces; multiprocessing systems; independent threads; multithreaded OpenMP based C programs; multithreaded code; synchronous languages; synchronous programs compilation; Clocks; Computational modeling; Computer science; Concurrent computing; Dynamic scheduling; Hardware design languages; Parallel processing; Processor scheduling; Synchronous generators;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Design, Automation & Test in Europe Conference & Exhibition (DATE), 2010
  • Conference_Location
    Dresden
  • ISSN
    1530-1591
  • Print_ISBN
    978-1-4244-7054-9
  • Type

    conf

  • DOI
    10.1109/DATE.2010.5456915
  • Filename
    5456915