MMA Accelerator Memory Partitioning for Concurrent Matrix Compute
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Performing matrix multiply-accumulate (MMA) operations in a processor results in the register file being locked, forcing other instructions to wait, which limits parallel processing capabilities.
Innovation Solution
Utilizing exclusive memory, such as tensor memory and shared memory, to store operands and accumulated results for MMA operations, allowing the register file to be available for other operations, and enabling asynchronous or concurrent performance of MMA operations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If MMA operations store results in the register file, then computation accuracy is maintained, but the register file is locked and other instructions must wait
Solution Approach 1:
The patent divides the storage resources into separate segments: dedicated tensor memory for MMA operations and register file for other general-purpose operations. This segmentation allows MMA operations to store accumulated results in tensor memory without blocking the register file, enabling other instructions to execute concurrently while maintaining computation accuracy through dedicated storage space.
2Reliability
If the register file is locked for MMA operations, then data consistency is ensured, but instruction throughput decreases
Solution Approach 1:
The patent extracts the storage function for MMA operations from the register file and places it in dedicated tensor memory. This extraction removes the conflict between MMA operations and other instructions, allowing the register file to remain unlocked and available for general-purpose operations while tensor memory ensures data consistency for MMA accumulations.
3Productivity
If exclusive memory is used for MMA operations, then concurrent computations are enabled, but memory complexity increases
Solution Approach 1:
The patent implements tensor memory with multi-functionality: it serves as dedicated storage for MMA operations while the register file continues to handle general-purpose operations. This universal memory architecture allows the system to support concurrent computations without requiring entirely separate memory systems, managing complexity through shared control logic and unified address space.
Data Source
AI summary
Apparatuses, systems, and techniques to perform an matrix multiply accumulate (MMA) instruction to cause a plurality of portions of an MMA operation to be performed using a corresponding plurality of MMA accelerators. In at least one embodiment, a processor retrieves a plurality of matrix information from a memory that exclusively stores and performs a multiplication computation using said matrix information.


