[논문 리뷰] PASTA: A Modular Program Analysis Tool Framework for Accelerators
PASTA는 경량의 모듈식 프레임워크로, 크로스-벤더 가속기 프로파일링과 DL 프레임워크 이벤트를 통합하여 맞춤형 확장 가능한 성능 분석을 가능하게 합니다. GPU 가속, 범위 중심 분석 및 다중 GPU 지원을 오픈 소스 도구로 시연합니다.
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 further show that PASTA provides detailed performance insights with significantly lower overhead, up to 1.3*10^4 faster than conventional analysis tools, thanks to its GPU-accelerated backend. PASTA strikes a practical balance between usability, extensibility, and efficiency, making it well-suited for modern accelerator-based computing environments.
연구 동기 및 목표
- 다수 벤더의 가속기에서 런타임 이벤트를 포착하고 분석하기 위한 유연하고 경량의 프레임워크를 제공합니다.
- 벤더별 프로파일링 인터페이스를 추상화하여 통합된 크로스-벤더 분석 워크플로를 가능하게 합니다.
- 깊이 있는 학습 프레임워크 이벤트를 통합하여 분석에서 상위 수준의 워크로드 컨텍스트를 제공합니다.
- DL 워크로드 특성화 및 UVM 최적화 도구를 통해 실용적 유용성을 시연합니다.
- 단일 및 다중 GPU 설정에 대한 확장성을 분석 오버헤드 감소와 함께 보여줍니다.
제안 방법
- 손쉬운 확장을 위한 모듈형 인터페이스를 갖춘 Event Handler, Event Processor, Tool Collection으로 구성된 세 모듈 아키텍처를 도입합니다.
- 장치 측 전처리가 CPU- GPU 오버헤드를 줄이는 GPU 가속 이벤트 처리 경로를 구현합니다.
- 교차 벤더 프로파일링을 지원하기 위한 낮은 수준의 가속기 이벤트와 높은 수준의 DL 프레임워크 이벤트를 포함하는 통일된 이벤트 분류와 정규화기를 제공합니다.
- 환경 변수와 Python 주석을 통해 최소한의 침입으로 세밀한 프로파일링이 가능한 범위 기반 분석을 활성화합니다.
- 소스 코드를 변경하지 않고 애플리케이션을 계측하기 위한 런타임 주입 인터페이스(LD_PRELOAD)를 제공합니다.
- 확장성 및 오버헤드 이점을 검증하기 위한 예제 도구(예: DL 워크로드 특성화, UVM 최적화)를 개발합니다.
실험 결과
연구 질문
- RQ1다중 벤더에 걸쳐 저수준 가속기 이벤트와 높은 수준 DL 프레임워크 이벤트를 모두 포착하는 통합적이고 확장 가능한 프레임워크는 어떻게 만들 수 있습니까?
- RQ2DL 워크로드를 프로파일링할 때 CPU 기반 분석과 비교하여 GPU 거주 수집-분석 모델의 오버헤드와 효과는 무엇입니까?
- RQ3모듈식 도구 수집이 최소한의 도구화로 커스텀 분석의 빠른 프로토타이핑을 지원할 수 있습니까?
- RQ4주류 DL 워크로드에서 단일 및 다중 GPU 시나리오에서 Pasta의 성능은 어떠합니까?
- RQ5Pasta 기반 도구를 통해 어떤 종류의 통찰(커널 병목, 메모리 패턴, UVM 동작)을 얻을 수 있습니까?
주요 결과
- Pasta는 DL 프레임워크 통합 및 오픈 소스 제공과 함께 NVIDIA 및 AMD GPU에 대한 크로스-벤더 지원을 제공합니다.
- GPU 가속 분석 백엔드는 오버헤드를 줄여 기존 도구보다 훨씬 빠른 프로파일링을 달성합니다( GPU-가속 백엔드).
- 케이스 연구는 커널 병목 현상, 메모리 저활용, UVM 프리패칭 최적화와 같은 실행 가능한 통찰력을 보여줍니다.
- Pasta의 모듈식 설계는 프레임워크에 최소한의 변경으로 맞춤 분석의 빠른 프로토타이핑을 가능하게 합니다.
- 다중 GPU 설정은 이벤트를 디바이스와 연관시켜 프로파일링할 수 있으며 분산 컨텍스트에서 랭크별 또는 노드별 프로파일링이 가능합니다.
- Pasta로 구축된 도구는 벤더 특화 프로파일링 파이프라인보다 오버헤드가 낮고 크로스 레이어 가시성이 더 풍부합니다.
더 나은 연구,지금 바로 시작하세요
연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.