DNN Accelerator Heterogeneous Tile Selection for PE Utilization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional DNN accelerators with homogeneous tiles face limitations in maximizing PE utilization across various DNN workloads, leading to suboptimal throughput and energy consumption in resource-constrained devices.
Innovation Solution
The implementation of a DNN accelerator with heterogeneous tiles, where each tile has a unique size determined by the number of PE columns and rows, allowing for dynamic selection and partitioning of workloads based on the dimensions of convolutional layers to maximize PE utilization.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of manufacture
If homogeneous tiles are used in DNN accelerators, then device complexity is reduced and ease of manufacture is improved, but PE utilization and throughput deteriorate across various DNN workloads
Solution Approach 1:
The DNN accelerator is segmented into multiple tiles with different sizes (e.g., 16x16, 32x32, 64x64 PEs) rather than using uniform homogeneous tiles. Each tile size is optimized for specific workload characteristics, allowing the system to segment and handle different DNN layers appropriately, thereby improving PE utilization and throughput without significantly complicating the overall architecture
Solution Approach 2:
The system dynamically selects and configures tile sizes based on the characteristics of each DNN layer being processed. The tile configuration is not fixed but adapts to the computational requirements of different workloads, enabling optimal PE utilization across varying DNN operations while maintaining a manageable device complexity through systematic adaptation
2Device complexity
If homogeneous tiles are used in DNN accelerators, then device complexity is reduced, but energy efficiency deteriorates due to suboptimal PE utilization
Solution Approach 1:
Different regions (tiles) of the DNN accelerator are assigned different sizes and configurations optimized for specific computational patterns. This local optimization ensures that each tile operates at peak efficiency for its designated workload type, improving overall energy efficiency without requiring complete redesign of the entire accelerator architecture
Solution Approach 2:
The system changes key parameters such as tile dimensions and PE counts based on workload requirements. By adjusting these parameters dynamically, the accelerator achieves optimal energy efficiency for different DNN operations while maintaining reasonable device complexity through systematic parameter management rather than architectural overhauls
3Ease of operation
If tile size is fixed in DNN accelerators, then device complexity is reduced and ease of operation is improved, but adaptability to different DNN workloads deteriorates
Solution Approach 1:
The DNN accelerator employs multiple tile types with different sizes that can be universally applied to various DNN workload types. This multi-functionality allows the same accelerator architecture to efficiently handle different convolutional layer configurations, making the system adaptable to diverse DNN operations while maintaining ease of operation through a unified control mechanism
Data Source
Figure 1
Figure 2
Figure 3
AI summary
An DNN accelerator includes one or more heterogenous tile sets. A heterogenous tile set includes tiles of different sizes, e.g., PE arrays including different numbers of columns or rows. The DNN accelerator may identify a tile set from the tile sets for running a DNN model based on dimensions of output tensors convolutional layers in the DNN. Within the selected tile set, a tile may be selected for a convolutional layer in the DNN, e.g., based on dimensions of the output tensor of the convolutional layer and the size of the tile. After the tile is selected, the workload for running a convolutional operation of the layer may be partitioned and assigned to individual PEs in the tile by partitioning the output tensor into output tensor segments. The workload of computing an individual output tensor segment can be assigned to an individual PE in the tile.