• DocumentCode
    1102301
  • Title

    A general compiler framework for speculative multithreaded processors

  • Author

    Bhowmik, Anasua ; Franklin, Manoj

  • Author_Institution
    Dept. of Comput. Sci. & Autom., Indian Inst. of Sci., Bangalore, India
  • Volume
    15
  • Issue
    8
  • fYear
    2004
  • Firstpage
    713
  • Lastpage
    724
  • Abstract
    Speculative multithreading (SpMT) promises to be an effective mechanism for parallelizing nonnumeric programs, which tend to have irregular and pointer-intensive data structures and complex flows of control. Proper thread formation is crucial for obtaining good speedup in an SpMT system. This paper presents a compiler framework for partitioning a sequential program into multiple threads for parallel execution in an SpMT system. This framework is very general and supports speculative threads, nonspeculative threads, loop-centric threads, and out-of-order thread spawning. It is therefore useful for compiling for a wide variety of SpMT architectures. For effective partitioning of programs, the compiler uses profiling, interprocedural pointer analysis, data dependence information, and control dependence information. The compiler is implemented on the SUIF-MachSUIF platform. A simulation-based evaluation of the generated threads shows that the use of nonspeculative threads and nonloop speculative threads provides a significant increase in speedup for nonnumeric programs.
  • Keywords
    data flow analysis; multi-threading; processor scheduling; program compilers; task analysis; compilers; data dependence information; multithread processor; nonnumeric programs; pointer-intensive data structures; program partitioning; scheduling; task partitioning; Computational modeling; Computer science; Data analysis; Data structures; Information analysis; Multithreading; Out of order; Parallel processing; Program processors; Yarn; 65; Multithread processor; compilers.; scheduling and task partitioning;
  • fLanguage
    English
  • Journal_Title
    Parallel and Distributed Systems, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    1045-9219
  • Type

    jour

  • DOI
    10.1109/TPDS.2004.26
  • Filename
    1333641