닫기

테크노트

배너

[기술 리포트] AI 이해하기: 하드웨어 가속기

URL복사
[마감임박!! 무료] 생성형AI, 디지털트원, 제조AI, SaaS, 클라우드로 생산성 높이고, 비용절감 방안 제시.. AI자율제조혁신포럼 개최 (3/27~29, 코엑스3층 컨퍼런스룸 317~318호)

[헬로티]


▷▶마크 패트릭(Mark Patrick), 마우저 일렉트로닉스(Mouser Electronics) 


추론(Inference)은 학습 단계에 이어서 머신 러닝의 두 번째 단계이다. 학습 단계에서는 알고리즘이 새로운 모델을 생성하거나 또는 사전에 학습된 모델을 특정 애플리케이션에 맞게 변형하고 모델이 파라미터들을 학습하도록 한다. 추론 단계에서는 학습된 파라미터에 기반해서 새로운 데이터에 대해서 예측이나 판단을 한다.



학습을 위해서는 상당한 시간, 컴퓨팅 성능, 전력을 필요로 한다. 이에 비해서 추론 단계는 프로세싱 성능을 덜 필요로 하고 전력도 덜 소모한다. 그런데 중앙의 클라우드에서 처리하는 전통적인 방식은 IoT 디바이스를 위해서는 과도하게 자원 집중적일 수 있다. 엣지 상에 상주하는 각각의 IoT 노드로 많은 데이터들을 수집하므로 엣지에서 클라우드로(또는 그 반대로) 데이터를 전송하기 위해서는 비용이 들고 시간이 걸린다. 


모든 프로세싱을 처리하기 위해서 클라우드 기반의 서버에 의존하는 것이 아니라, “엣지 컴퓨팅"을 사용해서 대부분의 처리를 직접 하고 꼭 필요한 데이터만 클라우드로(또는 그 반대로) 전송하도록 할 수 있다. 그러므로 엣지 컴퓨팅은 데이터 전송 비용과 시간을 절약할 수 있는데, 이 모델 역시도 특정한 단점을 가지고 있다. 예를 들어서 IoT 디바이스는 되도록 전력 면에서 효율적이어야 하는데, 이것은 학습과 추론에 요구되는 높은 수준의 프로세싱 성능과는 상충되는 것이다. 이 문제를 해결할 수 있는 것이 AI 엣지 컴퓨팅으로 가속화기를 사용하는 것이다.


AI 가속화기

하드웨어 및 소프트웨어 기반 AI 가속화기를 사용함으로써 머신 러닝을 빠르게 실행할 수 있다. 하드웨어 가속화는 학습에 사용하거나, 추론에 사용하거나, 둘 다에 사용할 수 있다. 어떤 경우에는 하드웨어를 사용해서 전력 요구량을 줄일 수 있고, 또 어떤 경우에는 하드웨어를 사용해서 프로세싱 성능을 높일 수 있다. 하드웨어 가속화용으로 다양한 칩이나 프로세싱 유닛들이 나와 있다. 


이러한 것들로는 CPU(Central Processing Units), GPU(Graphics Processing Units), FPGA(Field-Programmable Gate Arrays), SoC(System-on-Chips), ASIC(Application-Specific Integrated Circuits), VPC(Vision Processing Units), 뉴로모픽 IC를 포함한다. 하드웨어 가속화뿐만 아니라, 소프트웨어 기반 솔루션들도 시장에 나와 있다. AI 소프트웨어 개발을 가속화하고 시스템 성능을 최적화하기 위한 머신 러닝 프레임워크들을 들 수 있다. 


CPU와 GPU 

CPU는 AI에 전통적으로 사용되고 있는 것이다. CPU는 범용적으로 사용하도록 설계됐으나, 대체로 모델 생성이나 추론에 사용되는 집중적인 연산을 처리하기에는 부족할 수 있다. 그래서 ARM(DynamIQ 제품)이나 삼성(Exynos 9 시리즈) 같은 회사들은 AI 전용 칩을 개발하기 시작했다. ARM과 삼성은 AI 전용 CPU를 고수하는 한편, 다른 업체들은 GPU 쪽으로 옮겨가고 있다.


