Repolode
facebookincubator

facebookincubator/AITemplate

딥러닝 네트워크를 NVIDIA 및 AMD GPU에서 빠르게 추론할 수 있는 fp16 CUDA/HIP C++ 코드로 컴파일하는 Python 프레임워크입니다.

대체할 수 있는 제품:TensorRT

스타
4,735
포크
386
열린 이슈
163
마지막 커밋
지난달

어떤 프로젝트인가요?

AITemplate(AIT)은 딥러닝 네트워크를 추론 서빙용 CUDA(NVIDIA) 또는 HIP(AMD) C++ 코드로 변환하는 Python 프레임워크입니다. TensorCore 및 MatrixCore 하드웨어에서 fp16 워크로드를 처리하며, 지원 모델로 ResNet, MaskRCNN, BERT, Vision Transformer, Stable Diffusion을 소개합니다.

컴파일러는 수평 융합(병렬 GEMM 및 LayerNorm 연산자를 하나의 커널로 결합), 수직 융합(원소별 연산, reduction, 레이아웃 변경을 TensorCore/MatrixCore 작업에 통합), 메모리 융합(연결, 분할, 슬라이스 연산을 이전 연산자와 병합)을 적용합니다. 컴파일된 각 모델은 cuBLAS, cuDNN, TensorRT 또는 유사한 런타임에 의존하지 않는 독립 실행형 바이너리입니다.

Python 런타임은 추가 복사 없이 PyTorch 텐서를 입력으로 받으며, 함께 제공되는 도구 FX2AIT는 PyTorch 모델을 변환하고 지원되지 않는 연산자가 포함된 모델도 부분적으로 가속할 수 있습니다. 테스트된 구성에서 프로젝트를 사용하려면 SM80+ NVIDIA GPU 또는 CDNA2 AMD GPU가 필요합니다.

핵심 기능

  • 01TensorCore 및 MatrixCore 하드웨어를 대상으로 fp16 신경망을 CUDA/HIP C++로 컴파일합니다.
  • 02커널 실행 횟수를 줄이기 위해 수평, 수직, 메모리 연산자 융합을 적용합니다.
  • 03cuBLAS, cuDNN, TensorRT에 의존하지 않는 독립 실행형 모델 바이너리를 생성합니다.
  • 04Python 런타임에서 추가 복사 없이 PyTorch 텐서를 바로 입력으로 받습니다.
  • 05FX2AIT는 PyTorch 모델을 변환하고 지원되지 않는 연산자를 부분적으로 가속합니다.

활용 사례

  • NVIDIA A100급 GPU에서 ResNet, BERT, Vision Transformer 모델을 fp16으로 서빙합니다.
  • AMD MI 시리즈 GPU에서 Stable Diffusion 추론을 실행합니다.
  • AIT가 지원하지 않는 연산자가 일부 포함된 PyTorch 모델을 가속합니다.

빠른 시작

  1. 1

    하위 모듈을 포함해 저장소를 클론합니다

    git clone --recursive https://github.com/facebookincubator/AITemplate
  2. 2

    python 디렉터리로 이동합니다

    cd python
  3. 3

    Python wheel을 빌드합니다

    python setup.py bdist_wheel
  4. 4

    빌드한 wheel을 설치합니다

    pip install dist/*.whl --force-reinstall

사용 전 알아둘 점

  • NVIDIA 지원은 Ampere와 같은 SM80+ GPU에서만 테스트되었습니다. 구형 T4 또는 V100 GPU에서는 일부 커널이 작동하지 않을 수 있습니다.
  • AMD 지원은 CDNA2 GPU(MI-210/250)에서만 테스트되었습니다. 구형 CDNA1 GPU에서는 컴파일러 문제가 발생할 수 있습니다.
  • 소스에서 빌드하려면 올바른 CUDA 또는 ROCm 컴파일러가 필요합니다. 잘못된 컴파일러를 사용하면 성능이 저하됩니다.

포함된 컬렉션

토픽

자주 묻는 질문

AITemplate은(는) 무엇인가요?
딥러닝 네트워크를 NVIDIA 및 AMD GPU에서 빠르게 추론할 수 있는 fp16 CUDA/HIP C++ 코드로 컴파일하는 Python 프레임워크입니다. AITemplate(AIT)은 딥러닝 네트워크를 추론 서빙용 CUDA(NVIDIA) 또는 HIP(AMD) C++ 코드로 변환하는 Python 프레임워크입니다. TensorCore 및 MatrixCore 하드웨어에서 fp16 워크로드를 처리하며, 지원 모델로 ResNet, MaskRCNN, BERT, Vision Transformer, Stable Diffusion을 소개합니다.
AITemplate은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
AITemplate은(는) Apache-2.0 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
AITemplate은(는) 아직 유지보수되고 있나요?
6개월 이내 업데이트. AITemplate의 마지막 커밋은 2026년 10월 7일입니다.
AITemplate은(는) 어디에 사용할 수 있나요?
NVIDIA A100급 GPU에서 ResNet, BERT, Vision Transformer 모델을 fp16으로 서빙합니다. AMD MI 시리즈 GPU에서 Stable Diffusion 추론을 실행합니다. AIT가 지원하지 않는 연산자가 일부 포함된 PyTorch 모델을 가속합니다.
AITemplate는 어떻게 설치하나요?
하위 모듈을 포함해 저장소를 클론합니다: git clone --recursive https://github.com/facebookincubator/AITemplate python 디렉터리로 이동합니다: cd python Python wheel을 빌드합니다: python setup.py bdist_wheel 빌드한 wheel을 설치합니다: pip install dist/*.whl --force-reinstall
AITemplate은(는) 어디서 받을 수 있나요?
소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/facebookincubator/AITemplate

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

관련 프로젝트