텐서플로우 GPU 추천 최소 사양


텐서플로우 GPU 추천 최소 사양
이번 글에서는 텐서플로우를 실행하기 위한 하드웨어 사양에 대해서 설명드리도록 하겠습니다.
텐서플로우는 크게 2가지 유형의 버전으로 제공됩니다.

CPU만을 지원하는 버전
만약 NVIDIA의 GPU를 사용하고 있지 않을 경우 반드시 CPU만 지원하는 버전으로 설치하셔야 합니다.
GPU를 지원하는 텐서플로우 보다 설치하기 쉽다는 장점이 있어, 처음 텐서플로우를 설치하는 경우 CPU만 지원되는 버전을 추천합니다.

GPU를 함께 지원하는 버전
NVIDIA GPU를 지원하는 버전의 경우 CPU에서 실행되는 버전보다 월등히 빠른 성능을 나타냅니다.
따라서, 텐서플로우를 실행하기 위한 사양의 NVIDIA GPU를 갖고 계신 경우 GPU를 지원하는 버전으로 설치하서야 보다 빠르게 처리 할 수 있습니다. CPU 만 지원하는 텐서플로우 버전보다 성능차이가 크기 때문에 궁극적으로는 GPU를 지원하는 버전으로 사용하셔야 합니다.

위의 2가지 버전 중에서 이번 글에서는 GPU를 함께 지원하는 버전을 설치 하기 위한 NVIDIA GPU 모델에 대해서 알아보도록 하겠습니다. 현재 텐서플로우의 최신 안정화 버전은 1.10.0입니다. 현재 버전에서 GPU를 지원하는 텐서플로우를 설치하기 위해서는 아래의 하드웨어와 소프트웨어 조건이 만족되어야 합니다.

하드웨어

최신 버전의 텐서플로우를 사용하기 위해서는, NVIDIA GPU 에서 지원되는 Compute capability(Version, 계산 능력)이 3.0 이상이 되어야 합니다. Compute capability란 GPU 에서 지원되는 연산 특징 버전으로서, CUDA 9.0 또한 Compute capability는 3.0 이상되어야 설치가 가능합니다. 개발버전의 텐서플로우의 경우 추가적으로 3.0 보다 더 높은 3.5을 요구할 때도 있었지만, 현재 텐서플로우 안정화 버전에서 요구하는 최소 Compute capability 버전은 3.0입니다.

NVIDIA GPU에서 지원되는 Compute capability는 아래의 페이지에서 확인 하실 수 있습니다.

https://developer.nvidia.com/cuda-gpus

소프트웨어

현재 최신 NVIDIA 드라이버 버전인 390를 지원하는 NVIDIA GPU이어야 합니다. 갖고 계신 NVIDIA GPU의 드라이버가 390을 지원하는지 확인하기 위해서는 아래 사이트에서 방문 하신뒤에 조회하시면 됩니다.

http://www.nvidia.com/Download/Find.aspx?lang=en-us

그리고 CUDA SDK의 버전이 9.0 먼저 시스템에 설치되어야 하며, CUDA 9.0을 설치하기 위해서는 위의 NVIDIA 드라이버 버전이 390이 되어야 합니다. 참고로 아래의 내용은 CUDA 버전에 따라서 지원하는 Compute capability 와 아키텍쳐를 나타냅니다.

CUDA SDK 6.5 support for compute capability 1.0 – 5.x (Tesla, Fermi, Kepler, Maxwell)
CUDA SDK 7.5 support for compute capability 2.0 – 5.x (Fermi, Kepler, Maxwell)
CUDA SDK 8.0 support for compute capability 2.0 – 6.x (Fermi, Kepler, Maxwell, Pascal)
CUDA SDK 9.0/9.1 support for compute capability 3.0 – 7.x (Kepler, Maxwell, Pascal, Volta)

추가로 cuDNN(CUDA Deep Neural Network)라는 라이브러리 버전 7.0이 필요합니다.

결론

최신 버전의 텐서플로우를 실행시키기 위한 사양들에 대해서 설명드렸습니다. 자금의 여유가 있으시면 비싸고 좋은 성능의 GPU를 사용하실 수도 있지만, 이번 글의 목적에 따라 위의 조건을 만족하는 최소 사양의 하드웨어를 소개해 드립니다.

현재 안정화 버전에서 사용되는 텐서플로우의 Compute capability의 버전은 3.0이지만, 개발되고 있는 과정에서 3.5 이상을 요구할때도 있기에 3.5를 조건으로 설정하였습니다.

정말, 위의 조건을 만족하는 최소 사양의 하드웨어는 GeForce GT 640 (GDDR5)입니다. Compute capability 3.5 으로 만족하며, 그 이상의 GeForece GT 모델들입니다. (GeForce GT 640 (GDDR3) , GeForce GT 730 DDR3,128bit 제외)

중고 가격으로는 5만원 내외로 구매하실 수 있을 듯하지만, 위의 모델들은 텐서플로우를 실행하기 위한 정말 최소한의 사양입니다.
따라서 실제 텐서플로우에서 개발된 모델을 학습하고, 테스트하기 위해서는 GeForece GTX 시리즈를 권장해 드립니다. GeForce GTX 750, GeForce GTX 750 Ti 그리고 GeForce GTX 780이상의 모델들입니다.

최종적으로는 텐스플로우의 GPU 가속의 기능을 이용하기 위해서 최소 하드웨어 사양으로는 GeForece 750 Ti를 추천해 드립니다. GeForece 750모델 보다 메모리 용량이 커서 조금더 큰 모델을 학습하고 테스트 하실 수 있을 것입니다. 중고 가격이 10만원 정도 될 것입니다.

GPU를 지원하는 텐서플로우를 설치하는 방법과 텐서플로우의 성능을 측정하는 방법은 다음 글을 참고하실 수 있습니다.

GPU 지원 텐서플로우 설치 방법

텐서플로우 성능 측정 방법

업그레이드

기존에는 GeForece 750 Ti 모델로 공부하면서, 실제 모델을 학습 하고 평가할때는 클라우드에서 GPU가 지원되는 인스턴스를 사용하였습니다. 최소 사양으로 텐서플로우를 공부하는데 GPU 메모리가 부족하여 이번에 업그레이드를 하였습니다. 이와 관련해서는 아래의 글을 참고 하실 수 있습니다.

GeForce GTX 1080 Ti 구매 후기 및 성능

본문 내용 인용시에는 출처를 밝혀 주시기 바랍니다.