Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Ashish Gondimalla

dblp:250/9020 · DBLP profile ↗
← Back
3ranked-venue papers
3as first author
2since 2021 · last 2023
0000-0002-3370-3576ORCID · corroborated

Domains — the database's venue-derived domains; a paper can count in several

Systems, architecture and hardware · 3 · 3 first-author · 2 since 2021

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Computer architecture, parallel and distributed computing, and storage systems
3 papers
Hardware accelerators and domain-specific architectures · 56% Memory systems · 12% Reconfigurable computing and FPGAs · 11%

Topics — the 12 heaviest of 14, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Hardware accelerators and domain-specific architectures
machine learning accelerator
1.022023
Eureka: Efficient Tensor Cores for One-sided Unstructured Sparsity in DNN Inference · MICRO 2023
SparTen: A Sparse Tensor Accelerator for Convolutional Neural Networks · MICRO 2019
Integrated circuit design › asynchronous circuit design
asynchronous pipeline
0.712023
Occam: Optimal Data Reuse for Convolutional Neural Networks · ACM Trans. Archit. Code Optim. 2023
Hardware accelerators and domain-specific architectures › machine learning accelerator
CNN accelerator
0.712023
Occam: Optimal Data Reuse for Convolutional Neural Networks · ACM Trans. Archit. Code Optim. 2023
Hardware accelerators and domain-specific architectures
data reuse optimization
0.712023
Occam: Optimal Data Reuse for Convolutional Neural Networks · ACM Trans. Archit. Code Optim. 2023
Reconfigurable computing and FPGAs
FPGA accelerator
0.712023
Occam: Optimal Data Reuse for Convolutional Neural Networks · ACM Trans. Archit. Code Optim. 2023
Hardware accelerators and domain-specific architectures › machine learning accelerator
neural network accelerator
0.712023
Occam: Optimal Data Reuse for Convolutional Neural Networks · ACM Trans. Archit. Code Optim. 2023
Memory systems › memory management
on-chip memory management
0.712023
Occam: Optimal Data Reuse for Convolutional Neural Networks · ACM Trans. Archit. Code Optim. 2023
Hardware accelerators and domain-specific architectures › accelerator architecture › accelerator microarchitecture
pipelined accelerator
0.712023
Occam: Optimal Data Reuse for Convolutional Neural Networks · ACM Trans. Archit. Code Optim. 2023
GPUs and heterogeneous computing › GPU computing › tensor cores
sparse tensor core
0.712023
Eureka: Efficient Tensor Cores for One-sided Unstructured Sparsity in DNN Inference · MICRO 2023
Hardware accelerators and domain-specific architectures › machine learning accelerator › CNN accelerator
sparse CNN accelerator
0.412019
SparTen: A Sparse Tensor Accelerator for Convolutional Neural Networks · MICRO 2019
Memory systems › memory bandwidth
memory bandwidth optimization
0.212023
Occam: Optimal Data Reuse for Convolutional Neural Networks · ACM Trans. Archit. Code Optim. 2023
Reconfigurable computing and FPGAs › FPGA accelerator
FPGA accelerator implementation
0.112019
SparTen: A Sparse Tensor Accelerator for Convolutional Neural Networks · MICRO 2019

Methods — techniques the papers use, named apart from their topics

