학술논문

SMT-SA: Simultaneous Multithreading in Systolic Arrays
Document Type
Periodical
Source
IEEE Computer Architecture Letters IEEE Comput. Arch. Lett. Computer Architecture Letters. 18(2):99-102 Dec, 2019
Subject
Computing and Processing
Deep learning
Task analysis
Multithreading
Convolution
Energy consumption
Instruction sets
Correlation
Systolic arrays
multithreading
Language
ISSN
1556-6056
1556-6064
2473-2575
Abstract
Systolic arrays (SAs) are highly parallel pipelined structures capable of executing various tasks such as matrix multiplication and convolution. They comprise a grid of usually homogeneous processing units (PUs) that are responsible for the multiply-accumulate (MAC) operations in the case of matrix multiplication. It is not rare for a PU input to be zero-valued, in which case the PU becomes idle and the array becomes underutilized. In this paper we consider a solution to employ the underutilized PUs via simultaneous multithreading (SMT). We explore the design space of a SMT-SA variant and evaluate its performance, area efficiency, and energy consumption. In addition, we suggest a tiling method to reduce area overheads. Our evaluation shows that a 4-thread FP16-based SMT-SA achieves speedups of up to 3.6× as compared to conventional SA, with 1.7× area overhead and negligible energy overhead.