EP&C News UPDATED. 2017.8.21 월 17:22

상단여백
HOME 포커스 포커스
인공지능 칩 강자는 누구? GPU vs FPGA vs ASIC (3)딥러닝 빠른 연산처리와 데이터센터 에너지 효율, 하드웨어가 ‘핵심’
이나리 기자 | 승인 2017.06.13 16:19

[EPNC=이나리 기자] 인공지능 기술을 구현하기 위해서는 빅데이터와 플랫폼도 중요하지만 이를 빠르게 연산처리하기 위한 하드웨어 기술이 뒷받침돼야 한다. 인공지능이 가능하게 된 이유는 크게 3가지로 요약되는데, 하나는 인터넷과 웹에 의한 대량의 디지털 데이터를 쉽게 구할 수 있게 된 것, 두 번째는 CPU(Central Processing Unit)를 넘어 GPU(Graphics Processing Units)처럼 고속 연산 처리가 가능한 범용적인 하드웨어가 등장한 것, 그리고 세 번째는 연구자들과 기업들이 꾸준히 연구 성과를 쌓아 온 것이다.

앞서 언급했듯이 인공지능의 필수 요소 중 하나인 머신러닝(Machine Learning)은 기존 데이터의 패턴을 기반으로 스스로 학습하는 형태의 알고리즘이다. 그러나 머신러닝을 위한 데이터가 방대해지고 복잡해지면서 인공지능은 예측에 필요한 양질의 데이터만 수집하기 위한 심층적인 학습이 필요했고, 이때 등장한 딥러닝(Deep Learning) 기술은 지도학습에 기반한 인공신경망(Artificial Neural Network)의 진화된 기술로 보다 심층적인 학습을 할 수 있다.

따라서 이런 고도화된 딥러닝을 구현하기 위해서는 기존의 CPU를 넘어 보다 빠른 연산 처리를 실행해주는 하드웨어 기술이 요구되고 있다. 다시 말해 인공지능은 웹, 소프트웨어, 하드웨어 등의 기술 진보가 끊임없이 연구, 개발되고 결합된 결과다. 반도체 업계에서는 GPU, FPGA, 주문형 반도체(ASIC)를 중심으로 인공지능에 최적화된 하드웨어를 개발하기 위한 움직임이 일어나면서 변화의 시기에 놓여져 있다.

컴퓨터 연산 기술에 있어서 인텔은 고성능 CPU를 생산해 왔고 이를 바탕으로 PC 프로세서 시장(약 80%의 시장점유율)뿐 아니라 서버 CPU 시장에서도 독점적인 지위를 누려오며 반도체 업계의 1위를 지켜왔다. 그러나 인공지능 시대가 본격 시작됨에 따라 인텔은 더 이상 안심할 수 없을 것으로 보여진다.

대량의 데이터와 고도의 연산능력을 기반으로 하는 머신러닝과 여러 인공지능 기기들의 급성장으로 인해 시장은 세분화되고 있으며, 컴퓨터 연산과 관련된 설계분야는 반도체 발전 속도에 따라 지금까지 믿어져 왔던 무어의 법칙(Moore’s law) 마저도 점차 한계를 드러내고 있기 때문이다(무어의 법칙: 1965년 고든 무어가 정의한 것으로 마이크로칩에 저장할 수 있는 데이터양이 18개월마다 2배씩 증가한다는 법칙). 또 PC 시장의 성장 둔화도 한몫 했다.

반면, PC 게임용 그래픽카드로 유명한 엔비디아는 인공지능으로 인해 GPU의 급격한 매출액 증가로 상승세를 타고 있다. 그 이유는 개인용 컴퓨터에서 원활한 게임속도를 지원하는 용도로 사용되어 왔던 GPU가 높은 컴퓨팅 연산능력을 필요로 하는 인공지능의 데이터 처리를 지원하기 위한 도구로 각광받고 있기 때문이다.

실제로 엔비디아의 2016년 4분기 매출(2016년 11월~2017년 1월)은 전년 동기 대비 55% 늘어난 22억 달러를 기록했고, 회사의 주가는 2016년에만 4배가 올랐다. 더불어 반도체 시장조사기관 IC인사이츠에 따르면 2016년 상위 20개 반도체 기업 매출실적에서 엔비디아는 전년대비 가장 높은 성장률(35%)을 기록한 업체로 조사됐다. 2016년 3분기 실적에서 엔비디아의 데이터센터 사업 부분은 전년 분기 대비 무려 193%의 성장률을 기록했다. 이는 인공지능 수혜로 인한 결과이며, 엔비디아의 게임(63%), 자동차 애플리케이션(61%)과 비교해서 압도적인 성장을 보인 것이다. 반면 반도체 업계 1위인 인텔의 2016년 매출은 전년 대비 8%의 성장률로 소폭 성장했다.

