IP Library › Granted Patent US 11,604,737
Granted Patent B1
US 11,604,737 · App. 17/516,860 · Granted Mar 14, 2023

Dynamic modification of coherent atomic memory operations

Inventors: Joseph L. Greathouse (Austin, TX); Steven Tony Tye (Boxborough, MA); Mark Fowler (Boxborough, MA); Milind N. Nemlekar (San Diego, CA)
Assignee: Advanced Micro Devices, Inc.
G06F12/0891G06F9/30047G06F9/4498G06F12/0831G06F12/0888
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 11,604,737
App. No.
17/516,860
Granted
Mar 14, 2023
Kind
B1
Abstract

A processing device determines a scope indicating at least a portion of the processing system and target data from atomic memory operation to be performed. Based on the scope, the processing device determines one or more hardware parameters for at least a portion of the processing system. The processing device then compares the hardware parameters to the scope and target data to determine one or more corrections. The processing device then provides the scope, target data, hardware parameters, and corrections to a plurality of hardware lookup tables. The hardware lookup tables are configured to receive the scope, target data, hardware parameters, and corrections as inputs and output values indicating one or more coherency actions and one or more orderings. The processing device then executes one or more of the indicated coherency actions and the atomic memory operation based on the indicated ordering.

Claims (49)

1. A method comprising:

in response to identifying an atomic memory operation to be performed at a core of a processor, determining, at the core of the processor, a hardware parameter based on a scope indicated in the atomic memory operation to be performed;

identifying a coherency action based on the hardware parameter and the scope; and

in response to identifying the coherency action, performing at least a portion of the atomic memory operation at the core of the processor.

2. The method of claim 1 , wherein identifying the coherency action based on the hardware parameter and the scope further comprises:

providing data representing the scope and the hardware parameter to a plurality of lookup tables configured to output a value indicating the coherency action in response to receiving the scope and the hardware parameter.

3. The method of claim 2 , wherein the plurality of lookup tables is further configured to output a value indicating an ordering for at least a portion of the coherency action and at least a portion of the atomic memory operating.

4. The method of claim 3 , further comprising:

performing at least a portion of the coherency action and at least a portion of the atomic memory operation based on the ordering.

5. The method of claim 1 , further comprising:

comparing the scope to the hardware parameter; and

determining a correction based on the comparison of the scope to the hardware parameter,

wherein the coherency action is identified further based on the correction.

6. The method of claim 1 , wherein the at least a portion of the coherency action includes a flush or invalidate operation on a cache.

7. The method of claim 1 , further comprising:

translating state machine data associated with the coherency action into a circuit-level operation; and

executing at least a portion of the coherency action, wherein executing at least a portion of the coherency action includes executing the circuit-level operation.

8. An apparatus comprising:

a cache; and

a processing device connected to the cache and configured to:

identify, at a core of the processing device, an atomic memory operation to be performed indicating a scope and a target data;

determine, at the core, a plurality of hardware parameters based on the scope and the target data;

identify a coherency action based on the scope, target data, and plurality of hardware parameters;

execute at least a portion of the coherency action; and

perform the atomic memory operation.

9. The apparatus of claim 8 , wherein at least a portion of the coherency action includes a flush operation of the cache.

10. The apparatus of claim 8 , wherein at least a portion of the coherency action includes a bypass of the cache.

11. The apparatus of claim 8 , wherein the processing device is further configured to:

determine the plurality of hardware parameters further based on the cache and based on a bus connecting the cache and the processing device.

12. The apparatus of claim 8 , wherein the plurality of hardware parameters includes an operating mode of a second processing device connected to the bus.

13. The apparatus of claim 8 , further comprising:

a plurality of hardware lookup tables configured to:

receive the scope, target data, and plurality of hardware parameters as inputs; and

output a value indicating the coherency action and an ordering of the at least a portion of the coherency action and the at least a portion of the atomic memory operation.

14. The apparatus of claim 8 , wherein the processing device is further configured to:

determine a power usage based on one or more hardware parameters and the atomic memory operation to be performed;

identify a correction based on the determined power usage; and

modify at least a portion of the coherency action based on the correction.

15. The apparatus of claim 14 , wherein the processing device is configured to determine the correction at a runtime of the processing device.

16. The apparatus of claim 14 , wherein the processing device is further configured to:

update the scope based on the correction.

17. A method comprising:

identifying, at a first processing device connected to a second processing device, an atomic memory operation to be performed;

determining a plurality of hardware parameters based on the first processing device, second processing device, and atomic memory operation;

identifying a coherency action and an ordering for at least a portion of the coherency action and at least a portion of the atomic memory operation based on the plurality of hardware parameters and the atomic memory operation; and

executing at least a portion of the coherency action and at least a portion of the atomic memory operation based on the ordering.

18. The method of claim 17 , wherein the plurality of hardware parameters is further determined based on a bus connecting the first and second processing devices.

19. The method of claim 17 , wherein the plurality of hardware parameters includes an operating mode of the first processing device.

20. The method of claim 17 , wherein the plurality of hardware parameters includes an operating mode of the second processing device.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 9, 2021
From: FOWLER, MARK; GREATHOUSE, JOSEPH L.; NEMLEKAR, MILIND N.; TYE, STEVEN TONY
To: ADVANCED MICRO DEVICES, INC.
Reel/Frame 058056/0789 →
Cited By (1)
US 12,455,827