TensorRT
Jump to navigation
Jump to search
TensorRT
Overview
TensorRT는 NVIDIA의 고성능 딥러닝 추론 옵티마이저 및 런타임. 모델을 최적화하여 GPU 추론 속도를 2-10배 향상. 산업 표준 LLM 서빙 도구.
Summary
- * 무엇인가? NVIDIA GPU 추론 최적화 도구. 모델 컴파일 + 엔진 실행
- * 왜 필요한가? 추론 속도 2-10배 향상. GPU 리소스 효율↑
- * 언제 사용하는가? 프로덕션 LLM 서빙, 실시간 추론, 엣지 디바이스
---
Purpose
이 문서가 존재하는 이유
- Goal: TensorRT의 개념, 사용법, 설정 가이드 제공
- Scope: 기본 개념, 설치/설정, 사용 예제, 모범 사례
- Non-goals: 고급 커스터마이징, 내부 소스 코드 분석
---
Key Concepts
---
Architecture
TensorRT는 모델(importer) -> 최적화(optimization) -> 엔진 빌드(engine build) -> 추론(inference) 파이프라인. ONNX, PyTorch, TensorFlow 모델 import. FP16/INT8 양자화, 레이어 병합, 커스텀 플러그인 지원.
---
Workflow
1. 1. TensorRT 설치(pip install tensorrt)
2. 2. 모델 export (PyTorch -> ONNX)
3. 3. TensorRT 엔진 빌드(trtexec)
4. 4. FP16/INT8 양자화 옵션 설정
5. 5. Python/C++ API로 추론 실행
6. 6. 성능 벤치마킹 (속도, 메모리, 정확도)
---
Configuration
{config_code}---
Best Practices
- FP16으로 시작, 정확도 문제 시 FP32로 폴백
- INT8 양자화는 캘리브레이션 데이터 필수
- trtexec --timingCacheFile로 빌드 시간 절약
- ONNX export 시 dynamic axes 설정
- TensorRT-LLM으로 LLM 특화 최적화
---
Limitations
- NVIDIA GPU 전용 (AMD/Intel 미지원)
- 엔진 빌드 시간 길음 (최적화)
- 동적 입력 크기에 제한 있을 수 있음
---
References
---