• DocumentCode
    3588635
  • Title

    Reducing lock contention on multi-core platforms

  • Author

    Haimiao Ding ; Xiaofei Liao ; Hai Jin ; Xinqiao Lv ; Rentong Guo

  • Author_Institution
    Services Comput. Technol. & Syst. Lab., Huazhong Univ. of Sci. & Technol., Wuhan, China
  • fYear
    2014
  • Firstpage
    158
  • Lastpage
    165
  • Abstract
    As multi-core platforms with hundreds or even more quantities of cores are popular, system optimization issues, including lock contentions, start to puzzle programmers who work on multi-core platforms. Locks are more convenient and clear than lock-free operations (for example, transactional memory) for multi-core programmers. However, lock contention has been recognized as a typical impediment to the performance of shared-memory parallel programs. This paper mainly discusses two important reasons that cause lock contention, including large critical sections and frequent lock requests. For current solutions, it is hard for programmers to find the locations of large critical sections and good scheme to reduce lock contentions on hot critical sections. This paper proposes FFlocker, a series of runtime solutions that reduce lock contention caused by the two issues. FFlocker includes a profiling algorithm to find the locations of large critical sections. Based on the profiling scheme, it binds the threads acquiring the same locks onto the same core. We evaluate our techniques with three benchmarks. The results show that FFlocker offers better performance than Function Flow and OpenMP.
  • Keywords
    multiprocessing systems; parallel programming; program diagnostics; FFlocker; Function Flow; OpenMP; frequent lock requests; large critical sections; lock contention reduction; multicore platforms; parallel programming; profiling algorithm; runtime solutions; Instruction sets; Libraries; Multicore processing; Parallel programming; Runtime; Switches; Time complexity; Multi-core; lock contention; parallel programming; runtime;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Parallel and Distributed Systems (ICPADS), 2014 20th IEEE International Conference on
  • Type

    conf

  • DOI
    10.1109/PADSW.2014.7097804
  • Filename
    7097804