Patent · US Active

System and method for implementing nonblocking zero-indirection transactional memory

US8140497B2 · kind B2 · utility

60Cited by
8References
19Claims
0Family size

Assignee

Inventors

Key dates

Filing dateDec 31, 2007
Grant dateMar 20, 2012
Priority date
Expiry dateJan 29, 2029

Classification

  • Technology area (CPC G)Physics
  • CPC primaryG06F9/467
  • WIPO fieldComputer technology
  • WIPO sectorElectrical engineering

Abstract

Systems and methods for implementing and using nonblocking zero-indirection software transactional memory (NZSTM) are disclosed. NZSTM systems implement object-based software transactional memory that eliminates all levels of indirection except in the uncommon case of a conflict with an unresponsive thread. Shared data is co-located with a header in an NZObject, and is addressable at a fixed offset from the header. Conflicting transactions are requested to abort themselves without being forced to abort. NZObjects are modified in place when there are no conflicts, and when a conflicting transaction acknowledges the abort request. In the uncommon case, NZObjects are inflated to introduce a locator and some levels of indirection, and are restored to their un-inflated form following resolution of the conflict. In some embodiments, transactions are executed using best effort hardware transactional memory if it is available and effective, and software transactional memory if not, yielding a hybrid transactional memory system, NZTM.

Source: USPTO / EPO open patent data. Objective bibliographic and citation counts.