원래 비디오 게임 업계에서 태어나고 대량의 데이터셋을 처리할 수 있도록 설계된 GPU는 머신 러닝에 잘 맞는다. GPU는 CPU에 비해서 칩 당 더 많은 프로세싱 유닛을 사용하고, 쓰루풋(Throughput)이 더 높고, 더 높은 병렬 프로세싱 성능을 제공한다. 그러므로 처리 시간을 크게 단축할 수 있다. 더욱이 GPU의 단일 프로세싱 유닛이 CPU가 사용하는 다중의 유닛들보다 가벼우므로 작고 민첩한 부품을 필요로 하고 많은 제약이 따르는 IoT 디바이스에 사용하기에 잘 맞는다. AI 전용 GPU를 제공하는 회사들로는 AMD(Radeon Instinct), NEC(SX-Aurora), 엔비디아(DGX), 퀄컴(Adreno) 등을 들 수 있다.


▲인텔의 FPGA 칩 ‘애질렉스(Agilex)’ 


FPGA 

CPU와 GPU는 상당한 프로세싱 성능을 재량껏 활용할 수 있고 학습과 추론을 가속화하기에 효과적이기는 하지만, 메모리와 프로세싱 사이에 데이터를 이동시키기 위해서 많은 시간과 에너지를 소모한다. CPU와 GPU는 회로들을 밀집되게 집적하기 때문에 과열을 일으킬 수 있고 시스템 결함의 원인이 될 수 있다. 원격지에 설치되는 IoT 디바이스로 높은 에너지 소모와 시스템 결함 가능성은 이상적인 것과는 멀다. 그러므로 일부 작업들을 좀더 에너지 효율적인 하드웨어로 떠맡도록 하는 것이 타당하다.


프로그래머블 로직에 기반한 FPGA는 생산 후에 현장에서 고객이나 디자이너가 재구성을 할 수 있는 IC이다. 대체로 FPGA는 CPU나 GPU처럼 강력하지는 않으나, 데이터를 외부로 전송하지 않고 칩 내부에서 연산하므로 일부 계산들을 빠르게 처리할 수 있다(곱셈, 덧셈, 적분, 미분, 지수 등). FPGA는 유연성은 뛰어난 반면에, 대체로 크기가 크다. 그러므로 IoT 디바이스 용으로 크기를 소형화하는 것이 과제이다. AI 추론용 칩을 제공하는 주요 회사들로는 엔비디아(TensorRT)와 자일링스(Xilinx)가 있다. 또 마이크로소프트(Microsoft)는 추론을 가속화하기 위해서 FPGA 칩을 사용하고 있으며, 인텔(Intel)은 자사의 FPGA 포트폴리오를 확장하고 있다. 


SoC 

SoC는 일련의 전자 소자들을 통합할 수 있다(마이크로프로세서, 마이크로컨트롤러, 디지털 신호 프로세서, 온칩 메모리, 하드웨어 가속화기 등). 단일의 반도체 서브스트레이트로 다수의 소자들을 통합하기 때문에 SoC는 마이크로컨트롤러 칩보다 강력하다. 스마트폰 용으로 SoC는 비디오, 오디오, 이미지 프로세싱을 통합할 수 있다. ARM은 머신 러닝 프로세서와 물체 감지 프로세서를 개발했으며 이것들을 차후에 SoC로 통합할 예정이다. 


하이실리콘(HiSilicon)은 화웨이(Huawei)의 자회사로서, 휴대전화 단말기와 태블릿에 사용하기 위한 SoC를 개발하기 위해서 ARM으로부터 IP를 라이선스했다. 또한 하이실리콘은 화웨이용으로 어센드(Ascend) 칩을 제조하고 있다. 


