Method and apparatus for diagnostic recording using transactional memory
First Claim
1. A method of gathering diagnostic information in a hardware-based transactional memory system, comprising:
- responsive to detecting an exception event has occurred in a first thread, invoking a system call of an operating system to access a portion, of a transaction log of a hardware-based transactional memory, that corresponds to the first thread, wherein the transaction log is stored in a hardware buffer of the hardware-based transactional memory, wherein the hardware-based transactional memory is configured to record recent memory accesses in the transaction log, wherein the portion of the transaction log includes recent memory accesses for the first thread, and wherein the transaction log is required for operation of the hardware-based transactional memory;
storing the portion of the transaction log in a core file, wherein the core file further comprises a stack trace, a register dump, and a memory dump; and
replaying a plurality of instructions that led to the exception event in the first thread via a debugger tool, using the portion of the transaction log stored within the core file.
1 Assignment
0 Petitions
Accused Products
Abstract
A method (500) or a diagnostic recording device (400) having transactional memory and a processor coupled to the transactional memory can store (502) contents of a transaction log (40) of the transactional memory, detect (504) an exception event, and replay (506) last instructions that led up to the exception event using a debugger tool (80). The transactional memory can be hardware or software based transactional memory. The processor can also store the transaction log by storing the contents of the transaction log in a core file (302) which can include a stack (60), a register dump (70), a memory dump (75), and the transactional log. The debugger tool can be used to load up the core file, an executable file (95), and a library (90) to enable the diagnostic recording device to retrace transactions occurring at the diagnostic recording device up to the exception event.
-
Citations
15 Claims
-
1. A method of gathering diagnostic information in a hardware-based transactional memory system, comprising:
-
responsive to detecting an exception event has occurred in a first thread, invoking a system call of an operating system to access a portion, of a transaction log of a hardware-based transactional memory, that corresponds to the first thread, wherein the transaction log is stored in a hardware buffer of the hardware-based transactional memory, wherein the hardware-based transactional memory is configured to record recent memory accesses in the transaction log, wherein the portion of the transaction log includes recent memory accesses for the first thread, and wherein the transaction log is required for operation of the hardware-based transactional memory; storing the portion of the transaction log in a core file, wherein the core file further comprises a stack trace, a register dump, and a memory dump; and replaying a plurality of instructions that led to the exception event in the first thread via a debugger tool, using the portion of the transaction log stored within the core file. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A computer program product embodied in a computer-readable storage device, the computer program product comprising instructions executable by a data processing machine that cause the data processing machine to perform an operation for gathering diagnostic information in a hardware-based transactional memory system, comprising:
-
responsive to detecting an exception event has occurred in a first thread, invoking a system call of an operating system to access a portion, of a transaction log of a hardware-based transactional memory, that corresponds to the first thread, wherein the transaction log is stored in a hardware buffer of the hardware-based transactional memory, wherein the hardware-based transactional memory is configured to record recent memory accesses in the transaction log, wherein the portion of the transaction log includes recent memory accesses for the first thread, and wherein the transaction log is required for operation of the hardware-based transactional memory; storing the portion of the transaction log in a core file, wherein the core file further comprises a stack trace, a register dump, and a memory dump; and replaying a plurality of instructions that led to the exception event in the first thread via a debugger tool, using the portion of the transaction log stored within the core file. - View Dependent Claims (7, 8, 9, 10)
-
-
11. A hardware-based transactional memory system, comprising:
-
a processor; and a hardware-based transactional memory containing a program that, when executed by the processor, performs an operation for gathering diagnostic information, comprising; responsive to detecting an exception event has occurred in a first thread, invoking a system call of an operating system to access a portion, of a transaction log of a hardware-based transactional memory, that corresponds to the first thread, wherein the transaction log is stored in a hardware buffer of the hardware-based transactional memory, wherein the hardware-based transactional memory is configured to record recent memory accesses in the transaction log, wherein the portion of the transaction log includes recent memory accesses for the first thread, and wherein the transaction log is required for operation of the hardware-based transactional memory; storing the portion of the transaction log in a core file, wherein the core file further comprises a stack trace, a register dump, and a memory dump; and replaying a plurality of instructions that led to the exception event in the first thread via a debugger tool, using the portion of the transaction log stored within the core file. - View Dependent Claims (12, 13, 14, 15)
-
Specification