008_l.jpg


인텔이 인공지능 관련 행사 "AIDC(AI DevCon)"를 개최하고 회사의 AI 프로세서에 관한 새 전략을 설명했다. 그 발표 내용은 이미 뉴스 기사로 전했는데 본 기사에서는 이들의 발표가 향후의 기계 학습(머신 러닝)/심층 학습(딥 러닝) 프로세서 시장에 어떠한 영향을 미칠지에 대해 살펴본다.


이번 발표에서 주목되는 것은 현재는 테스트 출하에 머물고 있는 "Lake Crest"의 후계에 해당하는 "Spring Crest"가 2019년 말까지 상용 출시되는 것, FPGA, Movidius VPU(Vision Processing Unit) 등 하드웨어의 최적화를 자동으로 처리하는 컴파일러 "nGRAPH" 2가지.



NVIDIA의 GPU+CUDA가 심층 학습에서 독주 체제

이제 IT 업계에서는 "AI"가 가장 중요한 기술이다. 기계 학습/심층 학습 기법을 활용한 AI는 스마트폰, PC 등의 클라이언트 기기에 있어서도 중요한 기술이 되고 있다.


예를 들어 Windows 10에 탑재되고 있는 "Cortana", iOS 디바이스에 탑재되고 있는 "Siri" 등의 AI 보조 기능은 클라이언트 측에서 음성을 기록하고 클라우드로 보내며 클라우드 측은 기계 학습/심층 학습의 추론 기능을 이용하여 음성 인식, 그것에 입각한 데이터를 분석하고, 순식간에 클라이언트 장치로 결과를 보내게 된다.


이러한 기계 학습/심층 학습을 이용한 AI는 인텔과 엔비디아가 제공하고 있는 프로세서를 이용하여 연산되고 있다. 그것들이 이용되고 있는 연산 종류를 나누면 크게 3개로 나뉜다.


1. 클라우드 서버에서 기계 학습/심층 학습
2. 클라우드 서버에서 기계 학습/심층 학습 추론
3. 엣지 디바이스(클라이언트 측)기계 학습/심층 학습 추론


학습이란 것은 인간의 뇌를 본뜬 DNN(Deep Neural Network) 등에서 데이터를 읽고, 그 답을 주거나 하는 말 그대로 학습시키는 프로세스다. 유아에게 개를 개, 고양이를 고양이라고 가르치는 것처럼 AI에게 개를 개, 고양이를 고양이로 주입하는 프로세스라고 생각하면 쉽다.


인간도 양질의 서적을 읽으면 지식이 비약적으로 늘고 더 현명해지듯이 DNN에도 양질의 데이터를 가져오는 만큼 현명해져 많은 AI 개발자가 이 학습 과정에 코스트와 시간을 보내고 있다.


추론이라는 것은 학습을 마친 DNN 등을 이용하여 이동해 온 데이터가 개인가, 고양이인가를 판단하는 프로세스다. 이 추론은 클라우드 서버상에서 진행되는 것도 있으며 클라이언트 디바이스 측에서 진행되는 것도 있다.


이 중 지금까지 기계 학습/심층 학습을 처리하는 반도체에서 초점을 맞춰 온 것은 주로 클라우드 서버의 학습에 이용하는 프로세서다. 그 시장에서 압도적인 리더로 여겨지는 것은 NVIDIA로 Tesla GPU와 프로그래밍 모델 CUDA의 조합은 그 높은 성능으로 지지를 받고 있다.


특히 NVIDIA는 NVSwitch로 불리는 NVLink를 스위칭하는 컨트롤러를 12개 도입함으로써 16 GPU를 하나의 GPU로 다룰 수 있는 "DGX-2"을 발표했으며 심층 학습의 학습 시간이 병목이 됐던 AI 개발자를 열광시키고 있다.



001_l.jpg
002_l.jpg
003_l.jpg


인텔은 "원 사이즈 피츠 올"이 아닌 복수의 선택 사항을 제공하는 전략

NVIDIA의 뒤를 쫓는 인텔도 기계 학습/심층 학습에서 주요 벤더 중 하나다. 왜냐하면 NVIDIA의 GPU는 독립적으로는 움직이지 않고 반드시 CPU가 필요하기 때문이다. 그 CPU는 예외 없이 인텔의 Xeon이 사용되고 있으며 NVIDIA의 점유율=인텔의 점유율이다.


또 NVIDIA의 GPU가 사용되지 않은 서버에서 기계 학습/심층 학습이 진행되는 사례도 다수 있다. 너무 큰 데이터가 없는 경우에는 GPU를 쓰지 않고도 충분히 학습할 수 있어 CPU 만으로 성능이 충분한 경우가 많기 때문이다. 그러한 니즈를 대상으로 인텔은 개발 툴을 확충하여 "Math Kernel Library-Deep Neural Network(MKL-DNN)" 등을 제공한다.


