• DocumentCode
    20466
  • Title

    The Cost of Privatization in Software Transactional Memory

  • Author

    Attiya, Hagit ; Hillel, Eshcar

  • Author_Institution
    Dept. of Comput. Sci., Technion - Israel Inst. of Technol., Haifa, Israel
  • Volume
    62
  • Issue
    12
  • fYear
    2013
  • fDate
    Dec. 2013
  • Firstpage
    2531
  • Lastpage
    2543
  • Abstract
    Software transactional memory (STM) is a promising approach for programming concurrent applications; STM guarantees that a transaction, consisting of a sequence of operations on the memory, appears to execute atomically. In practice, however, it is important to be able to run transactions together with nontransactional legacy code accessing the same memory locations, by supporting privatization of shared data. Privatization should be provided without sacrificing the parallelism offered by today´s multicore systems and multiprocessors. This paper proves an inherent cost for supporting privatization, which is linear in the number of privatized items. Specifically, we show that a transaction privatizing k items must have a data set of size at least k, in an STM with invisible reads, which is oblivious to different nonconflicting executions and guarantees progress in such executions. When reads are visible, it is shown that r memory locations must be accessed by a privatizing transaction, where r is the minimum between k, the number of privatized items, and the number of concurrent transactions guaranteed to make progress. This captures, in a concrete and quantitative manner, the tradeoff between the cost of privatization and the level of parallelism offered by the STM.
  • Keywords
    data privacy; multiprocessing systems; storage management; STM; concurrent application programming; memory locations; multicore systems; multiprocessors; nonconflicting executions; nontransactional legacy code; operations sequence; privatization cost; privatized items; shared data privatization; software transactional memory; transaction privatization; Costs; Multicore processing; Parallel processing; Privatization; Software development; Transactional memory; disjoint-access parallelism; privatization safety; progress properties;
  • fLanguage
    English
  • Journal_Title
    Computers, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    0018-9340
  • Type

    jour

  • DOI
    10.1109/TC.2012.159
  • Filename
    6226369