System and method for executing nested atomic blocks using split hardware transactions
US7516366B2 · kind B2 · utility
Assignee
Inventors
Key dates
| Filing date | Aug 17, 2007 |
| Grant date | Apr 7, 2009 |
| Priority date | — |
| Expiry date | Oct 16, 2027 |
Classification
- Technology area (CPC G)Physics
- CPC primaryG06F11/1405
- WIPO fieldComputer technology
- WIPO sectorElectrical engineering
Abstract
Split hardware transaction techniques may support execution of serial and parallel nesting of code within an atomic block to an arbitrary nesting depth. An atomic block including child code sequences nested within a parent code sequence may be executed using separate hardware transactions for each child, but the execution of the parent code sequence, the child code sequences, and other code within the atomic block may appear to have been executed as a single transaction. If a child transaction fails, it may be retried without retrying the parent code sequence or other child code sequences. Before a child transaction is executed, a determination of memory consistency may be made. If a memory inconsistency is detected, the child transaction may be retried or control may be returned to its parent. Memory inconsistencies between parallel child transactions may be resolved by serializing their execution before retrying at least one of them.
Source: USPTO / EPO open patent data. Objective bibliographic and citation counts.