| CPC G06F 9/30036 (2013.01) [G06F 9/3001 (2013.01); G06F 9/30101 (2013.01); G06F 9/3893 (2013.01); G06F 15/8046 (2013.01)] | 20 Claims |

|
1. An apparatus comprising:
a processor comprising a systolic array to:
execute an instruction for sparse systolic dot product accumulate;
read at least portions of elements of a plurality of source registers referenced by the instruction, wherein the plurality of source registers comprise a first source register having metadata corresponding to structured source data, a second source register having unpacked source data, and a third source register having the structured source data packed based on sparsity as packed source data;
provide a first subset of elements of the packed source data to at least one stage of the systolic array, the at least one stage comprising dot product circuitry;
select, using the metadata, a second subset of elements of the unpacked source data to utilize the at least one stage of the systolic array, the second subset of elements corresponding to the first subset of elements; and
perform, at the at least one stage of the systolic array, dot product accumulate operations.
|