INSTRUCTION SUPPORT FOR MATRIX MULTIPLICATION

Techniques are disclosed relating to instruction set architecture support for matrix manipulations. In disclosed embodiments, front-end circuitry is configured to fetch and decode a matrix multiply instruction for execution, including to encode a given matrix input operand of the matrix multiply ins...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Hauptverfasser: BADIN, Matthew L, SAZEGARI, Ali
Format: Patent
Sprache:eng ; fre
Schlagworte:
Online-Zugang:Volltext bestellen
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Beschreibung
Zusammenfassung:Techniques are disclosed relating to instruction set architecture support for matrix manipulations. In disclosed embodiments, front-end circuitry is configured to fetch and decode a matrix multiply instruction for execution, including to encode a given matrix input operand of the matrix multiply instruction to identify one or more vector registers defined according to an instruction set architecture. In some embodiments, datapath circuitry is configured to execute the matrix multiply instruction, where during execution of the instruction, the one or more vector registers corresponding to the given matrix operand are mapped within the datapath circuitry to at least two dimensions of the given matrix operand. In some embodiments, power management circuitry is configured to, during execution of the instruction, operate at least a portion of the front-end circuitry in a reduced-power mode. Disclosed techniques may advantageously increase throughput and reduce power consumption, relative to traditional implementations using vector operations. L'invention divulgue des techniques relatives à un support d'architecture d'ensemble d'instructions pour des manipulations de matrice. Dans des modes de réalisation de l'invention, des circuits frontaux sont configurés pour extraire et décoder une instruction de multiplication de matrice en vue d'une exécution, y compris pour coder un opérande d'entrée de matrice donné de l'instruction de multiplication de matrice afin d'identifier un ou plusieurs registres vectoriels définis selon une architecture d'ensemble d'instructions. Dans certains modes de réalisation, des circuits de chemin de données sont configurés pour exécuter l'instruction de multiplication de matrice ; pendant l'exécution de l'instruction, le ou les registres vectoriels correspondant à l'opérande de matrice donné sont mappés dans les circuits de chemin de données sur au moins deux dimensions de l'opérande de matrice donné. Dans certains modes de réalisation, des circuits de gestion de puissance sont configurés, pendant l'exécution de l'instruction, pour exploiter au moins une partie des circuits frontaux dans un mode à consommation réduite. Les techniques décrites peuvent avantageusement augmenter le débit et réduire la consommation d'énergie, par rapport à des mises en œuvre classiques à l'aide d'opérations vectorielles.