피드로 돌아가기
Make your ZeroGPU Spaces go brrr with ahead-of-time compilation
Hugging Face BlogHugging Face Blog
AI/ML

Hugging Face가 PyTorch의 ahead-of-time 컴파일을 ZeroGPU Spaces에 통합해 모델 추론 속도 1.3×~1.8× 향상 및 콜드 스타트 시간 제거

Make your ZeroGPU Spaces go brrr with ahead-of-time compilation

2025년 9월 2일9intermediate

Context

ZeroGPU는 GPU를 자동으로 할당/해제하는 효율적인 인프라이지만, 이미지·비디오 생성 같은 무거운 작업에서 CUDA 스택의 모든 성능을 활용하지 못했다. PyTorch의 JIT(Just-in-time) 컴파일은 프로세스가 매번 새로 생성되는 ZeroGPU 환경에서 컴파일 캐시 복원에 수십 초~수 분이 소요되어 실무적이지 않았다.

Technical Solution

  • ahead-of-time(AoT) 컴파일 도입: torch.export + AOTInductor를 사용해 모델을 한 번 컴파일한 후 직렬화된 그래프로 저장하고 프로세스 시작 시 즉시 로드
  • regional 컴파일 기법 적용: Flux.1-Dev 컴파일 시간을 6분에서 30초로 단축
  • FP8 양자화 연계: 성능 향상과 함께 모델 용량 최적화
  • 동적 형태(dynamic shapes) 지원: 입력 크기 변동에 대응하는 범용 컴파일 그래프
  • Hub 기반 그래프 공유: 컴파일된 모델 그래프를 Hugging Face Hub에 저장하고 재사용해 Spaces 시작 시간 단축

Impact

  • Flux.1-Dev, Wan, LTX 모델에서 1.3×~1.8× 속도 향상
  • Regional 컴파일 사용 시 Flux.1-Dev 컴파일 시간 6분 → 30초
  • JIT 컴파일의 콜드 스타트 오버헤드 제거

Key Takeaway

GPU를 자동 할당/해제하는 환경에서는 JIT 컴파일보다 ahead-of-time 컴파일이 효과적이며, 컴파일 그래프를 외부 저장소에 캐싱하면 매 실행마다 최적화 과정을 반복하지 않고 즉시 로드할 수 있다.


ZeroGPU 기반 생성 AI 데모를 구축하는 엔지니어는 모델을 개발 환경에서 `torch.export` + `AOTInductor`로 ahead-of-time 컴파일한 후 직렬화된 그래프를 Hub에 저장하고, Spaces 코드에서 로드하는 방식을 적용하면 콜드 스타트 없이

1.3×~

1.8× 성능 향상을 달성할 수 있다.

원문 읽기