• DocumentCode
    1877407
  • Title

    HARP: Adaptive abort recurrence prediction for Hardware Transactional Memory

  • Author

    Armejach, Adria ; Negi, Atul ; Cristal, Adrian ; Unsal, Ozan ; Stenstrom, Per ; Harris, Tim

  • Author_Institution
    Barcelona Supercomput. Center, Barcelona, Spain
  • fYear
    2013
  • fDate
    18-21 Dec. 2013
  • Firstpage
    196
  • Lastpage
    205
  • Abstract
    Hardware Transactional Memory (HTM) exposes parallelism by allowing possibly conflicting sections of code, called transactions, to execute concurrently in multithreaded applications. However, conflicts among concurrent transactions result in wasted computation and expensive rollbacks. Under high contention HTM protocol overheads can, in many cases, amount to several times the useful work done. Blindly scheduling transactions in the presence of contention is therefore clearly suboptimal from a resource utilization standpoint, especially in situations where several scheduling options exist. This paper presents HARP (Hardware Abort Recurrence Predictor), a hardware-only mechanism to avoid speculation when it is likely to fail. Inspired by branch prediction strategies and prior work on contention management and scheduling in HTM, HARP uses past behavior of transactions and locality in conflicting memory references to accurately predict conflicts. The prediction mechanism adapts to variations in workload characteristics and enables better utilization of computational resources. We show that an HTM protocol that integrates HARP exhibits reductions in both wasted execution time and serialization overheads when compared to prior work, leading to a significant increase in throughput (~30%) in both single-application and multi-application scenarios.
  • Keywords
    computer architecture; concurrency control; multi-threading; program compilers; resource allocation; scheduling; storage management; transaction processing; HARP; HTM protocol overhead; adaptive abort recurrence prediction; branch prediction strategies; computational resource utilization; concurrent execution; concurrent transaction conflicts; conflict prediction; conflicting code sections; conflicting memory references; contention management; execution time; hardware abort recurrence predictor; hardware transactional memory; hardware-only mechanism; multiapplication scenario; multithreaded applications; parallelism; serialization overhead; single-application scenario; transaction behavior; transaction scheduling; workload characteristics; Protocols; Throughput;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    High Performance Computing (HiPC), 2013 20th International Conference on
  • Conference_Location
    Bangalore
  • Type

    conf

  • DOI
    10.1109/HiPC.2013.6799100
  • Filename
    6799100