공식 블로그 번역을 준비하다가, 시간이 걸릴 것 같아 먼저 출시 소식부터 전합니다.
자세한 출시 소식은 주말 중에 파이토치 한국어 사용자 모임 블로그를 통해 전하겠습니다. ![]()
PyTorch 2.3은 직접 정의한 Triton 커널을 torch.compile()에서 바로 지원하여, 사용자 별도로 마이그레이션을 해야 하거나 성능 저하 경험을 하지 않도록 한 것이 주요 특징입니다. 또한, Tensor Parallelism(텐서 병렬화)의 개선을 통해 PyTorch 자체 함수들을 사용하여 LLM 학습 경험을 개선하였습니다.
이번 릴리즈는 PyTorch 2.2 이후 426명의 기여자들로부터 3,393번의 커밋을 통해 이뤄졌으며, 주요 업데이트 기능들은 다음과 같습니다:
| Beta | Prototype | Performance Improvements |
|---|---|---|
| User-defined Triton kernels in torch.compile | torch.export adds new API to specify dynamic_shapes | Weight-Only-Quantization introduced into Inductor CPU backend |
| Tensor parallelism within PyTorch Distributed | Asynchronous checkpoint generation | |
| Support for semi-structured sparsity |
주요 기능
-
사용자 정의 트리톤 커널 지원: 트리톤 커널을 포함하는 PyTorch 코드를
torch.compile을 사용해 네이티브로 실행할 수 있습니다. 이를 통해 사용자는 성능 저하 없이 코드를 마이그레이션할 수 있으며, Torch Inductor를 통한 사전 컴파일과 최적화도 가능해집니다. -
텐서 병렬 처리: 이 API는 GPU나 호스트 간의 텐서 조작을 쉽게 할 수 있게 하며, 2D 병렬 처리(텐서 병렬 처리 + 데이터 병렬 처리)를 지원합니다. 이 기능은 1000억 개 이상의 파라미터를 가진 트랜스포머 모델 훈련을 지원하는 것으로 검증되었습니다.
-
반정형 희소성:
torch.sparse.SparseSemiStructuredTensor는 반정형 희소성을 구현하여 밀집 행렬 곱셈 대비 최대 1.6배 빠른 연산을 제공합니다.
더 읽어보기
PyTorch 2.3 Release Blog
트리톤 커널 튜토리얼 / Triton kernels tutorial
https://pytorch.org/tutorials/recipes/torch_compile_user_defined_triton_kernel_tutorial.html
텐서 병렬 처리 튜토리얼 / Tensor Parallelism tutorial
https://pytorch.org/tutorials/intermediate/TP_tutorial.html
반정형 희소 튜토리얼 / Semi-Structured Sparsity tutorial
https://pytorch.org/tutorials/advanced/semi_structured_sparse.html
파이토치 한국 사용자 모임
이 정리한 이 글이 유용하셨나요? 회원으로 가입하시면 주요 글들을 이메일
로 보내드립니다! (기본은 Weekly지만 Daily로 변경도 가능합니다.)
아래
쪽에 좋아요
를 눌러주시면 새로운 소식들을 정리하고 공유하는데 힘이 됩니다~ ![]()