SoC 분야의 또 다른 중요한 업체는 아테리스(Arteris)이다. 아테리스는 네트워크-온-칩 인터커넥트 패브릭 기술(FlexNoC)을 개발하고 많은 모바일 및 무선 회사들이 사용하고 있다. 아테리스는 IP에 있어서 지배적인 위치를 차지하고 있다. AI SoC 시장에서 두드러진 활약을 할 것으로 기대되는 또 다른 회사들로는 인텔(모비디우스(Movidius) 자회사), NXP, 르네사스(Renesas), 도시바(Toshiba), 텍사스인스트루먼트(Texas Instruments), ST마이크로일렉트로닉스(STMicroelectronics) 등을 꼽을 수 있다.


ASIC, VPU, 뉴로모픽 칩

ASIC은 전적으로 딥 러닝 알고리즘 학습을 가속화하기 위한용으로 개발된 칩이다. 대표적인 예로서 구글(Google)의 엣지(Edge) TPU와 인텔의 너바나(Nervana)를 들 수 있다. 비전 프로세싱 유닛(VPU)은 머신 비전 작업을 가속화하기 위한 것으로서, 컨볼루션 신경망(CNN) 같은 머신 비전 알고리즘을 실행한다. 


그러므로 VPU의 비디오 프로세싱 성능은 GPU와 다르다. GPU는 이와 같은 특정 작업용의 프로세싱을 제공하지 않기 때문이다. VPU의 예로는 인텔의 모비디어스 미리어드(Movidius Myriad) 칩, 구글의  픽셀 비쥬얼 코어(Pixel Visual Core), 마이크로소프트의 홀로렌즈(HoloLens), Inuitive의 NU 시리즈, 모빌아이(Mobileye)의 EyeQ를 들 수 있다.


디지털 칩과 아날로그 칩은 각기 장단점이 다르다. 디지털 회로는 정밀하기는 하나 에너지를 잡아먹고, 아날로그 회로는 지연시간과 에너지 소모는 낮으나 정밀도는 떨어진다. 그러므로 연구자들은 디지털 칩과 아날로그 칩의 단점은 버리고 양쪽의 장점을 조합할 수 있는 방안을 모색하고 있다. 


인간의 뇌에서 영감을 받아서 근본적으로 디지털 아키텍처를 고수하면서 아날로그 회로를 사용해서 혼성신호 프로세싱을 달성하는 뉴로모픽 칩들이 설계되고 있다. IBM의 TrueNorth는 센서 데이터 패턴 인식과 인지 작업용으로 사용하기 위한 뉴로모픽 프로세서이다. 또 컬럼비아 대학, 스탠포드 대학의 “Brains in Silicon” 프로젝트, DARPA가 지원하는 미시건 대학 IC 랩 모두가 뉴로모픽 시스템 구현의 다양한 측면들을 연구하고 있다.


▲모빌아이의 SoC EyeQ5


머신러닝 프레임워크

AI 가속화기는 소프트웨어도 포함한다. 예를 들어서 머신러닝 프레임워크는 인터페이스, 라이브러리, 툴들을 포함하는 것으로서, 머신러닝과 관련된 복잡성을 낮출 수 있다. 그러므로 개발자들이 더 쉽고 빠르게 모델을 생성하고 성능을 최적화할 수 있다. 이러한 프레임워크들은 파이썬(Python)이나 자바(Java) 같은 특정한 언어로 개발된다. 


널리 사용되는 오픈 소스 머신 러닝 프레임워크로서 아마존(Amazon, AWS), 아파치(Apache), 카페2(Caffe2), 케라스(Keras), 시애노(Theano), 마이크로소프트(애저, Azure), 구글(텐서플로우, TensorFlow)을 들 수 있다. 또한 일부 회사들이 자체적인 플랫폼을 제공하기도 한다. 예를 들어서 인텔의 OpenVINO 툴키트는 CNN 모델을 사용해서 추론을 최적화할 수 있는 소프트웨어 및 하드웨어 가속화기이다. 또한 퀄컴의 스냅드래곤(Snapdragon)은 모바일 플랫폼이자 소프트웨어 가속화기이고, IBM은 왓슨(Watson) 머신러닝 가속화기 플랫폼을 제공하며, 화웨이는 최근에 MindSpore AI 프레임워크를 내놓았다.  


