• DocumentCode
    3704252
  • Title

    Hardware Transactional Memory Optimization Guidelines, Applied to Ordered Maps

  • Author

    Lars Frydendal Bonnichsen;Christian Wilhelm Probst;Sven Karlsson

  • Author_Institution
    Tech. Univ. of Denmark, Lyngby, Denmark
  • Volume
    3
  • fYear
    2015
  • Firstpage
    124
  • Lastpage
    131
  • Abstract
    Synchronization of concurrent data structures is difficult to get right. Fine-grained synchronization locks small data chunks, but requires too high an overhead per chunk, traditional coarse-grained synchronization locks big data chunks, and thereby makes them unavailable to other threads. Neither synchronization method scales well. Recently, hardware transactional memory was introduced, which allows threads to use transactions instead of locks. So far, applying hardware transactional memory has shown mixed results. We believe this is because transactions are different from locks, and using them efficiently requires reasoning about those differences. In this paper we present 5 guidelines for applying hardware transactional memory efficiently, and apply the guidelines to BT-trees, a concurrent ordered map. Evaluating BT-trees on standard benchmarks shows that they are up to 5.3 times faster than traditional maps using hardware transactional memory, and up to 3.9 times faster than state of the art concurrent ordered maps.
  • Keywords
    "Guidelines","Synchronization","Hardware","Vegetation","Instruction sets","Data structures","Writing"
  • Publisher
    ieee
  • Conference_Titel
    Trustcom/BigDataSE/ISPA, 2015 IEEE
  • Type

    conf

  • DOI
    10.1109/Trustcom.2015.621
  • Filename
    7345637