◇ 병렬처리 가능한 GPU, 딥러닝용 연산처리에 적합

그렇다면 인공지능에서 CPU와 GPU의 연산능력은 어떤 차이점이 있을까? 기본적으로 CPU와 GPU는 서로 다른 목적을 위해 상이하게 설계, 구성돼 있다. 기본적으로 CPU와 GPU에는 탑재되는 코어의 수가 다른데, 여기서 코어는 ‘프로세서가 동시에 풀 수 있는 문제의 수’라고 볼 수 있다. 즉 CPU는 직렬처리(Serial Processing)에 최적화된 몇 개의 코어로 구성돼 명령어가 입력된 순서대로 순차적으로 데이터를 처리한다. 반면, GPU는 CPU에 비해 훨씬 더 많은 코어를 탑재해 여러 명령어를 동시에 처리할 수 있도록 병렬처리(Parallel Processing)에 최적화된 프로세서다.

따라서 명령어나 데이터의 종류에 따라 처리 속도는 CPU가 빠를 수도, GPU가 빠를 수도 있다. CPU는 컴퓨터의 중앙에서 모든 데이터를 처리하고 제어하는 장치로 시스템 전체를 제어하기 위해 개발됐으며, CPU 제조사들은 인터넷 서핑이나 문서작성 등의 작업을 보다 빠르게 수행하도록 설계한다.

반면 GPU는 동시 계산량이 많이 요구되는 그래픽을 위해 고안됐기 때문에 수천 개의 코어를 탑재해 대량의 연산이 빠르게 필요한 3D 그래픽 렌더링이나 그래픽 시뮬레이션 작업에 맞게 설계되고, 이를 통해 성능 향상을 거듭해왔다. 예를 들어, 같은 양의 짐을 운반할 때 CPU는 빠른 비행기로 여러 번에 나누어 짐을 목적지에 전달할 수 있다면 GPU는 속도는 더 느리지만 적재용량은 더 큰 기차로 한번에 짐을 전달하는 것이라 할 수 있다.

컴퓨터는 데이터를 디지털인 0과 1의 수로 구분해 저장하는데, 간단한 정수 외에 실생활에서 널리 사용되는 실수를 디지털로 저장하기 위해서는 고정소수점 또는 부동소수점이라는 데이터 저장방식을 활용한다. 고정소수점은 10비트(bit)를 기준으로 총 1024개의 숫자를 표현할 수 있는 반면, 부동소수점은 2비트로 자릿수를 표현해 최대 25만 5000개의 숫자 표현을 할 수 있다. 즉, 부동 소수점이 고정소수점에 비해 더 정밀한 표현을 할 수 있다는 것을 뜻한다. 

CPU는 고정, 부동소수점을 모두 처리할 수 있고, GPU는 대용량 부동소수점 데이터를 병렬 고속 처리를 통해 매우 빠르게 계산한다. 이와 같은 GPU 컴퓨팅은 엔비디아가 C언어 기반 GPU 프로그래밍 언어인 쿠다(CUDA: Compute Unified Device Architecture)라는 기술을 2006년 11월에 공개하면서부터 본격적으로 확산됐다. 병렬 컴퓨팅 플랫폼, API 모델인 쿠다는 GPU의 가상 명령어셋을 사용할 수 있도록 만들어주는 소프트웨어 레이어이며, 오직 엔비디아가 만든 쿠다코어가 장착된 GPU에서만 GPGPU 용도로 사용할 수 있다. 초기에는 C, C++만 지원했지만 10여년의 세월이 지난 지금은 포트란이나 C# 등 다양한 언어에서도 작동한다.

병렬 컴퓨팅 플랫폼 쿠다가 발표된 후 2010년 인공지능 분야 내 뛰어난 석학 중 한명인 앤드루 응 스탠퍼드대학 교수는 12개의 GPU가 무려 2000개의 CPU에 맞먹는 딥러닝 성능을 발휘한다는 사실을 발견했다.

이후 2012년 개최된 이미지넷 대회에서 캐나다 토론토대학의 알렉스 크리제브스키가 GPU 기반 딥러닝 기술을 활용해 우승을 차지하면서 GPU는 인공지능 분야에서 비약적인 발전 가능성을 보여줬다. 2010년부터 개최된 이미지넷은 무려 1000개가 넘는 카테고리로 분류된 100만개의 이미지를 인식해 그 정확도를 겨루는 대표적인 시각지능 대회다. 이 대회에 2012년 GPU 기반 딥러닝 기술을 활용한 알렉스 크리제브스키가 출전하기 전까지는 기계의 이미지 인식률이 75%를 넘지 못하고 있었다.

