CPC G06F 17/16 (2013.01) [G06N 3/08 (2013.01)] | 20 Claims |
1. A method comprising:
receiving, by a compiler, a padded input data element matrix that includes an input data element matrix at least partially surrounded by padding elements, wherein the input data element matrix stores input data elements;
receiving, by the compiler, a weight matrix that stores weight values to be used with the input data elements;
for each weight value from the weight values of the weight matrix:
determining, by the compiler, coordinates and dimensions for a multiplication matrix within the padded input data element matrix to be used with the weight value; and
reassigning, by the compiler, the coordinates and the dimensions for the multiplication matrix within the padded input data element matrix to exclude the padding elements;
generating, by the compiler, compiled code to be executed by a computation engine having a systolic array having columns and rows of processing elements, the compiled code incorporating the reassigned coordinates and the reassigned dimensions; and
performing, at the computation engine and based on executing the compiled code, matrix multiplications using the reassigned coordinates and the reassigned dimensions.
|