IP Library Granted Patent US 11,636,174
Granted Patent B2
US 11,636,174 · App. 17/527,882 · Granted Apr 25, 2023

Scalable sparse matrix multiply acceleration using systolic arrays with feedback inputs

Inventors: Subramaniam Maiyuran (Gold River, CA); Jorge Parra (El Dorado Hills, CA); Supratim Pal (Bangalore, IN); Ashutosh Garg (Folsom, CA); Shubra Marwaha (Folsom, CA); Chandra Gurram (Folsom, CA); Darin Starkey (Roseville, CA); Durgesh Borkar (Folsom, CA); Varghese George (Folsom, CA)
Assignee: Intel Corporation
G06F17/16G06F9/3001G06F9/30145G06F15/8046
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,636,174
App. No.
17/527,882
Granted
Apr 25, 2023
Kind
B2
Abstract

Described herein is an accelerator device including a host interface, a fabric interconnect coupled with the host interface, and one or more hardware tiles coupled with the fabric interconnect, the one or more hardware tiles including sparse matrix multiply acceleration hardware including a systolic array with feedback inputs.

Claims (30)

1. An accelerator device comprising:

a host interface;

a fabric interconnect coupled with the host interface; and

one or more hardware tiles coupled with the fabric interconnect, the one or more hardware tiles including sparse matrix multiply acceleration hardware including a modular systolic processing array with feedback inputs, the modular systolic processing array including one or more processing array modules including a first pipeline path configurable to execute a first dot product instruction having a first set of inputs and a second pipeline path configurable to execute a second dot product instruction having a second set of inputs.

2. The accelerator device as in claim 1 , wherein the modular systolic processing array includes multiple array modules.

3. The accelerator device as in claim 1 , wherein at least one of the first pipeline path and the second pipeline path include multiple pipeline stages and the multiple pipeline stages include a first pipeline stage configurable to receive feedback output from a final pipeline stage.

4. The accelerator device as in claim 3 , further comprising first output hardware configured to selectably write output of the of the first pipeline stage a location selected from one of output memory and a second pipeline stage and second output hardware configured to selectably write output of the of the final pipeline stage a location selected from one of output memory and the first pipeline stage.

5. The accelerator device as in claim 4 , wherein the second pipeline stage is the final pipeline stage.

6. The accelerator device as in claim 1 , wherein the one or more processing array modules include pipeline paths configured with shared hardware circuitry to read data elements associated with a first source input and separate hardware circuitry to read data elements associated with a second source input.

7. The accelerator device as in claim 6 , wherein the one or more processing array modules include hardware circuitry configured to detect non-zero data elements in the second source input and selectively perform dot product operations based on the non-zero data elements of the second source input and data elements of the first source input that correspond with the non-zero data elements of the second source input.

8. A graphics processor comprising:

a host interface;

a fabric interconnect coupled with the host interface; and

one or more hardware tiles coupled with the fabric interconnect, the one or more hardware tiles including sparse matrix multiply acceleration hardware including a modular systolic processing array with feedback inputs, the modular systolic processing array including one or more processing array modules including a first pipeline path configurable to execute a first dot product instruction having a first set of inputs and a second pipeline path configurable to execute a second dot product instruction having a second set of inputs.

9. The graphics processor as in claim 8 , wherein the modular systolic processing array includes multiple array modules.

10. The graphics processor as in claim 8 , wherein at least one of the first pipeline path and the second pipeline path include multiple pipeline stages and the multiple pipeline stages include a first pipeline stage configurable to receive feedback output from a final pipeline stage.

11. The graphics processor as in claim 10 , further comprising first output hardware configured to selectably write output of the of the first pipeline stage a location selected from one of output memory and a second pipeline stage and second output hardware configured to selectably write output of the of the final pipeline stage a location selected from one of output memory and the first pipeline stage.

12. The graphics processor as in claim 11 , wherein the second pipeline stage is the final pipeline stage.

13. The graphics processor as in claim 8 , wherein the one or more processing array modules include pipeline paths configured with shared hardware circuitry to read data elements associated with a first source input and separate hardware circuitry to read data elements associated with a second source input.

14. The graphics processor as in claim 13 , wherein the one or more processing array modules include hardware circuitry configured to detect non-zero data elements in the second source input and selectively perform dot product operations based on the non-zero data elements of the second source input and data elements of the first source input that correspond with the non-zero data elements of the second source input.

15. A data processing system comprising:

a host interface;

a memory device coupled with the host interface;

a fabric interconnect coupled with the host interface and the memory device; and

one or more hardware tiles coupled with the fabric interconnect and the memory device, the one or more hardware tiles including sparse matrix multiply acceleration hardware including a modular systolic processing array with feedback inputs, the modular systolic processing array including one or more processing array modules including a first pipeline path configurable to execute a first dot product instruction having a first set of inputs and a second pipeline path configurable to execute a second dot product instruction having a second set of inputs.

16. The data processing system as in claim 15 , wherein at least one of the first pipeline path and the second pipeline path include multiple pipeline stages and the multiple pipeline stages include a first pipeline stage configurable to receive feedback output from a final pipeline stage.

17. The data processing system as in claim 16 , further comprising first output hardware configured to selectably write output of the of the first pipeline stage a location selected from one of output memory and a second pipeline stage and second output hardware configured to selectably write output of the of the final pipeline stage a location selected from one of output memory and the first pipeline stage.

18. The data processing system as in claim 17 , wherein the second pipeline stage is the final pipeline stage.

19. The data processing system as in claim 15 , wherein the one or more processing array modules include pipeline paths configured with shared hardware circuitry to read data elements associated with a first source input and separate hardware circuitry to read data elements associated with a second source input.

20. The data processing system as in claim 19 , wherein the one or more processing array modules include hardware circuitry configured to detect non-zero data elements in the second source input and selectively perform dot product operations based on the non-zero data elements of the second source input and data elements of the first source input that correspond with the non-zero data elements of the second source input.

Priority Claims (1)
IN 202041019059 · May 5, 2020 · national
Continuity (2)
Continuation 16913800 · Jun 26, 2020
Related Publication 20220156343A1 · May 19, 2022
Cited By (1)
US 12,197,534