AI의 첫 발을 떼다 

마우저(Mouser)는 AI 구현을 위해서 사용할 수 있는 다양한 하드웨어 제품을 공급한다. 인텔의 플러그-앤-플레이 뉴럴 컴퓨트 스틱2(Neural Compute Stick 2)를 사용함으로써 딥 신경망을 조기에 빠르게 개발할 수 있다. 이 스틱 제품은 인텔 모비디우스 X VPU를 사용해서 전력 효율과 4TOPS에 이르는 성능을 훌륭하게 조합하고 있다. 


산업용 컴퓨팅 용으로 극히 컴팩트한 AAEON UP AI Core 프로세싱 모듈은 미니-PCI 익스프레스 형식을 기반으로 한다. 이 모듈 역시 인텔 모비디우스 VPU를 채택하고 있다(Myriad 2 2450으로서, 512MB DDR 메모리, 12개 VUW 프로그래머블 SHAVE 코어, 전용적인 비전 가속화기 포함). 검스틱(Gumstix)의 에어로코어2(Aerocore 2) 보드는 엔비디아의 젯슨(Jetson) TX1 및 TX2 CUDA 코어를 채택해서 강력한 병렬 프로세싱 성능을 제공하고 ARM Cortex-M4 마이크로컨트롤러와 다수의 주변장치를 포함한다. 이 보드는 물체 인식, 생산 라인 검사, 그 밖의 다양한 머신비전 작업에 사용하기에 적합하다.


▲그래프코어의 콜로서스(Colossus) IPU


향후 전망

엔비디아(NVIDIA)가 여전히 산업용 AI 분야를 장악하고 있는 가운데, 새로이 진출하는 대부분 회사들은 IoT AI 분야에 주력하고 있다. 그린웨이브(GreenWave)와 리듀스 에너지 마이크로시스템즈(Reduced Energy Microsystems)는 저전력 칩 분야에 주력하고 있고, 미국 AI  스타트업인 미씩(Mythic)과 신티언트(Syntiant)는 배터리 구동 프로세서를 개발하고 있다. 마찬가지로 이스라엘 반도체 업체인 윌롯(Wiliot)은 주변 무선 주파수를 활용해서 동작할 수 있는 블루투스 칩을 개발하고 있다. 


집중적 병렬 데이터 프로세싱 분야에 주력하고 있는 회사로는 스타트업 미국의 바티스(Vathys), 영국의 그래프코어(Graphcore), 세레브라스(Cerebras), 웨이브컴퓨팅(Wave Computing)을 꼽을 수 있다. 또 헤일로 테크놀로지스(Hailo Technologies)와 호리즌 로보틱스(Horizon Robotics)는 자율 자동차용으로 전문적인 칩을 개발하고 있다. 딥러닝용으로는 브레인칩(BrainChip)이 최초의 스파이킹 신경망 프로세서를 개발했으며, 씬씨아이(ThinCI)는 스트리밍 그래프 프로세서를 출시했고, 자이어팔콘(Gyrfalcon)은 독자적인 APiM(AI processing in memory) 기술을 사용해서 딥 러닝 프로세서를 개발하고 있다. 


끝으로 Groq는 구글의 TPU를 설계했던 전직 구글 직원들이 설립한 회사로서, 지연시간이 극히 낮은 칩을 개발하고 있다. 오늘날 머신러닝이 눈부시게 빠른 속도로 진화하고 있다. 하지만 IoT 엣지 컴퓨팅을 위해서는 여전히 해결해야 할 많은 과제들이 놓여 있다. 하드웨어 및 소프트웨어 개발자들이 최상의 조합의 프로세싱 성능과 에너지 효율을 달성하기 위해서 계속해서 노력하고 있다.










배너









주요파트너/추천기업