이번에 열린 AIDC에서는 Google이 제공하는 프레임워크 "TensorFlow"와 MKL-DNN을 이용하여 Xeon의 최적화를 추진한 결과 추론시 성능이 CPU 노드 스케일링보다 높은 성능으로 실현할 수 있다고 설명했다.



004_l.jpg


하지만 인텔의 기계 학습/심층 학습 솔루션은 Xeon 만이 아니다. AIDC의 기조 강연에 등단한 인텔의 이사 겸 AI 제품 사업 본부장은 "앞으로 기계 학습/심층 학습은 원 사이즈 피츠 올은 아니다" 라고 몇번이나 밝히며 기계 학습/심층 학습용 프로세서의 요구가 다양해지고, GPU 에만 의존하는 시대는 곧 끝난다고 강조했다. 또 동시에 "추론의 처리는 계속 늘어 추론에 적합한 요구가 높아지고 있다" 고 설명하며 향후 추론에 최적인 프로세서의 요구가 강해진다고 어필했다.


그 말처럼 인텔은 기계 학습/심층 학습용 프로세서의 다양화를 추진하고 있다. MKL-DNN의 버전업 등에 의한 Xeon 성능을 올리는 것은 물론 인텔이 2015년에 Altera를 인수하고 얻은 FPGA 제품을 강화하고 있으며 일전에는 Xeon에 FPGA를 CPU 모듈상에 통합한 제품을 내놓았다.


Microsoft가 퍼블릭 클라우드로 제공하는 Azure의 새로운 서비스로서 FPGA를 이용한 추론 엔진을 제공하기 시작했고, 2016년 9월 인수한 Movidius 추론 프로세서를 에지 측의 추론에 활용하는 다양한 움직임을 보이고 있다. Movidius는 에지 측의 추론에 특화된 프로세서로(Intel에서는 VPU=Vision Processing Unit 이라고 부른다) 추론을 불과 1W 이하로 처리하는 제품이다.


이미 AI 카메라나 드론, USB 스틱 등에 "Myraid 2(100GFLOPS/6카메라/28nm)" 라는 제품이 채용됐고, 향후 지난해(2017년) 8월에 발표된 "Myraid X(1TFLOPS/4TOPs/8카메라/16nm)" 라는 차세대 제품을 탑재한 최종 제품이 시장에 나올 예정이다.



005_l.jpg
006_l.jpg
007_l.jpg


Nervana가 개발한 Lake Crest, 그리고 그 후계 Spring Crest로 GPU에 대항

그리고 NVIDIA의 강점이 되고 있는 GPU를 이용한 심층 학습 솔루션에 대항하는 제품이 NNP(Neural Network Processors). 그 최초의 제품이 "Lake Crest"(개발 코드 네임), 그 후계 제품이 "Spring Crest"


009_l.jpg


Lake Crest은 인텔이 AIDC 전신 행사인 "Intel AI Day" 에서 처음 구상을 공개한 제품으로 Intel이 인수한 Nervana가 개발한 심층 학습에 특화된 프로세서다.


Lake Crest는 12개의 Tensor 기반 프로세서 클러스터를 내장하고 있으며 로컬 메모리로 12GB의 HBM2를 탑재하고 있다. 또 NNP 간 접속하는 인터 커넥트 대역으로 2.4TB/s의 대역폭이 확보되어 있으며 여러개의 칩을 접속하여 연산에 이용할 수 있다.


중요한 것은 Crest 시리즈는 액셀러레이터처럼 기능이 고정된 것이 아니라 GPU와 CPU와 같이 프로그래머블로 프로그래머가 소프트웨어를 작성해 효율적인 심층 학습을 할 수 있다는 점이다.


예를 들어 FP16, FP32 같은 각종 부동 소수점 연산, 또 INT8 등의 추론에서 흔히 쓰이는 정수 연산까지 임의의 프로그램을 구축할 수 있다. 또한 행렬 곱셈(GEMM:General Matrix Multiply) 경우의 효율은 GPU보다 높다고 기조 강연에서 밝히며 이론치의 96.4%의 성능을 실현할 수 있다고 설명했다.


현재 Lake Crest는 특정 고객에 대해 테스트 출하했고, 소프트웨어 개발을 공동으로 진행하고 있다. 대규모 상용 제공은 2019년 말까지 출하가 예정됐고, 그럼 Lake Crest의 후계인 Spring Crest는 어떤 제품일까?


미국 인텔 집행 임원겸 AI 제품 사업 본부 AI 하드웨어 사업부장은 "Lake Crest는 낡은 프로세스 노드를 사용하고 있다. 최초의 실리콘에 위험이 있는 프로세스 노드를 이용하는 것을 피하고 싶었기 때문이다. 그것을 최신의 프로세스 노드로 삼을 뿐 주파수를 올리거나 하는 것에 의한 성능 향상이 가능하다"고 밝혔다.


구체적으로 어떤 프로세스로 제조한다는 언급은 피했지만 Spring Crest가 Lake Crest보다 훨씬 앞선 프로세스 노드고, 성능이 향상되고 있다고 설명했다. 인텔은 이번 AIDC에서 Spring Crest는 Lake Crest와 비교해 3~4배의 학습 성능을 실현한다고 설명했다.


