Repolode
Lightning-AI

Lightning-AI/lightning-thunder

PyTorch 모델의 학습과 추론을 최적화하는 소스 간 컴파일러로, 검사 가능한 IR과 조합 가능한 변환을 제공합니다.

스타
1,474
포크
120
열린 이슈
483
마지막 커밋
25일 전

어떤 프로젝트인가요?

Thunder는 PyTorch용 딥러닝 컴파일러로, 모델을 받아 최적화된 버전으로 변환합니다. 전체 계산을 단순한 Python 유사 중간 표현으로 캡처하므로, 이를 검사하고 프로파일링한 뒤 더 빠른 연산이나 커널로 교체하도록 재작성할 수 있습니다.

최적화는 계산 트레이스, 모델, 가중치에 적용되는 transform과 플러그인을 통해 수행됩니다. 지원 옵션에는 분산 병렬 처리(DDP, FSDP, TP), FP8 및 MXFP8 정밀도, 양자화, CUDA Graphs가 포함됩니다. 실행은 NVFuser 및 torch.compile 같은 fuser, cuDNN SDPA 및 TransformerEngine 같은 특화 라이브러리, 사용자 정의 Triton 및 CUDA 커널 또는 PyTorch eager 연산으로 전달됩니다.

진입점은 thunder.compile(model)이며, 일반 torch 모듈이나 LitGPT 및 Hugging Face Transformers 같은 라이브러리의 모델에 적용할 수 있습니다.

핵심 기능

  • 01전체 계산 그래프를 검사 가능한 Python 유사 IR로 캡처합니다.
  • 02모델, 트레이스, 가중치를 함께 수정하는 조합 가능한 transform을 제공합니다.
  • 03분산 학습(DDP, FSDP, TP), FP8/MXFP8, 양자화, CUDA Graphs를 위한 플러그인을 제공합니다.
  • 04연산을 fuser, cuDNN, TransformerEngine, Triton 또는 CUDA 커널로 디스패치합니다.

활용 사례

  • NVIDIA GPU에서 LLM 사전 학습이나 파인튜닝을 가속합니다.
  • Hugging Face 또는 torchvision 모델을 더 낮은 지연 시간으로 실행합니다.
  • 모델의 혼합 정밀도 또는 양자화 설정을 실험합니다.
  • 단일 GPU PyTorch 모델을 멀티 GPU 분산 실행으로 확장합니다.

빠른 시작

  1. 1

    pip으로 Thunder 설치

    pip install lightning-thunder
  2. 2

    PyTorch와 torchvision 설치 또는 업그레이드

    pip install -U torch torchvision
  3. 3

    Thunder로 PyTorch 모델을 컴파일하고 실행(README의 Hello World 예제 참고)

사용 전 알아둘 점

  • 선택적 NVIDIA GPU 지원에는 특정 torch 및 CUDA 버전에 맞는 nvfuser 빌드와 같은 추가 패키지가 필요합니다.
  • transformer_engine을 통한 Float8 지원은 소스에서 컴파일해야 하며 설치 시간이 오래 걸립니다.
  • README에 따르면 Thunder는 torch.compile을 대체하지 않으며, 특정 구성에서 주로 속도 향상을 제공합니다.

토픽

자주 묻는 질문

lightning-thunder은(는) 무엇인가요?
PyTorch 모델의 학습과 추론을 최적화하는 소스 간 컴파일러로, 검사 가능한 IR과 조합 가능한 변환을 제공합니다. Thunder는 PyTorch용 딥러닝 컴파일러로, 모델을 받아 최적화된 버전으로 변환합니다. 전체 계산을 단순한 Python 유사 중간 표현으로 캡처하므로, 이를 검사하고 프로파일링한 뒤 더 빠른 연산이나 커널로 교체하도록 재작성할 수 있습니다.
lightning-thunder은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
lightning-thunder은(는) Apache-2.0 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
lightning-thunder은(는) 아직 유지보수되고 있나요?
활발히 유지보수 중. lightning-thunder의 마지막 커밋은 2026년 10월 12일입니다.
lightning-thunder은(는) 어디에 사용할 수 있나요?
NVIDIA GPU에서 LLM 사전 학습이나 파인튜닝을 가속합니다. Hugging Face 또는 torchvision 모델을 더 낮은 지연 시간으로 실행합니다. 모델의 혼합 정밀도 또는 양자화 설정을 실험합니다. 단일 GPU PyTorch 모델을 멀티 GPU 분산 실행으로 확장합니다.
lightning-thunder는 어떻게 설치하나요?
pip으로 Thunder 설치: pip install lightning-thunder PyTorch와 torchvision 설치 또는 업그레이드: pip install -U torch torchvision Thunder로 PyTorch 모델을 컴파일하고 실행(README의 Hello World 예제 참고)
lightning-thunder은(는) 어디서 받을 수 있나요?
소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/Lightning-AI/lightning-thunder

요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.

관련 프로젝트