SELECTIVELY UNMARKING OF LOAD-MARKED CACHE LINES DURING T SPECULATIVE THREAD EXECUTION
Abstract:
One embodiment of the present invention provides a system that facilitates selectively unmarking load-marked cache lines during transactional program execution, wherein load-marked cache lines are monitored during transactional execution to detect interfering accesses from other threads. During operation, the system encounters a release instruction during transactional execution of a block of instructions. In response to the release instruction, the system modifies the state of cache lines, which are specially load-marked to indicate they can be released from monitoring, to account for the release instruction being encountered. In doing so, the system can potentially cause the specially load-marked cache lines to become unmarked. In a variation on this embodiment, upon encountering a commit-and­startnew-transaction instruction, the system modifies load-marked cache lines to account for the commit-and-start­new-transaction instruction being encountered. In doing so, the system causes normally load-marked cache lines to become unmarked, while other specially load-marked cache lines may remain load-marked past the commit-and­startnew-transaction instruction.
Patent Agency Ranking
0/0