IP Library Granted Patent US 11,755,501
Granted Patent B2
US 11,755,501 · App. 17/212,503 · Granted Sep 12, 2023

Efficient data sharing for graphics data processing operations

Inventors: Joydeep Ray (Folsom, CA); Altug Koker (El Dorado Hills, CA); Elmoustapha Ould-Ahmed-Vall (Chandler, AZ); Michael Macpherson (Portland, OR); Aravindh V. Anantaraman (Folsom, CA); Vasanth Ranganathan (El Dorado Hills, CA); Lakshminarayanan Striramassarma (Folsom, CA); Varghese George (Folsom, CA); Abhishek Appu (El Dorado Hills, CA); Prasoonkumar Surti (Folsom, CA)
Assignee: INTEL CORPORATION
G06F13/1605G06F9/3004G06F9/3887G06F9/5016G06T1/20G06T1/60
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,755,501
App. No.
17/212,503
Granted
Sep 12, 2023
Kind
B2
Abstract

An apparatus to facilitate efficient data sharing for graphics data processing operations is disclosed. The apparatus includes a processing resource to generate a stream of instructions, an L1 cache communicably coupled to the processing resource and comprising an on-page detector circuit to determine that a set of memory requests in the stream of instructions access a same memory page; and set a marker in a first request of the set of memory requests; and arbitration circuitry communicably coupled to the L1 cache, the arbitration circuitry to route the set of memory requests to memory comprising the memory page and to, in response to receiving the first request with the marker set, remain with the processing resource to process the set of memory requests.

Claims (33)

1. An apparatus comprising:

a processing resource to generate a stream of instructions;

an L1 cache communicably coupled to the processing resource and comprising an on-page detector circuit to:

determine that a set of memory requests in the stream of instructions access a same memory page; and

set a marker in a first request of the set of memory requests; and

arbitration circuitry communicably coupled to the L1 cache, the arbitration circuitry to route the set of memory requests to memory comprising the same memory page and to, in response to receiving the first request with the marker that is set, remain with the processing resource to process the set of memory requests.

2. The apparatus of claim 1 , wherein the processing resource is an execution unit in a graphics processing unit (GPU).

3. The apparatus of claim 1 , wherein the marker comprises a bit that is set at least one of the set of memory requests.

4. The apparatus of claim 1 , wherein the on-page detector circuit is further to set the marker in a last request of the set of memory requests, and wherein the arbitration circuitry are to remain with processing resource to process the set of memory requests until receiving the last request with the marker that is set.

5. The apparatus of claim 1 , wherein the arbitration circuitry comprise at least one of multiplexors or crossbars.

6. The apparatus of claim 1 , wherein the marker comprises data indicating a size of the set of memory requests, and wherein the arbitration circuitry are to remain with processing resource to process the set of memory requests until the size of the set of memory requests is processed.

7. The apparatus of claim 6 , wherein the size comprises a number of requests in the set of memory requests.

8. The apparatus of claim 1 , wherein the arbitration circuitry to remain with the processing resource to process the set of memory requests further comprises the arbitration circuitry to process the set of memory requests without interleaving other requests outside of the set of memory requests into the set of memory requests.

9. The apparatus of claim 1 , wherein the apparatus is at least one of a single instruction multiple data (SIMD) machine or a single instruction multiple thread (SIMT) machine.

10. A method comprising:

generating, by a processing resource of a graphics processor, a stream of instructions;

determining, by an on-page detector circuit of an Li cache of the graphics processor, that a set of memory requests in the stream of instructions access a same memory page;

setting, by the on-page detector circuit, a marker in a first request of the set of memory requests; and

in response to receiving the first request with the marker that is set, remaining, by arbitration circuitry of the graphics processor, with the processing resource to process the set of memory requests, wherein the arbitration circuitry is to route the set of memory requests to memory comprising the same memory page.

11. The method of claim 10 , wherein the marker comprises a bit that is set at least one of the set of memory requests.

12. The method of claim 10 , further comprising setting, by the on-page detector circuit, the marker in a last request of the set of memory requests, wherein the arbitration circuitry are to remain with processing resource to process the set of memory requests until receiving the last request with the marker that is set.

13. The method of claim 10 , wherein the arbitration circuitry comprise at least one of multiplexors or crossbars.

14. The method of claim 10 , wherein the marker comprises data indicating a size of the set of memory requests, and wherein the arbitration circuitry are to remain with processing resource to process the set of memory requests until the size of the set of memory requests is processed.

15. The method of claim 10 , wherein remaining with the processing resource to process the set of memory requests further comprises processing, by the arbitration circuitry, the set of memory requests without interleaving other requests outside of the set of memory requests into the set of memory requests.

16. A non-transitory computer-readable medium having instructions stored thereon, which when executed by one or more processors, cause the one or more processors to:

generate, by a processing resource of the one or more processors, a stream of instructions;

determine, by an on-page detector circuit of an L1 cache of the one or more processors, that a set of memory requests in the stream of instructions access a same memory page;

set, by the on-page detector circuit, a marker in a first request of the set of memory requests; and

in response to receiving the first request with the marker that is set, remain, by arbitration circuitry of the one or more processors, with the processing resource to process the set of memory requests, wherein the arbitration circuitry is to route the set of memory requests to memory comprising the same memory page.

17. The non-transitory computer-readable medium of claim 16 , wherein the marker comprises a bit that is set at least one of the set of memory requests.

18. The non-transitory computer-readable medium of claim 16 , wherein the instructions are further to cause the one or more processors to set, by the on-page detector circuit, the marker in a last request of the set of memory requests, wherein the arbitration circuitry are to remain with processing resource to process the set of memory requests until receiving the last request with the marker that is set.

19. The non-transitory computer-readable medium of claim 16 , wherein the marker comprises data indicating a size of the set of memory requests, and wherein the arbitration circuitry are to remain with processing resource to process the set of memory requests until the size of the set of memory requests is processed.

20. The non-transitory computer-readable medium of claim 16 , wherein remaining with the processing resource to process the set of memory requests further comprises processing, by the arbitration circuitry, the set of memory requests without interleaving other requests outside of the set of memory requests into the set of memory requests.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 10, 2021
From: RAY, JOYDEEP; KOKER, ALTUG; OULD-AHMED-VALL, ELMOUSTAPHA; MACPHERSON, MICHAEL; ANANTARAMAN, ARAVINDH V.; RANGANATHAN, VASANTH; STRIRAMASSARMA, LAKSHMINARAYANAN; GEORGE, VARGHESE; APPU, ABHISHEK; SURTI, PRASOONKUMAR
To: INTEL CORPORATION
Reel/Frame 056191/0053 →
Continuity (2)
Provisional Application 63000784 · Mar 27, 2020
Related Publication 20210303481A1 · Sep 30, 2021
Cited By (7)
US 12,242,937 US 12,282,305 US 12,306,771 US 12,406,232 US 12,455,896 US 12,524,709 US 12,619,957