work assignment algorithm · 0.7single-step uni-directional displacement · 0.7offline systolic scheduling · 0.7dynamic programming · 0.7inner join of sparse vectors · 0.4greedy balancing · 0.4
YearPublicationVenuePosition
2023 Eureka: Efficient Tensor Cores for One-sided Unstructured Sparsity in DNN Inference
abstract
Deep neural networks (DNNs), while enormously popular, continue to place ever higher compute demand for which GPUs provide specialized matrix multipliers called tensor cores. To reduce the compute demand via sparsity, Nvidia Ampere’s tensor cores support 2:4 structured sparsity in the filters (i.e., two non-zeros out of four values) which provides uniform 50% sparsity without any load imbalance issues. Consequently, the sparse tensor cores maintain (input or output) operand stationarity, which is fundamental for avoiding high-overhead hardware, requiring only one extra 4-1 multiplexer per multiply-accumulate unit (MAC). However, 2:4 sparsity is limited to 2x improvements in performance and energy without loss of accuracy, whereas unstructured sparsity provides 5-6x opportunity albeit while causing load imbalance. Previous papers on unstructured sparsity incur high hardware overhead (e.g., buffering, crossbars, scatter-gather networks, and address calculators) mainly due to sacrificing operand stationarity in favor of load balance. To avoid adding high overheads to the highly-efficient tensor cores, we propose Eureka, an efficient tensor core for unstructured sparsity. Eureka addresses load imbalance via three contributions: (1) Our key insight is that a slight weakening of output stationarity achieves load balance most of the time while incurring only a modest hardware overhead. Accordingly, we propose single-step uni-directional displacement (SUDS), where a filter element’s multiplication can either occur in its original position or be displaced to a vacant MAC in the adjacent row below while the accumulation occurs in the original row to restore output stationarity. SUDS is an offline technique for inference. (2) We provide an optimal algorithm for work assignment for SUDS. (3) To achieve fewer bubbles in the tensor core’s systolic pipeline due to the irregularity of unstructured sparsity, we propose offline systolic scheduling to group together the sparse filters with similar, statically-known execution times (based on the number of non-zeros). Our evaluation shows that Eureka achieves 4.8x and 2.4x speedups, and 3.1x and 1.8x energy reductions over dense and 2:4 sparse (Ampere) implementations, respectively, and incurs area and power overheads of 6% and 11.5%, respectively, over Ampere.
Ashish Gondimalla, Mithuna Thottethodi, T. N. Vijaykumar
MICRO1
2023 Occam: Optimal Data Reuse for Convolutional Neural Networks
abstract
Convolutional neural networks (CNNs) are emerging as powerful tools for image processing in important commercial applications. We focus on the important problem of improving the latency of image recognition. While CNNs are highly amenable to prefetching and multithreading to avoid memory latency issues, CNNs’ large data – each layer’s input, filters, and output – poses a memory bandwidth problem. While previous work captures only some of the enormous data reuse, full reuse implies that the initial input image and filters are read once from off-chip and the final output is written once off-chip without spilling the intermediate layers’ data to off-chip. We propose Occam to capture full reuse via four contributions. First, we identify the necessary conditions for full reuse. Second, we identify the dependence closure as the sufficient condition to capture full reuse using the least on-chip memory. Third, because the dependence closure is often too large to fit in on-chip memory, we propose a dynamic programming algorithm that optimally partitions a given CNN to guarantee the least off-chip traffic at the partition boundaries for a given on-chip capacity. While tiling is well-known, our contribution determines the optimal cross-layer tiles. Occam’s partitions reside on different chips, forming a pipeline so that a partition’s filters and dependence closure remain on-chip as different images pass through (i.e., each partition incurs off-chip traffic only for its inputs and outputs). Finally, because the optimal partitions may result in an unbalanced pipeline, we propose staggered asynchronous pipelines (STAPs) that replicate bottleneck stages to improve throughput by staggering mini-batches across replicas. Importantly, STAPs achieve balanced pipelines without changing Occam’s optimal partitioning. Our simulations show that, on average, Occam cuts off-chip transfers by 21× and achieves 2.04× and 1.21× better performance, and 33% better energy than the base case, respectively. Using a field-programmable gate array (FPGA) implementation, Occam performs 6.1× and 1.5× better, on average, than the base case and Layer Fusion, respectively.
Ashish Gondimalla, Jianqiao Liu, Mithuna Thottethodi, T. N. Vijaykumar
ACM Trans. Archit. Code Optim.1
2019 SparTen: A Sparse Tensor Accelerator for Convolutional Neural Networks
abstract
Convolutional neural networks (CNNs) are emerging as powerful tools for image processing. Recent machine learning work has reduced CNNs' compute and data volumes by exploiting the naturally-occurring and actively-transformed zeros in the feature maps and filters. While previous semi-sparse architectures exploit one-sided sparsity either in the feature maps or the filters, but not both, a recent fully-sparse architecture, called Sparse CNN (SCNN), exploits two-sided sparsity to improve performance and energy over dense architectures. However, sparse vector-vector dot product, a key primitive in sparse CNNs, would be inefficient using the representation adopted by SCNN. The dot product requires finding and accessing non-zero elements in matching positions in the two sparse vectors -- an inner join using the position as the key with a single value field. SCNN avoids the inner join by performing a Cartesian product capturing the relevant multiplications. However, SCNN's approach incurs several considerable overheads and is not applicable to non-unit-stride convolutions. Further, exploiting reuse in sparse CNNs fundamentally causes systematic load imbalance not addressed by SCNN. We propose SparTen which achieves efficient inner join by providing support for native two-sided sparse execution and memory storage. To tackle load imbalance, SparTen employs a software scheme, called greedy balancing, which groups filters by density via two variants, a software-only one which uses whole-filter density and a software-hardware hybrid which uses finer-grain density. Our simulations show that, on average, SparTen performs 4.7x, 1.8x, and 3x better than a dense architecture, one-sided sparse architecture, and SCNN, respectively. An FPGA implementation shows that SparTen performs 4.3x and 1.9x better than a dense architecture and a one-sided sparse architecture, respectively.
Ashish Gondimalla, Noah Chesnut, Mithuna Thottethodi, T. N. Vijaykumar
MICRO1