PASTA: A Modular Program Analysis Tool Framework for Accelerators
Mao Lin, Hyeran Jeon, Keren Zhou

TL;DR
PASTA is a flexible, low-overhead, modular framework for program analysis of hardware accelerators, enabling rapid prototyping and detailed performance insights across diverse GPU workloads.
Contribution
It introduces a unified, extensible analysis framework that abstracts low-level APIs and accelerates analysis with GPU support, outperforming traditional tools in efficiency.
Findings
PASTA enables rapid development of custom analysis tools.
It provides detailed performance insights with significantly lower overhead.
Demonstrated effectiveness on NVIDIA and AMD GPUs across multiple workloads.
Abstract
The increasing complexity and diversity of hardware accelerators in modern computing systems demand flexible, low-overhead program analysis tools. We present PASTA, a low-overhead and modular Program AnalysiS Tool Framework for Accelerators. PASTA abstracts over low-level profiling APIs and diverse deep learning frameworks, offering users a unified interface to capture and analyze runtime events at multiple levels. Its extensible design enables researchers and practitioners to rapidly prototype custom tools with minimal overhead. We demonstrate the utility of PASTA by developing several analysis tools, including a deep learning workload characterization tool and a UVM optimization tool. Through extensive evaluation on mainstream deep learning workloads tested on NVIDIA and AMD GPUs under both single- and multi-GPU scenarios, we demonstrate PASTA's broad applicability. On NVIDIA GPUs, we…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsParallel Computing and Optimization Techniques · Embedded Systems Design Techniques · Security and Verification in Computing
