• DocumentCode
    157843
  • Title

    Accelerating decoupled look-ahead via weak dependence removal: A metaheuristic approach

  • Author

    Parihar, Rajesh ; Huang, Michael C.

  • Author_Institution
    Dept. of Electr. & Comput. Eng., Univ. of Rochester, Rochester, NY, USA
  • fYear
    2014
  • fDate
    15-19 Feb. 2014
  • Firstpage
    662
  • Lastpage
    677
  • Abstract
    Despite the proliferation of multi-core and multi-threaded architectures, exploiting implicit parallelism for a single semantic thread is still a crucial component in achieving high performance. Look-ahead is a tried-and-true strategy in uncovering implicit parallelism, but a conventional, monolithic out-of-order core quickly becomes resource-inefficient when looking beyond a small distance. A more decoupled approach with an independent, dedicated look-ahead thread on a separate thread context can be a more flexible and effective implementation, especially in a multi-core environment. While capable of generating significant performance gains, the look-ahead agent often becomes the new speed limit. Fortunately, the look-ahead thread has no hard correctness constraints and presents new opportunities for optimizations. One such opportunity is to exploit “weak” dependences. Intuitively, not all dependences are equal. Some links in a dependence chain are weak enough that removing them in the look-ahead thread does not materially affect the quality of look-ahead but improves the speed. While there are some common patterns of weak dependences, they can not be generalized as heuristics in generating better code for the look-ahead thread. A primary reason is that removing a false weak dependence can be exceedingly costly. Nevertheless, a trial-and-error approach can reliably identify opportunities for improving the look-ahead thread and quantify the benefits. A framework based on genetic algorithm can help search for the right set of changes to the look-ahead thread. In the set of applications where the speed of look-ahead has become the new limit, this method is found to improve the overall system performance by up to 1.48x with a geometric mean of 1.14x over the baseline decoupled look-ahead system, while reducing energy consumption by 11%.
  • Keywords
    energy consumption; genetic algorithms; multi-threading; multiprocessing systems; decoupled look-ahead acceleration; energy consumption reduction; genetic algorithm; implicit parallelism; look-ahead agent; look-ahead thread; metaheuristic approach; monolithic out-of-order core; multicore architectures; multithreaded architectures; single semantic thread; trial-and-error approach; tried-and-true strategy; weak dependence removal; Context; Genetic algorithms; Instruction sets; Message systems; Parallel processing; Registers; Skeleton;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    High Performance Computer Architecture (HPCA), 2014 IEEE 20th International Symposium on
  • Conference_Location
    Orlando, FL
  • Type

    conf

  • DOI
    10.1109/HPCA.2014.6835974
  • Filename
    6835974