TECHNIQUES FOR ACCELERATING NEURAL NETWORKS

Embodiments are generally directed to techniques for accelerating neural networks. Many embodiments include a hardware accelerator for a bi-directional multi-layered GRU and LC neural network. Some embodiments are particularly directed to a hardware accelerator that enables offloading of the entire...

Full description

Saved in:
Bibliographic Details
Main Authors SUBRAMONEY, Sreenivas, KALSI, Gurpreet S, CHAKENALLI NANJEGOWDA, Ramachandra, PILLAI, Kamlesh R
Format Patent
LanguageEnglish
French
Published 18.08.2022
Subjects
Online AccessGet full text

Cover

Loading…
More Information
Summary:Embodiments are generally directed to techniques for accelerating neural networks. Many embodiments include a hardware accelerator for a bi-directional multi-layered GRU and LC neural network. Some embodiments are particularly directed to a hardware accelerator that enables offloading of the entire LC+GRU network to the hardware accelerator. Various embodiments include a hardware accelerator with a plurality of matrix vector units to perform GRU steps in parallel with LC steps. For example, at least a portion of computation by a first matrix vector unit of a GRU step in a neural network may overlap at least a portion of computation by a second matrix vector unit of an output feature vector for the neural network. Several embodiments include overlapping computation associated with a layer of a neural network with data transfer associated with another of the neural network. Des modes de réalisation de l'invention concernent de manière générale des techniques d'accélération de réseaux neuronaux. De nombreux modes de réalisation comprennent un accélérateur matériel pour un réseau neuronal GRU et LC multicouches bidirectionnel. Certains modes de réalisation concernent en particulier un accélérateur matériel qui permet le déchargement de l'ensemble du réseau LC+GRU vers l'accélérateur matériel. Divers modes de réalisation comprennent un accélérateur matériel comprenant une pluralité d'unités vectorielles matricielles destinées à exécuter des étapes GRU en parallèle avec des étapes LC. Par exemple, au moins une portion de calcul par une première unité vectorielle matricielle d'une étape GRU dans un réseau neuronal peut chevaucher au moins une portion de calcul par une deuxième unité de vectorielle matricielle d'un vecteur de caractéristique de sortie pour le réseau neuronal. Plusieurs modes de réalisation comprennent le calcul en chevauchement associé à une couche d'un réseau neuronal avec un transfert de données associé à un autre du réseau neuronal.
Bibliography:Application Number: WO2022US11815