2018.01.10

클라우드보다 저렴하게!··· 딥러닝용 GPU 서버 커스텀 제작기

Ian Pointer | InfoWorld

딥러닝 전문가들이라면 누구나 한번쯤 클라우드에서 벗어나 자체적인 딥러닝 머신을 제작하고 싶다는 생각을 해본 적 있을 것이다. 클라우드는 딥러닝에 입문하기에는 이상적인 공간이다. 또 대규모 딥러닝 모형을 교육하는 데에도 적합하다. 그러나 경우에 따라서는 자체적인 딥러닝 머신이 있는 쪽이 훨씬 더 많은 비용을 절감할 수 있기도 하다.

비용이 늘 저렴하다는 것은 아니다. 딥러닝 모델에 필요한 컴퓨터 및 고사양 GPU의 가격은 적게는 1,500 달러에서부터 2,000달러 이상에 이른다. 그렇다고 해도, 한 번에 며칠씩 딥러닝 모형 교육에 쏟는 사람이라면, 3~4달이면 본전을 되찾고도 남을 것이다. 특히 클라우드 스토리지 비용이나 진입 비용, 컴퓨트 시간 등을 고려한다면 더욱 그렇다.

이 글에서는 올해 초 직접 딥러닝 머신을 제작했던 경험을 소개하고, 그 과정에서 내려야 할 선택들, 그리고 비용 등에 대해 이야기해 보고자 한다. 가격은 2017년 12월 기준 아마존 가격으로 산정했다.

특히 딥러닝에 ‘본격적으로’ 접근하고자 하는 이라면(‘본격적으로’ 라는 단어가 더 큰 데이터 세트를 대상으로 리서치를 진행하는 것이든, 캐글(Kaggle) 대회에 참가하는 것을 의미하던 말이다), 자체적인 딥러닝 머신을 제작하는 결정을 더욱 장려할 만 하다. 데이터 세트의 분량이 거대해지고, 수많은 GPU가 필요로 해 질 때까지는 자체적인 딥러닝 머신을 이용하는 것이 최선일 수 있다.

그러나 어느 정도 규모가 커지고 나면, 그 때부터는 다시금 클라우드로 돌아가야 한다. 그 때는 컴퓨트 타임 비용을 지불할 수 있도록 지갑도 두둑하게 준비해 놓는 것이 좋을 것이다.

딥러닝 PC 제작: GPU 와 CPU
딥러닝 머신 제작 과정에서 가장 중요한, 그리고 아마 가장 큰 비용이 걸리는 결정은 어떤 그래픽 카드를, 즉 어떤 GPU를 구매할 것이냐이다. 하지만 적어도 현재로써는 이 선택은 그다지 어렵지 않다. 700~900달러 정도의 비용을 지출할 수만 있다면, 정답은 엔비디아 지포스 GTX 1080 Ti로 정해져 있다. 엔비디아 1080 Ti는 이제 막 메이저 클라우드들에 등장하고 있는 신형 엔비디아 볼타(Volta) GPU 만큼 강력하지는 않을지 몰라도 딥러닝 머신 제작에는 충분한 성능을 지녔다.



1080 TI는 엔비디아의 최첨단 타이탄 X 카드와 동일한 파스칼(Pascal) 아키텍쳐에 기반하고 있으면서도 더 빠르고 더 싸다. 3,584 코어와 11GB 메모리는 그 어느 소비자 등급 카드들보다 더 빠르게 뉴럴 네트워크(neural network)를 구동 및 교육할 수 있게 해 줄 것이다.

1080 Ti는 파운더스 에디션(Founder’s Edition, 엔비디아의 레퍼런스 디자인이다)과 그래픽 카드 제조사들의 커스텀 디자인 중 선택할 수 있다. 둘 다 다수의 팬과 GPU 오버클러킹 기능을 갖추고 있다. 필자의 경우 발열이라면 질색이었기에 팬이 3개 달린 895달러짜리 제품을 택했다. 그러나 파운더스 에디션 카드를 선택하면 100달러 가량 저렴하게 카드를 구입할 수 있을 것이다.

1080 Ti가 너무 비싸다고 느껴진다면, 엔비디아 지포스 GTX 1080을 고려해 보자. 1080 Ti보다 속도도 느리고 메모리도 8GB로 더 작지만(1080 Ti는 11GB), 200달러나 더 저렴하다.

마음 같아서는 AMD의 GPU 신제품 라인도 추천하고 싶지만, 이 제품은 파이토치(PyTorch)나 텐서플로우(Tensorflow)같은 메이저 라이브러리 지원이 아직 안 되고 있다. 아마도 2018년 AMD가 ROCm 작업을 계속해 나가면서 이러한 점도 개선될 것으로 보이지만 말이다. 그 때가 되면 라데온 RX 베가 인스팅트 앤 프론티어(Radeon RX Vega Instinct and Frontier) 역시 상당히 매력적인 옵션이 될 것으로 예상한다. 특히 엔비디아에서 텐서 코어(Tensor Cores)를 볼타 플랫폼에서 소비자 라인으로 도입하는 것을 망설이고 있기에 더욱 그렇다.

GPU가 딥러닝 머신의 핵심이기는 하지만, 애플리케이션을 구동하고 데이터 엔지니어링 태스크(예컨대 증강과 같은 태스크)를 해결하기 위해서는 좋은 CPU 또한 필요하다. 향후 딥러닝 머신에 다수의 GPU를 추가할 계획이 있다면 최대 40 PCIe 익스프레스 레인을 지원하는 CPU를 사야 한다. 그렇다고 꼭 최신 제품만 고집할 필요는 없다. 7세대 인텔 코어 i7-7700K 정도로도 충분하다. 쿨러도 필요하지만, 그렇다고 굳이 수랭식에 집착할 필요는 없다. 쿨러 마스터에서 나온 30달러짜리 하이퍼 212 EVO면 충분하다.

딥러닝 PC 제작: 스토리지와 메모리
이왕 쓰는 김에 500달러짜리 1TB SSD M.2 카드를 산다고 해서 뭐 큰 일이야 나겠는가? 누가 뭐래도 SSD 카드가 중요한 건 사실인데 말이다. 하지만 다시 생각해 보자. 딥러닝 모델을 교육할 때 빠른 스토리지가 정말 필요할 것인지 말이다.

차라리 고성능이 요구되는 핫(hot) 스토리지와 비활성화된 프로젝트를 위한 콜드(cold) 스토리지로 나누어 지출하는 것이 더 합리적일 것이다. 2TB짜리 HDD(70달러)와 250GB SSD(130 달러)를 구매하면 절반도 되지 않는 비용으로 2배 가까운 스토리지 용량을 누릴 수 있게 된다.

메모리의 경우 32GB를 추천하며, 특히 향후 64GB로 확장할 수 있어야 하므로 16GB 모듈을 살 것을 추천한다. 대부분 마더보드는 DDR4 메모리를 요구하므로 16GB DIMMs 2개면 300~400달러 대에서 해결할 수 있다.

딥러닝 PC 제작: 마더보드, 파워 서플라이, 케이스
이제 모든 준비물이 갖춰졌으니, 이 모든 것들을 한 데 모아 줄 마더보드가 필요하다. 7세대 인텔 CPU를 구매했다면, 마더보드는 Z270 기반으로 사야 한다. 반대로 8세대 CPU 구매자라면 X370 기반 마더보드가 필요하다. 마더보드와 CPU가 서로 맞는지 확인하고 구입할 필요가 있다. 향후 추가적으로 GPU를 구매할 계획이 있다면 이 역시 마더보드에서 지원 되는지 확인해야 한다.

필자 역시 말은 이렇게 하지만 마더보드 구입시 이 점을 확인하지 않는 바람에 추후 지포스 GTX 1080 Ti를 하나 더 구매할 때 마더보드를 함께 업그레이드 해야 할 판이다.

2018.01.10

클라우드보다 저렴하게!··· 딥러닝용 GPU 서버 커스텀 제작기

Ian Pointer | InfoWorld

딥러닝 전문가들이라면 누구나 한번쯤 클라우드에서 벗어나 자체적인 딥러닝 머신을 제작하고 싶다는 생각을 해본 적 있을 것이다. 클라우드는 딥러닝에 입문하기에는 이상적인 공간이다. 또 대규모 딥러닝 모형을 교육하는 데에도 적합하다. 그러나 경우에 따라서는 자체적인 딥러닝 머신이 있는 쪽이 훨씬 더 많은 비용을 절감할 수 있기도 하다.

비용이 늘 저렴하다는 것은 아니다. 딥러닝 모델에 필요한 컴퓨터 및 고사양 GPU의 가격은 적게는 1,500 달러에서부터 2,000달러 이상에 이른다. 그렇다고 해도, 한 번에 며칠씩 딥러닝 모형 교육에 쏟는 사람이라면, 3~4달이면 본전을 되찾고도 남을 것이다. 특히 클라우드 스토리지 비용이나 진입 비용, 컴퓨트 시간 등을 고려한다면 더욱 그렇다.

이 글에서는 올해 초 직접 딥러닝 머신을 제작했던 경험을 소개하고, 그 과정에서 내려야 할 선택들, 그리고 비용 등에 대해 이야기해 보고자 한다. 가격은 2017년 12월 기준 아마존 가격으로 산정했다.

특히 딥러닝에 ‘본격적으로’ 접근하고자 하는 이라면(‘본격적으로’ 라는 단어가 더 큰 데이터 세트를 대상으로 리서치를 진행하는 것이든, 캐글(Kaggle) 대회에 참가하는 것을 의미하던 말이다), 자체적인 딥러닝 머신을 제작하는 결정을 더욱 장려할 만 하다. 데이터 세트의 분량이 거대해지고, 수많은 GPU가 필요로 해 질 때까지는 자체적인 딥러닝 머신을 이용하는 것이 최선일 수 있다.

그러나 어느 정도 규모가 커지고 나면, 그 때부터는 다시금 클라우드로 돌아가야 한다. 그 때는 컴퓨트 타임 비용을 지불할 수 있도록 지갑도 두둑하게 준비해 놓는 것이 좋을 것이다.

딥러닝 PC 제작: GPU 와 CPU
딥러닝 머신 제작 과정에서 가장 중요한, 그리고 아마 가장 큰 비용이 걸리는 결정은 어떤 그래픽 카드를, 즉 어떤 GPU를 구매할 것이냐이다. 하지만 적어도 현재로써는 이 선택은 그다지 어렵지 않다. 700~900달러 정도의 비용을 지출할 수만 있다면, 정답은 엔비디아 지포스 GTX 1080 Ti로 정해져 있다. 엔비디아 1080 Ti는 이제 막 메이저 클라우드들에 등장하고 있는 신형 엔비디아 볼타(Volta) GPU 만큼 강력하지는 않을지 몰라도 딥러닝 머신 제작에는 충분한 성능을 지녔다.



1080 TI는 엔비디아의 최첨단 타이탄 X 카드와 동일한 파스칼(Pascal) 아키텍쳐에 기반하고 있으면서도 더 빠르고 더 싸다. 3,584 코어와 11GB 메모리는 그 어느 소비자 등급 카드들보다 더 빠르게 뉴럴 네트워크(neural network)를 구동 및 교육할 수 있게 해 줄 것이다.

1080 Ti는 파운더스 에디션(Founder’s Edition, 엔비디아의 레퍼런스 디자인이다)과 그래픽 카드 제조사들의 커스텀 디자인 중 선택할 수 있다. 둘 다 다수의 팬과 GPU 오버클러킹 기능을 갖추고 있다. 필자의 경우 발열이라면 질색이었기에 팬이 3개 달린 895달러짜리 제품을 택했다. 그러나 파운더스 에디션 카드를 선택하면 100달러 가량 저렴하게 카드를 구입할 수 있을 것이다.

1080 Ti가 너무 비싸다고 느껴진다면, 엔비디아 지포스 GTX 1080을 고려해 보자. 1080 Ti보다 속도도 느리고 메모리도 8GB로 더 작지만(1080 Ti는 11GB), 200달러나 더 저렴하다.

마음 같아서는 AMD의 GPU 신제품 라인도 추천하고 싶지만, 이 제품은 파이토치(PyTorch)나 텐서플로우(Tensorflow)같은 메이저 라이브러리 지원이 아직 안 되고 있다. 아마도 2018년 AMD가 ROCm 작업을 계속해 나가면서 이러한 점도 개선될 것으로 보이지만 말이다. 그 때가 되면 라데온 RX 베가 인스팅트 앤 프론티어(Radeon RX Vega Instinct and Frontier) 역시 상당히 매력적인 옵션이 될 것으로 예상한다. 특히 엔비디아에서 텐서 코어(Tensor Cores)를 볼타 플랫폼에서 소비자 라인으로 도입하는 것을 망설이고 있기에 더욱 그렇다.

GPU가 딥러닝 머신의 핵심이기는 하지만, 애플리케이션을 구동하고 데이터 엔지니어링 태스크(예컨대 증강과 같은 태스크)를 해결하기 위해서는 좋은 CPU 또한 필요하다. 향후 딥러닝 머신에 다수의 GPU를 추가할 계획이 있다면 최대 40 PCIe 익스프레스 레인을 지원하는 CPU를 사야 한다. 그렇다고 꼭 최신 제품만 고집할 필요는 없다. 7세대 인텔 코어 i7-7700K 정도로도 충분하다. 쿨러도 필요하지만, 그렇다고 굳이 수랭식에 집착할 필요는 없다. 쿨러 마스터에서 나온 30달러짜리 하이퍼 212 EVO면 충분하다.

딥러닝 PC 제작: 스토리지와 메모리
이왕 쓰는 김에 500달러짜리 1TB SSD M.2 카드를 산다고 해서 뭐 큰 일이야 나겠는가? 누가 뭐래도 SSD 카드가 중요한 건 사실인데 말이다. 하지만 다시 생각해 보자. 딥러닝 모델을 교육할 때 빠른 스토리지가 정말 필요할 것인지 말이다.

차라리 고성능이 요구되는 핫(hot) 스토리지와 비활성화된 프로젝트를 위한 콜드(cold) 스토리지로 나누어 지출하는 것이 더 합리적일 것이다. 2TB짜리 HDD(70달러)와 250GB SSD(130 달러)를 구매하면 절반도 되지 않는 비용으로 2배 가까운 스토리지 용량을 누릴 수 있게 된다.

메모리의 경우 32GB를 추천하며, 특히 향후 64GB로 확장할 수 있어야 하므로 16GB 모듈을 살 것을 추천한다. 대부분 마더보드는 DDR4 메모리를 요구하므로 16GB DIMMs 2개면 300~400달러 대에서 해결할 수 있다.

딥러닝 PC 제작: 마더보드, 파워 서플라이, 케이스
이제 모든 준비물이 갖춰졌으니, 이 모든 것들을 한 데 모아 줄 마더보드가 필요하다. 7세대 인텔 CPU를 구매했다면, 마더보드는 Z270 기반으로 사야 한다. 반대로 8세대 CPU 구매자라면 X370 기반 마더보드가 필요하다. 마더보드와 CPU가 서로 맞는지 확인하고 구입할 필요가 있다. 향후 추가적으로 GPU를 구매할 계획이 있다면 이 역시 마더보드에서 지원 되는지 확인해야 한다.

필자 역시 말은 이렇게 하지만 마더보드 구입시 이 점을 확인하지 않는 바람에 추후 지포스 GTX 1080 Ti를 하나 더 구매할 때 마더보드를 함께 업그레이드 해야 할 판이다.

X