하지만 이미지넷에 출전한 알렉스가 들고 나온 ‘알렉스넷(Alexnet)’은 기존의 시스템과는 매우 달랐다. 인간의 뇌 구조를 본딴 인공신경망 모델인 나선형신경망(Convolution Neural Network, CNN)을 사용해 심층 신경망(Deep Neural Network)을 구현한 것으로, 기존의 기계 학습법(Machine Learning)을 더욱 발전시킨 딥러닝(Deep Learning)이었다.

엔비디아 테슬라 P100 GPU


딥러닝 연구가 그 이전에도 활발히 진행되고 있었지만 정작 빛을 보지 못했던 건 기존 CPU의 성능만으로 도저히 감당할 수 없는 엄청난 컴퓨팅 파워를 요구해, 헤아릴 수 없는 시간과 많은 비용이 들었기 때문이다.

알렉스는 바로 여기에서 동시다발적인 연산, 즉 병렬컴퓨팅에 유리한 GPU를 활용해 수없이 많은 이미지 인식 훈련을 진행하는 방식을 사용했고 그 결과 84.7%의 정확도를 달성해내며 대회의 우승을 차지할 수 있었다. 2015년에 열린 이미지넷 경진대회에서는 마이크로소프트팀이 GPU를 활용해 인간의 오류율인 5%보다 낮은, 96% 이상의 정확도를 기록했다.

◇ 딥러닝 위한 데이터센터, 에너지 효율 높이는 ASIC, FPGA 각광

딥러닝을 구현하기 위해서는 방대한 데이터가 필요하고, 그 데이터를 보관하기 위해서는 데이터센터 구축이 필수적이다. 따라서 인공지능 구축에 있어서 데이터센터를 효과적으로 운영하기 위한 기술 또한 중요하다.

수많은 서버가 24시간 돌아가고 있는 데이터센터는 많은 열을 발생시키기 때문에 데이터센터를 적절하게 냉각시키는 건 데이터센터의 안정성을 보장하는 중요한 요소다. 또 데이터센터 냉각에 필요한 에너지는 데이터센터에서 사용되는 에너지 대부분을 차지하기 때문에 데이터센터 열 발생률을 감소시키면 덩달아 운영 비용을 절감할 수 있다. 이런 이유로 데이터센터를 운영하고 있는 여러 글로벌 기업들은 에너지를 절감하기 위한 여러 방안을 모색하고 있다.

일례로 마이크로소프트는 데이터센터의 냉각 성능을 높이기 위해 바다 속, 수중 데이터센터 구축을 위한 프로젝트(Natick)를 실험하고 있는 중이다. 마이크로소프트 측은 바다에서는 조류를 이용한 전력 변환이 용이하고, 해저의 낮은 온도가 서버에서 발생하는 열을 자연적으로 냉각시켜줄 수 있을 것으로 기대한다고 밝혔다.

따라서 하드웨어 측면에서 인공지능은 고도의 연산 처리도 중요하지만, 데이터센터의 에너지를 절감시킬 수 있는 반도체 칩 기술 또한 요구되고 있다. 그 가운데 특정한 용도에 맞도록 제작된 주문형 반도체인 ASIC(Application-Specific Integrated Circuits)는 빠른 속도와 높은 에너지 효율의 특성을 지니고 있어 인공지능 전용 칩으로 각광받고 있다.

마이크로소프트 해저 데이터센터 Pod


대표적으로 2016년 상반기 구글은 딥러닝에 활용하기 위해 ‘텐서 프로세싱 유닛(Tensor Processing Unit, TPU)’이라는 ASIC를 자체적으로 개발했다고 밝혔다. 인터넷 서비스 기업인 구글이 자체적으로 ASIC 반도체 개발에 나섰다는 것은 업계에 큰 이슈였다. 구글은 빅데이터를 활용해 다양한 서비스 사업을 전개하고 있으며 인공지능 구현을 위해 인텔과 엔비디아의 칩을 적극 활용하는 기업 중 하나다. 구글은 자체 제작한 ASIC칩인 TPU를 데이터 기반 사업과 데이터센터 내 효율성을 높이기 위해 사용하기 시작했다.

예컨대 2016년 3월 구글의 AI 알파고와 이세돌 9단과의 바둑대결에서 구글은 알파고를 구현하기 위한 클라우드 컴퓨팅 플랫폼(GCP)에 1202개의 인텔 제온 프로세서와 엔비디아의 GPU를 사용했으며 관리 통제를 위해 자사의 ASIC 칩 TPU을 추가했다고 밝힌 바 있다. 또 구글은 지난 1년간 데이터센터 랙 내에 TPU칩을 활용한 인공지능 알고리즘을 사용함에 따라 온도와 전력 데이터를 실시간으로 반영해 팬, 냉각 시스템, 창문 등 약 100여개 장비와 시설의 통제와 관리가 가능해졌고 에너지 비용을 15% 절감했다. 구글 데이터센터에서 사용한 전기량은 지난 2014년 440만2836MWh의 전기를 사용했는데 이는 미국 36만 6903가구가 1년간 쓸 수 있는 양이다.

