DYNAMIC PRECISION MANAGEMENT FOR INTEGER DEEP LEARNING PRIMITIVES
First Claim
1. A graphics processing unit to perform computations associated with a neural network, the graphics processing unit comprising:
- compute unit including a hardware logic unit having dynamic precision fixed-point logic;
a decode unit to decode an instruction for execution by the compute unit, the instruction to cause the compute unit to perform a matrix arithmetic operation on a set of dynamic fixed-point tensors; and
a dynamic precision manager to dynamically adjust the precision of a compute operation performed by the compute unit during the matrix arithmetic operation, the dynamic precision manager to adjust the precision of the compute operation to prevent an arithmetic overflow.
1 Assignment
0 Petitions
Accused Products
Abstract
One embodiment provides for a graphics processing unit to perform computations associated with a neural network, the graphics processing unit comprising compute unit including a hardware logic unit having dynamic precision fixed-point logic; a decode unit to decode an instruction for execution by the compute unit, the instruction to cause the compute unit to perform a matrix arithmetic operation on a set of dynamic fixed-point tensors; and a dynamic precision manager to dynamically adjust the precision of a compute operation performed by the compute unit during the matrix arithmetic operation, the dynamic precision manager to adjust the precision of the compute operation to prevent an arithmetic overflow.
55 Citations
20 Claims
-
1. A graphics processing unit to perform computations associated with a neural network, the graphics processing unit comprising:
-
compute unit including a hardware logic unit having dynamic precision fixed-point logic; a decode unit to decode an instruction for execution by the compute unit, the instruction to cause the compute unit to perform a matrix arithmetic operation on a set of dynamic fixed-point tensors; and a dynamic precision manager to dynamically adjust the precision of a compute operation performed by the compute unit during the matrix arithmetic operation, the dynamic precision manager to adjust the precision of the compute operation to prevent an arithmetic overflow. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method comprising:
-
receiving a set of dynamic fixed-point tensors; computing a right-shift value using an absolute maximum value within the set of dynamic fixed-point tensors and a dynamic range of the set of dynamic fixed-point tensors; right-shifting data values within the set of dynamic fixed-point tensors; incrementing a shared exponent associated with the set of dynamic fixed-point tensors based on an amount of right-shift applied to the data values; and performing a compute operation on the set of dynamic fixed-point tensors. - View Dependent Claims (10, 11, 12, 13, 14)
-
-
15. A data processing system comprising:
-
a non-transitory machine readable medium storing instructions; and one or more processors including at least one graphics processor, the at least one graphics processor including; a compute unit including a hardware logic unit having dynamic precision fixed-point logic, the compute unit to perform a matrix arithmetic operation on a set of dynamic fixed-point tensors; and a dynamic precision manager to dynamically adjust the precision of a compute operation performed by the compute unit during the matrix arithmetic operation on the set of dynamic fixed-point tensors, the dynamic precision manager to prevent an arithmetic overflow during the compute operation. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification