IP Library › Granted Patent US 9,858,074
Granted Patent B2
US 9,858,074 · App. 14/751,950 · Granted Jan 2, 2018

Non-default instruction handling within transaction

Inventors: Jonathan D. Bradbury (Poughkeepsie, NY); Michael K. Gschwind (Chappaqua, NY); Maged M. Michael (Danbury, CT); Eric M. Schwarz (Gardiner, NY); Valentina Salapura (Chappaqua, NY); Chung-Lung K. Shum (Wappingers Falls, NY)
Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
G06F9/30043G06F9/3004G06F9/30145G06F9/3834G06F9/3842G06F9/3887G06F9/467G06F12/023G06F12/084G06F12/0875G06F12/0811G06F2212/251G06F2212/452
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,858,074
App. No.
14/751,950
Granted
Jan 2, 2018
Kind
B2
Abstract

Embodiments relate to non-default instruction handling within a transaction. An aspect includes entering a transaction, the transaction comprising a first plurality of instructions and a second plurality of instructions, wherein a default manner of handling of instructions in the transaction is one of atomic and non-atomic. Another aspect includes encountering a non-default specification instruction in the transaction, wherein the non-default specification instruction comprises a single instruction that specifies the second plurality of instructions of the transaction for handling in a non-default manner comprising one of atomic and non-atomic, wherein the non-default manner is different from the default manner. Another aspect includes handling the first plurality of instructions in the default manner. Yet another aspect includes handling the second plurality of instructions in the non-default manner.

Claims (34)

1. A computer program product for implementing non-default instruction handling within a transaction, the computer program product comprising:

a computer readable storage medium having program instructions embodied therewith, the program instructions readable by a processing circuit to cause the processing circuit to perform a method comprising:

entering a transaction, the transaction comprising a first plurality of instructions and a second plurality of instructions, wherein the transaction includes a default manner of handling of instructions in the transaction;

encountering a non-default specification instruction in the transaction, wherein the non-default specification instruction comprises a single instruction that specifies the second plurality of instructions of the transaction for handling in a non-default manner, wherein the non-default manner is different from the default manner, wherein the non-default specification instruction further specifies that the second plurality of instructions comprises one of only read instructions or only write instructions;

handling the first plurality of instructions in the default manner; and

handling the second plurality of instructions in the non-default manner.

2. The computer program product of claim 1 , wherein the non-default specification instruction specifies a number of subsequent instructions of the transaction as the second plurality of instructions, and further comprising:

saving the specified number of subsequent instructions in a counter; and

determining the second plurality of instructions based on the counter.

3. The computer program product of claim 1 , wherein the non-default specification instruction specifies a number of subsequent instructions comprising memory accesses of the transaction as the second plurality of instructions, and further comprising:

saving the specified number of subsequent instructions in a counter; and

for each memory access encountered in the transaction, determining whether the memory access is part of the second plurality of instructions based on the counter.

4. The computer program product of claim 1 , wherein the non-default specification instruction specifies a memory area, and further comprising:

for each memory access encountered in the transaction, comparing an address of the memory access to the specified memory area; and

based on a match between the address of the memory access and the specified memory area, determining that the memory access is part of the second plurality of instructions.

5. The computer program product of claim 4 , further comprising, based on encountering a subsequent instruction in the transaction that turns off the non-default handling, handling memory access to the specified memory area in the default manner.

6. The computer program product of claim 1 , further comprising, after handling the first plurality of instructions in the default manner, encountering a subsequent non-default specification instruction in the transaction that specifies a third plurality of instructions of the transaction for handling in the non-default manner.

7. A computer system for non-default instruction handling within a transaction, the system comprising:

a memory; and

a processor, communicatively coupled to said memory, the computer system configured to perform:

entering a transaction, the transaction comprising a first plurality of instructions and a second plurality of instructions, wherein the transaction includes a default manner of handling of instructions in the transaction;

encountering a non-default specification instruction in the transaction, wherein the non-default specification instruction comprises a single instruction that specifies the second plurality of instructions of the transaction for handling in a non-default manner, wherein the non-default manner is different from the default manner, wherein the non-default specification instruction further specifies that the second plurality of instructions comprises one of only read instructions or only write instructions;

handling the first plurality of instructions in the default manner; and

handling the second plurality of instructions in the non-default manner.

8. The system of claim 7 , wherein the non-default specification instruction specifies a number of subsequent instructions of the transaction as the second plurality of instructions, and further comprising:

saving the specified number of subsequent instructions in a counter; and

determining the second plurality of instructions based on the counter.

9. The system of claim 7 , wherein the non-default specification instruction specifies a number of subsequent instructions comprising memory accesses of the transaction as the second plurality of instructions, and further comprising:

saving the specified number of subsequent instructions in a counter; and

for each memory access encountered in the transaction, determining whether the memory access is part of the second plurality of instructions based on the counter.

10. The system of claim 7 , wherein the non-default specification instruction specifies a memory area, and further comprising:

for each memory access encountered in the transaction, comparing an address of the memory access to the specified memory area; and

based on a match between the address of the memory access and the specified memory area, determining that the memory access is part of the second plurality of instructions.

11. The system of claim 10 , further comprising, based on encountering a subsequent instruction in the transaction that turns off the non-default handling, handling memory access to the specified memory area in the default manner.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 26, 2015
From: BRADBURY, JONATHAN D.; GSCHWIND, MICHAEL K.; MICHAEL, MAGED M.; SCHWARZ, ERIC M.; SALAPURA, VALENTINA; SHUM, CHUNG-LUNG K.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 035992/0731 →
Continuity (1)
Related Publication 20160378476A1 · Dec 29, 2016