구글 TPU


ASIC 외에도 프로그래밍과 재설정이 가능한 비메모리 반도체의 일종인 FPGA(Field-Programmable Gate Arrays) 역시 높은 유연성 때문에 대용량 데이터 처리에 적합하다. 특히 데이터센터 프로세서에 FPGA를 같이 쓰면 전력 감소에 많은 도움을 주게 된다. 최근 FPGA가 부상하는 이유 중 하나는 범용 프로세서의 성능 향상이 한계에 달했기 때문이다. FPGA는 CPU가 감당하지 못하는 더 많은 서비스를 제공할 수 있고, CPU와 병렬로 작동하므로 전체 시스템의 혼란이나 병목현상 없이 추가적인 컴퓨팅 파워로 사용할 수 있기 때문에 새로운 기술로 주목 받고 있다.

FPGA는 ASIC보다 초기 개발 비용이 저렴하고, 원하는 작업을 더 빠르게 처리할 수 있다는 것에 장점이다. 재프로그래밍이 가능한 FPGA는 예로, 칩을 번역 작업에 최적화해 사용하다가 칩 회로 구성을 다시 설정해 가상비서 서비스에 맞춰 쓸 수 있다. 이 때문에 FPGA는 인텔이나 AMD가 만드는 범용 프로세서와 특정 장비 전용으로 개발하는 주문형 반도체(ASIC)의 특성을 합쳤다는 평가를 받는다. 반면 FPGA의 단점으로는 일반적으로 ASIC보다 느리고 복잡한 설계에 적용할 수 없다고 여겨진다.

FPGA 반도체 기업으로는 자일링스가 대표적이다. 인텔은 FPGA 기술을 확보하기 위해 자일링스와 경쟁구도에 있던 알테라(Altera)를 2015년 167억 달러에 인수했으며, 이를 통해 CPU에서 한 발짝 나아가 데이터센터와 서버시장에 FPGA 기술을 결합시켜 나가고 있다.

이와 관련해 자일링스 측은 “결과적으로 인텔의 알테라 인수는 자일링스에게 득이 됐다”며 “인텔의 반대 진영에 있는 기업들, 즉 인텔의 경쟁사들은 인텔의 FPGA 제품을 사용할 수 없으니 자일링스와의 거래를 할 수 밖에 없기 때문”이라는 입장이다.

마이크로소프트 캐터펄트 프로젝트


마이크로소프트는 FPGA를 가장 활발하게 사용하고 있다. 마이크로소프트가 데이터 서버에 FPGA를 탑재시킨 '캐터펄트(Catapult)' 프로젝트는 이미지 인식, 자연어 처리, 머신러닝 등 인공지능 관련 서비스를 강화하기 위한 전략이다. 마이크로소프트는 자사의 온라인 검색 서비스인 ‘빙(Bing)’의 기반이 되는 여러 서버에 FPGA를 사용했다.

마이크로소프트는 분산형 설계로 만든 거의 모든 마이크로소프트 데이터센터 내 서버에 FPGA를 통합할 예정이라고 한다. 개별 클러스터가 아니라 데이터센터 서버에 있는 FPGA를 통합하면 곳곳에 가속 구조가 생긴다. 재구성 가능한 융통성 있는 가속 구조인 만큼 단일 서비스에 수천 개에 이르는 FPGA를 이용할 수도 있어 유연성이 뛰어나다. 이미 프로젝트 캐터펄트는 일반 CPU를 이용한 것보다 비용 절감 효과는 30%, 전력효율성은 10% 향상시키는 데 성공한 상태라고 한다.

전문가들은 인공지능의 발전 속도와 파급 정도에 따라서 서로 다른 종류의 프로세서들이 시장에서 가질 수 있는 기회가 많아질 것으로 보고 있다. 하나의 CPU가 규모와 복잡성에 상관없이 모든 연산을 처리하기 보다는 GPU가 병렬 기능으로 빠르게 연산을 처리하는, 인공지능 기술의 발전 양상에 따라 맞춤형 반도체인 ASIC와 FPGA에 대한 수요가 크게 늘어날 것으로 예상된다.

※ 관련 기사

인공지능 반도체 경쟁은 지금부터! ‘엔비디아 · 인텔 · 자일링스’(4)

#인공지능#딥러닝#반도체#AI

이나리 기자  narilee@epnc.co.kr

<저작권자 © EP&C News, 무단 전재 및 재배포 금지>

이나리 기자의 다른기사 보기
icon인기기사
여백
여백
여백
여백
여백
여백
여백
icon
여백
여백
여백
신제품
여백
여백
여백
여백
여백
Back to Top