PyTorch 프로파일링 입문 가이드 시리즈의 첫 번째 글입니다. LLM 성능 향상, 추론 시간 단축, 훈련 루프 속도 개선을 위해 프로파일링이 필수적이지만, 추상적인 데이터 때문에 어려움을 겪는 경우가 많습니다.
본 가이드에서는 간단한 행렬 곱셈과 편향 덧셈 연산을 통해 프로파일러 테이블과 추적(CPU 레인, GPU 레인)을 읽는 방법을 배웁니다. PyTorch 연산이 GPU 커널로 변환되는 과정을 이해하고 torch.compile 적용 시 변화를 관찰합니다.
torch.profiler를 설정하고 결과를 해석하는 방법, CPU 레인과 GPU 레인 사이의 간극을 이해하는 방법, Python 호출부터 CUDA 커널까지의 이벤트 연쇄를 파악하는 방법을 익힐 수 있습니다. GPU 커널은 GPU의 여러 스레드에서 병렬로 실행되며, CPU가 스케줄링하고 실행합니다.