CODE VERSIONING FOR ENABLING TRANSACTIONAL MEMORY PROMOTION
First Claim
Patent Images
1. A computer-implemented process for code versioning for enabling transactional memory region promotion, the computer-implemented process comprising:
- receiving a portion of candidate source code;
outlining the portion of candidate source code received for parallel execution;
wrapping a critical region with entry and exit routines to enter into a speculation sub-process, wherein the entry and exit routines also gather conflict statistics at run time; and
generating an outlined code portion comprising multiple loop versions using a processor.
6 Assignments
0 Petitions
Accused Products
Abstract
Code versioning for enabling transactional memory region promotion may include receiving a portion of candidate source code; outlining the portion of candidate source code received for parallel execution; wrapping a critical region with entry and exit routines to enter into a speculation sub-process, wherein the entry and exit routines also gather conflict statistics at run time; and generating an outlined code portion comprising multiple loop versions using a processor.
21 Citations
20 Claims
-
1. A computer-implemented process for code versioning for enabling transactional memory region promotion, the computer-implemented process comprising:
-
receiving a portion of candidate source code; outlining the portion of candidate source code received for parallel execution; wrapping a critical region with entry and exit routines to enter into a speculation sub-process, wherein the entry and exit routines also gather conflict statistics at run time; and generating an outlined code portion comprising multiple loop versions using a processor. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A computer program product for code versioning for enabling transactional memory region promotion, the computer program product comprising a computer readable storage medium having program instructions embodied therewith, wherein the computer readable storage medium is not a transitory signal per se, the program instructions executable by a processor to perform a method comprising:
-
receiving a portion of candidate source code; outlining the portion of candidate source code received for parallel execution; wrapping a critical region with entry and exit routines to enter into a speculation sub-process, wherein the entry and exit routines also gather conflict statistics at run time; and generating an outlined code portion comprising multiple loop versions. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. An apparatus for code versioning for enabling transactional memory region promotion, the apparatus comprising:
-
a communications fabric; a memory connected to the communications fabric, wherein the memory contains computer executable program code; and a processor unit connected to the communications fabric, wherein the processor unit, responsive to executing the computer executable program code, initiates executable operations comprising; receiving a portion of candidate source code; outlining the portion of candidate source code received for parallel execution; wrapping a critical region with entry and exit routines to enter into a speculation sub-process, wherein the entry and exit routines also gather conflict statistics at run time; and generating an outlined code portion comprising multiple loop versions. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification