본문 바로가기
Development/TensorRT

[TensorRT] architecture 별 호환성

by shuka 2021. 8. 10.
728x90
728x90

TensorRT란?

TensorRT는 NVIDIA gpu를 사용하여 onnx나 tensorflow와 같은 deep learning 모델들을 최적화시켜 모델의 처리 속도를  향상시켜주는 엔진으로 요즘 nvidia gpu에서 deep learning model을 추론하기 위해 많이 사용되고 있다.

 

밑의 링크는  tensorrt홈페이지와 tensorrt에 대한 설명이 되어 있는 블로그로 들어가 보면 tensorrt에 대해 설명이 잘 되어 있다.

 

 

https://developer.nvidia.com/tensorrt

 

NVIDIA TensorRT

An SDK with an optimizer for high-performance deep learning inference.

developer.nvidia.com

 

 

https://eehoeskrap.tistory.com/414

 

[TensorRT] NVIDIA TensorRT 개념, 설치방법, 사용하기

1. TensorRT 란? 2. TensorRT 설치하기 3. 여러 프레임워크에서 TensorRT 사용하기 1. TensorRT 란? TensorRT는 학습된 딥러닝 모델을 최적화하여 NVIDIA GPU 상에서의 추론 속도를 수배 ~ 수십배 까지 향상시켜 딥

eehoeskrap.tistory.com

 

architecture 별로 호환성을 확인해야 하는 이유

onnx나 tensorflow 등의 deep learning 모델들을 tensorrt engine으로 모델을 변환하고 다른 gpu가 장착되어 있는 pc에 변환된 모델을 가져다 쓰다 보면 모델이 돌아갈 때도 있지만 돌아가지 않거나 성능이 달라지는 결과를 볼 경우가 있다.

 

tensorrt engine으로 변환된 deep learning 모델은 변환 시에 사용된 pc에 꽃혀 있는 gpu의 sm architecture에 최적화되어 있다.


다른 architecture에서는 공통적인 instruction으로 치환하여 앤진을 load하고 inference를 수행할 수 있지만, 최적의 instruction으로 선택되어 돌지 않기 때문에 성능상의 drop이 발생하게 될 수 있다.

따라서, 사용하고 있는 pc에 있는 gpu의 sm architecture를 확인한 후 같은 architecture에서 Inference를 수행하는 게 가장 좋은 성능을 보여줄 수 있다.

 

sm architecture compatibility matrix

밑에 표는 gpu 별 지원하는 최소 cuda version과 sm architecture를 보여준다.

 

표를 보고 사용하는 gpu에 맞춰서 사용하면 된다.

GPU Architecture GPU compatibility nvcc
arch / gen code
Nvidia GPU Example
       
Pascal cuda8.0 ~ sm_60 / compute_60 Quadro GP100, Tesla P100 ...
sm_61 / compute_61 GTX-1080,1070,1060,1050,1030
TitanXP, Tesla P40 ...
sm_62 / compute_62 Jetson TX2, Drive PX2 ...
Volta cuda9.0 ~ sm_70 / compute_70 Tesla V100, GTX-1180, Titan V, Quadro GV100 ...
sm_72 / compute_72 Jetson AGX, Xavier, Drive AGX pegasus ...
Turing cuda 10.0 ~ sm_75 / compute_75 GTX-1660Ti. RTX-2060, 2070, 2080, Titan RTX,
Quadro RTX 4000, 5000, 6000, 8000 ...
Ampere cuda 11.0 ~ sm_80 / compute_80 Nvidia tensorcore GPU A100, 
sm_86 / compute_86 RTX-30 series, RTX A4000, A5000, A6000, NVIDIA A40
Hopper      



728x90
반응형

댓글