그렇게 되면 NVIDIA의 GPU에 대한 무기로는 Spring Crest가 있지만 과제도 있다. 그 필두는 투입 시기가 19년 말로 1년 반 만에 되는 것이다. "이같이 되는 이유는 실리콘을 체인지 했기 때문이다" (인텔) 성능을 높이기 위해 원래의 로드맵 제품에서 Spring Crest로 변경했기 때문이라고 밝혔다.


인텔은 2016년 Intel AI Day 타이밍에 Lake Crest의 후계로 Knights Crest을 2018년 투입키로 했으나 Knights Crest 계획은 파기되고 대신 Spring Crest가 로드맵 상에 등장한 배경이 있다.

그 사이 NVIDIA가 멈추는 것은 아니기 때문에 Spring Crest가 출시하는 단계에서 NVIDIA가 얼마나 성능을 올릴지에 따라 Spring Crest의 매력이 없을 가능성도 있기 때문에 그것은 리스크라고 할 수 있다.



여러 종류의 프로세서가 있는 상황을 새 컴파일러 nGRAPH로 커버

그리고 이번에 인텔은 기계 학습/심층 학습용 프로세서의 약점이 됐던 부분을 극복하는 시스템을 도입한다고 발표했다.


이미 말한 대로 AIDC에서 인텔의 간부는 한창 "기계 학습/심층 학습용 프로세서는 원 사이즈 피츠 올은 아니다"라는 말을 되풀이했다. GPU+CUDA의 하나의 아키텍처로 추론부터 클라우드 서버 측의 학습까지 커버하는 NVIDIA를 의식한 표현으로 보인다. 표로 만들면 아래와 같다.



NVIDIAIntel
제품아키텍처제품아키텍처제품아키텍처
클라우드 서버에서 기계 학습/심층 학습TeslaCUDAXeonx86Lake CrestTensor 코어
클라우드 서버에서 기계 학습/심층 학습 추론TeslaCUDAXeonx86FPGAAltera
에지 디바이스 기계 학습/심층 학습 추론TegraCUDAMyraid 2/XMovidius


NVIDIA는 하나의 CUDA 프로그래밍 모델에서 어떤 GPU도 같은 소프트웨어를 가동시킬 수 있다.(실제로는 재 컴파일이 필요한 경우도 있다) AI를 개발하는 엔지니어들은 CUDA만 공부하면 에지 측의 추론은 Tegra, 클라우드 추론과 학습은 Tesla로 하드웨어는 달라도 같은 CUDA 프로그램으로 만들기 쉽다.


그것에 비하면 인텔은 하드웨어의 차이를 AI를 개발하는 엔지니어가 의식해야 한다. Xeon을 이용해서 클라우드 추론과 학습을 진행하면 Xeon에 최적화를 하고, FPGA를 이용해서 클라우드에서 추론을 하면 FPGA에 맞추어 최적화를, Movidius를 이용하는 경우에는 Movidius에 최적화 할 필요가 있어 파편화되고 있다.


앞으로 이에 Lake Crest/Spring Crest가 추가되므로 또 AI 엔지니어가 학습 할 것이 늘어난다.이것이 그동안 AI를 인텔 플랫폼 상에서 연산할 때의 약점이였다. 거기서 인텔이 새로 도입하는 것이 nGRAPH다. nGRAPH는 말하자면 컴파일러의 일종으로 TensorFlow 등의 심층 학습 프레임 워크와 함께 사용해 Lake Crest, FPGA, Movidius 등 각각의 하드웨어에 최적화 된 코드를 자동으로 생성한다.


인텔에 따르면 CPU(Xeon)에 관해서는 계속 MKL-DNN을 이용해 최적화할 필요가 있지만 "nGRAPH를 이용하면 AI 엔지니어는 하드웨어의 차이를 인식할 필요가 사라진다. AI 엔지니어에게 그런 차이를 이해하는 것은 시간 낭비일 뿐, 그것을 쉽게 할 수 있는 도구가 필요했다 " 는 말과 같이 컴파일러 차원에서 하드웨어를 추상화하기 때문에 AI 엔지니어는 그것을 이해하지 않아도 컴파일러에 집중할 수 있다는 게 장점이다.


이에 따라 여러 종류의 프로세서가 있다는 약점을 덮는 것이 가능하고, AI 엔지니어에게 복수의 하드웨어를 사용해 보다 효율적인 학습과 추론을 행하는 것이 가능하게 된다. 인텔의 기계 학습/심층 학습 솔루션에 있어서 마지막 피스가 nGRAPH 이며, 그것이 갖추어 졌을때는 현 시점에서 심층 학습 세계의 절대 제왕인 NVIDIA도 심각한 위협이 되지 않을까,


보도 - https://pc.watch.impress.co.jp/docs/column/ubiq/1124703.html

반응형
Posted by 랩터 인터내셔널