마이크로소프트가 검색 환경 혁신을 위해 데이터센터에 Altera Arria® 10 FPGA(field programmable gate array)를 채택함으로써 신경망 알고리즘의 혁신을 달성하고 있는 것으로 나타났다.
알테라(Altera)에 따르면, 마이크로소프트는 Altera Arria® 10 FPGA(field programmable gate array)를 채택함으로써 CNN(convolutional neural network) 알고리즘을 기반으로 한 데이터 센터 가속화로 비약적으로 향상된 와트당 성능을 달성하고 있다. CNN 알고리즘은 이미지 분류, 이미지 인식, 자연 언어 프로세싱에 널리 사용되고 있는 알고리즘이다.
알테라는 “Microsoft의 연구진은 클라우드 기술을 향상시키기 위한 연구를 하고 있는데, Arria 10 개발자 키트와 Arria 10 FPGA 엔지니어링 샘플을 이용함으로써 와트당 40GFLOPS에 이르는 성능을 달성하게 되었다. 이것은 데이터 센터 성능으로서 업계에서 가장 뛰어난 수준이다.”고 밝히고, 또한 “GPGPU를 이용했을 때와 비교해서 이와 같은 FPGA 성능은 CNN 플랫폼으로 전력대 성능비가 3배 이상 더 우수한 것이다. 오픈 소프트웨어 개발 언어인 OpenCL이나 또는 VHDL을 이용해서 Arria 10 FPGA와 이의 IEEE754 하드 부동소수점 DSP(digital signal processing) 블록을 코딩함으로써 이와 같은 성능을 달성하게 되었다.”고 전했다.
마이크로소프트 리서치(Microsoft Research)의 클라이언트 및 클라우드 앱 이사인 Doug Burger는 “우리 연구진은 Arria 10 엔지니어링 샘플을 이용함으로써 CNN 성능과 전력 효율에 있어서 비약적인 향상을 이룰 수 있었다. 이 실리콘에 통합하고 있는 DSP 블록의 정밀 하드 부동소수점 연산이 이와 같은 도약적인 성능 결과를 달성할 수 있었던 한 요인이다”고 말했다. Microsoft의 블로그(http://bit.ly/1MMMzvG)로 들어가면, Burger 이사가 인프라 차원에서 데이터 센터가 직면하고 있는 과제들에 대해서 살펴보고 어떻게 기존의 CPU를 재프로그램가능 FPGA로 교체함으로써 Microsoft가 이와 같은 과제들을 해결할 수 있게 되었는지에 대한 설명을 볼 수 있다.
알테라의 연산 및 스토리지 사업부 이사인 Michael Strickland는 “FPGA는 유연한 데이터 패스를 활용함으로써 컨벌브(convolve)와 풀링(pooling)을 매우 효율적으로 할 수 있으므로 아키텍처 차원에서 신경망 알고리즘에 이용하기에 유리하다. 그럼으로써 많은 OpenCL 커널들이 외부 메모리로 나갈 필요 없이 상호 간에 직접적으로 데이터를 전달할 수 있다. Arria 10은 또 곱셈과 덧셈 둘 다에 대해서 하드 부동소수점을 지원한다는 점이 또 다른 아키텍처적 이점이다. 그럼으로써 이 하드 부동소수점은 기존 FPGA 제품보다 더 많은 여유 로직을 활용할 수 있게 하고 더 빠른 클록 속도를 가능하게 한다”고 말했다.
마이크로소프트는 올 하반기에 완공 예정인 Bing 데이터 센터 서버에 이용하고자 혁신적인 Catapult 보드로 검색을 가속화하기 위해서 알테라의 Stratix V FPGA를 채택한 것으로 알려졌다.
한편, 중국 최대 온라인 검색 엔진 회사인 바이두(Baidu)도 이미 알테라 FPGA를 통해 CNN 알고리즘을 활용중이다. 지난해 9월 알테라는 중국 바이두가 딥 러닝(deep learning) 애플리케이션에 FPGA와 CNN(convolutional neural network) 알고리즘을 이용하는 것에 관해서 협력하고 있다고 밝혔다. 딥 러닝은 더욱 더 정확하고 신속한 온라인 검색이 가능하도록 중요한 역할을 할 것으로 기대되는 기술이다.
아이씨엔 오승모 기자 oseam@icnweb.co.kr
마이크로소프트, 알테라 FPGA로 데이터센터 알고리즘을 혁신하다
아이씨엔매거진