본문 바로가기
AI | 딥러닝/Concept

[FPGA의 미래] AI와 딥러닝 칩 강자로 FPGA가 각광받고 있다?

by 고뭉나무 2021. 6. 18.

 

 

현재 PC는 CPU가 코어가 되어 연산을 처리하며 동작하고, 스마트폰과 태블릿은 AP가 코어가 되어 메인 동작을 구동한다.

 

그렇다면 점점 각광받고 있는 AI와 딥러닝을 구현할 때의 코어는 무엇일까?

 

답은 GPU. 정확히는 데이터센터나, 데스크톱 워크스테이션, 노트북 등 GPU의 발열 문제를 쉽게 해결할 수 있게 부피가 크고 주변 환경이 비교적 안정적이었던 공간에서 많이 쓰였다. 

 

그래서 애널리틱스 인사이트는 "딥러닝 기반의 AI 기술 성장은 지난 10년간 GPU 업계의 호재로 작용했다"며 "엔비디아와 AMD 같은 기업들은 그들의 GPU가 딥러닝 모델을 훈련하고 운영하는 데 효과적이라는 것을 증명했기 때문에 주가가 크게 올랐다"고 설명했다.

엔비디아는 이를 바탕으로 게임밍이나 이미지·영상편집용 GPU 생산업체에서 AI 기업으로 회사의 정체성을 새롭게 확립했다.

 

그러나 이제 한단계 더 나아간 자율주행차, 생산라인, 로봇, 스마트 시티, IoT 등에서는 GPU의 한계가 있다고 보는 의견이 있다.

 

 

 

▼ GPU, 전력소모·내구성 등 선천적 결함 있어

수천개의 코어를 집약한 GPU는 병렬연산을 하는 동안 엄청난 열을 생산한다. 냉각을 위해 심각한 수준의 전력소모가 발생한다.

데이터센터나, 데스크톱 워크스테이션, 노트북에서 ML(Machine Learning)을 교육할 때 이 문제는 어느 정도 해결할 수 있다. 

 

하지만 자율주행차, 생산라인, 로봇, 스마트 시티, IoT 등의 엣지 AI에서는 GPU의 단점이 큰 문제로 다가온다. 열, 먼지, 습기, 이동성, 한정된 전력 등의 요인을 포함해야 하는 많은 환경에서 딥러닝 모델을 구동해야 되기 때문이다.  

 

GPU의 원래 목적은 컴퓨터 그래픽 처리다. AI용으로 GPU를 쓰는 이유는 그래픽 처리와 AI 연산이 비슷한 방법으로 이뤄지기 때문이다.

다만 전문가들은 GPU의 원래 목적이 AI 연산은 아니기 때문에 비용이나 전력소모 등 비효율적인 부분이 발생한다고 지적한다.

 

기대수명도 문제다.

GPU는 약 2년에서 5년 동안 지속된다. 기존의 산업이나 게이밍 등에서는 큰 문제가 아니다. 

애널리틱스 인사이트는 10년 이상의 수명을 기대하는 내구성이 높은 자동차 사업과 같은 분야에서는 까다로워질 수 있다고 지적했다. 다양한 온도와 외부 환경, 화학적 요소 등 극한 환경에 노출되면서 수명이 더 빨리 줄어들 수 있다.

 

이를 극복하기 위해 최근에는 FPGA를 사용하거나 NPU, TPU 등 새로운 프로세서를 개발해 사용하고 있다. 일부에서는 뉴로모픽(neuromorphic), 양자 컴퓨터 등 차세대 기술을 개발하는 중이다.

머신러닝 소프트웨어 전문기업인 밉솔로지(Mipsology) CEO 겸 공동창업자 루도비치 라르줄은 GPU를 AI 가속기로 활용할 때 선천적인 결함이 있다고 지적했다. 그 또한 FPGA를 통해 GPU의 결함을 해결할 수 있다고 덧붙였다.

적은 전력 소모량이 강점이다.

 

 

 

FPGA의 장점을 구체적으로 알아보기에 앞서 CPU, GPU, FPGA의 각 특징을 자세히 알아보자.

CPU GPU FPGA
순차적인 작업에 유리
(여러 가지 일을 순차적으로 처리)
병렬적인 작업에 유리
(딥러닝용 연산처리에 적합)
병렬적인 작업에 유리
(딥러닝용 연산처리에 적합)
내부 메모리보다 PC의 RAM을 많이 이용 GPU 내부 메모리를 많이 이용 내부(BRAM) 및 외부 이용
전력 소모량 중간 전력 소모량 많음 전력 소모량 적음
- NVIDIA의 CUDA Library를 이용 (C/C++)
or
딥러닝 Framework인 TensorFlow, PyTorch를 이용 (Python)
Xilinx의 Vivado를 이용 (Verilog)

 

 

AI / 딥러닝을 적용한 FPGA 사례들

ML(Machine Learning)과 DL(Deep Learning) 개발을 위해 FPGA를 구축한 사례들은 적지 않다. 2010년 마이크로소프트 리서치는 웹 검색을 빠르게 하기 위해 FPGA를 사용했다. 5년 후 마이크로소프트는 빙(Bing) 검색엔진에 FPGA를 활용하면서 DL 애플리케이션에 유용한 가치를 입증했다.

애널리틱스 인사이트는 빙이 FPGA를 활용해 AI 모델 기술의 변화에 따라 재프로그래밍을 진행하며 50%의 검색 속도 향상을 이뤘다고 설명했다.

 

국내 SK텔레콤은 FPGA를 이용해 AI용 가속기를 개발한 뒤, ASIC으로 대량 생산한 대표적인 사례 중 하나다.

SKT는  2018년 자일링스 알베오(Alveo) 데이터센터 가속 카드 기반 추론용 가속기 AIX(AI Inference Accelerator)를 개발했다. 이를 통해 SKT는 자사 AI 스피커 누구(NUGU)와 AI 기반 물리적 무단침입 감지 서비스 '티뷰'에 적용해 높은 성과를 냈다고 발표했다.

지난해 11월 SKT는 수년간의 FPGA 사용 노하우를 바탕으로 AI칩 ‘사피온 X220’을 공개했다.

ASIC으로 생산되는 사피온 X220은 범용 PCIe 기반의 가속 카드다. PCIe라는 표준 기술을 기반으로 SKT뿐만 아니라 여러 데이터센터에 즉시 적용할 수 있다.

SKT는 "현재 대다수 기업들은 GPU를 활용해 AI 데이터센터를 운영하고 있지만, 비싼 GPU 가격과 큰 전력 사용량으로 인해 발생하는 높은 운영 비용에 부담을 느끼고 있어 AI 반도체에 대한 시장의 기대가 높다"며 사피온 AI칩을 개발한 배경을 밝혔다.

SKT는 사피온 X220이 추론용 엔비디아 T4 GPU보다 딥러닝 연산 속도가 1.5배 빠르다고 전했다. 아울러 가격은 절반 수준으로 낮췄으며, 전력 사용량도 80%로 줄였다고 설명했다.

 

 

 FPGA의 구체적인 장점은?

짧은 대기 시간과 높은 처리량은 FPGA의 가장 큰 장점이다. 초기 단계부터 신경 네트워크를 조립하고 모델에 가장 적합하도록 FPGA를 구성할 수 있다.

I/O(In/Out) 병목 현상을 극복할 수 있다. 낮은 지연 시간에 고대역폭의 네트워크를 통해 정보를 전달할 때 FPGA를 활용한다. AI 시스템 성능에서 가장 제약적인 요소 중 하나인 I/O 병목현상을 해결하고 메모리의 지연을 줄인다. 데이터 수집을 가속화함으로써 전체 AI 워크플로우의 속도를 높일 수 있는 셈이다.

HPC(고성능컴퓨팅) 클러스터 추진에도 FPGA는 유용하다. 추론을 위해 프로그램 가능한 신속처리제를 주입함으로써 AI와 HPC의 상호작용을 촉진할 수 있다.

FPGA는 GPU보다 전력효율이 높다. 개발자는 FPGA를 통해 하드웨어를 애플리케이션에 맞게 조정할 수 있어 전력 효율 요건 충족에 도움이 된다. 
FPGA도 칩에서 더 많은 에너지 효율을 제공하면서 다양한 용량을 제공할 수 있다. FPGA가 다양한 기능을 병렬로 가질 수 있도록 하기 위해 FPGA의 일부만을 기능에 활용할 수 있다는 것이다.

 

 

 

또 다른 대안으로 제시되는, NPU

GPU와 FPGA의 단점은 가격이다. AI를 처리하기에 적합한 성능을 지녔지만 필요 없는 성능을 포함해 비싸고, 비효율적이다. AI 처리만을 위한 프로세서 개발이 필요하다는 것.

 

한국전자통신연구원(ETRI)은 지난해 발표한 '인공지능 프로세서 기술 동향'에서 "다양한 응용에 적용할 수 있도록 일반화된 구조를 가지는 GPU는 AI 알고리즘 처리에 필요하지 않은 블록이나 데이터 패스를 포함하고 있다"며 "성능개선의 여지가 있고 전력 면에서도 불필요한 소모가 있다"고 지적했다.

이어 "AI 알고리즘은 연산 과정에서 필수적인, 대량의 데이터 전송에 드는 시간이 전체 동작 성능을 좌우한다"며 "AI 알고리즘에 최적화된 고속 데이터 전송 구조 설계가 필수적"이라고 덧붙였다.

그 결과 나온 것이 바로 NPU(Neural Processing Unit, 신경망처리장치)다. 인공신경망(Neural Network)을 이용해 AI 연산을 더 효율적으로 수행하기 위한 목적에서 만들어졌다.

NPU는 AI 연산만을 위한 목적이기 때문에 GPU보다 범용성이 적다

 

엔비디아 GPU는 자사의 쿠다(CUDA)를 이용해 자유롭게 활용할 수 있으며, 다른 GPU도 다른 API를 통해 AI 알고리즘을 개발할 수 있게 지원한다. 

NPU는 구조상 다른 AI 알고리즘을 습득하기 어렵다. AI 알고리즘의 딥러닝 네트워크를 구성하는 신경망을 하드웨어로 구현했기 때문이다. 구조가 다른 알고리즘을 구현할 때 오히려 더 큰 시간과 비용이 들 수 있다.

다만 원래 용도에서 NPU는 GPU 대비 높은 효율을 보인다. 또한 ASIC(주문형반도체)의 장점인 대량생산을 통한 '가격 경쟁력' 확보가 뛰어나다.

이에 대규모 데이터센터보다 가격과 크기, 전력 효율을 필요로 하는 엣지(Edge)나 게이트웨이(Gateway)에서 NPU를 주로 채택하고 있다.

대부분 NPU는 스마트폰에 쓰인다. 영상·이미지·음성 인식 등 AI 기반 기술이 스마트폰에 필수적으로 쓰이면서, 이를 처리하기 위한 전용 프로세서를 개발·도입한 것.

이에 주로 모바일 NPU는 스마트폰 AP(애플리케이션 프로세서) 기업들이 개발한다. AP 프로세서 IP를 다수 보유한 Arm을 비롯해, 삼성전자, 애플, 퀄컴, 화웨이 등이 대표적이다.

올해 삼성전자는 엑시노스2100 AP를 발표하며 3개의 차세대 NPU 코어와 불필요한 연산을 배제하는 가속기능 설계 등을 통해 26TF(1TF=초당 1조번 연산) 이상의 AI 성능을 확보했다고 밝혔다. 

퀄컴도 지난해 말 스냅드래곤 888을 발표하며 AI 연산 속도도 26TF를 달성했다. 그에 앞서 지난해 9월 A14 바이오닉을 공개한 애플은 11TF 연산의 16코어 뉴럴엔진을 개발했다고 밝힌 바 있다.

 


 

참조 사이트 및 기사

 

http://www.aitimes.com/news/articleView.html?idxno=134014 

 

AI와 딥러닝에서 FPGA가 GPU보다 나은 이유는? - AI타임스

FPGA(field programmable gate array)는 CPU나 GPU 등 회로 변경이 불가능한 다른 프로세서와 달리 프로그래밍이 가능한 프로세서로 용도에 맞게 회로를 변경할 수 있다. FPGA는 인공지능(AI) 기술에서도 중요

www.aitimes.com

 

http://www.aitimes.com/news/articleView.html?idxno=137290 

 

[칩러닝] GPU를 대신할 새로운 AI 반도체는? ① FPGA - AI타임스

인공지능(AI) 기술의 중심은 소프트웨어(SW) 기술이라고 하지만, 복잡한 AI SW를 구현하기 위해서는 높은 성능의 하드웨어(HW)가 필수적이다. 80년대에도 AI가 활발히 연구됐지만 실제 구현은 불과

www.aitimes.com

 

http://www.aitimes.com/news/articleView.html?idxno=137640 

 

[칩러닝] GPU를 대신할 새로운 AI 반도체는? ② NPU - AI타임스

인공지능(AI) 기술의 중심은 소프트웨어(SW) 기술이라고 하지만, 복잡한 AI SW를 구현하기 위해서는 높은 성능의 하드웨어(HW)가 필수적이다. 80년대에도 AI가 활발히 연구됐지만 실제 구현은 불과

www.aitimes.com

 

http://www.cctvnews.co.kr/news/articleView.html?idxno=69011 

 

인공지능 칩 강자는 누구? GPU vs FPGA vs ASIC (1) - CCTV뉴스

[CCTV뉴스=이나리 기자] 인공지능 기술을 구현하기 위해서는 빅데이터와 플랫폼도 중요하지만 이를 빠르게 연산처리하기 위한 하드웨어 기술이 뒷받침돼야 한다. 인공지능이 가능하게 된 이유는

www.cctvnews.co.kr

 

https://www.vision-systems.com/boards-software/article/14201771/fpgabased-neural-network-software-gives-gpus-competition-for-raw-inference-speed?utm_source=VSD%20Special%20Topics&utm_medium=email&utm_campaign=CPS210611080&o_eid=5324C8779601E0Y&rdx.ident%5Bpull%5D=omeda%7C5324C8779601E0Y&oly_enc_id=5324C8779601E0Y 

 

https://3months.tistory.com/526

 

[딥러닝강의] [2] GPU 와 딥러닝 소프트웨어

[딥러닝강의] GPU 와 딥러닝 소프트웨어 CPU vs. GPU 왜 딥러닝에서 CPU 가 아닌 GPU 를 사용할까? GPU 의 원래 목적은 그래픽을 rendering 하는 것이다. GPU 를 만드는 회사는 크게 NVIDIA 와 AMD 로 나뉜다...

3months.tistory.com

 

 

https://m.blog.naver.com/shakey7/221812494790

 

FPGA 특징 및 전망 (반도체 / 인공지능 AI / 딥러닝 / 프로그래머블 / 소프트웨어 병렬 연산 / CPU / GPU

1. FPGA (Field-Programmable Gate Array) 개요 - FPGA는 프로그램이 가능한 비메모리 반도체,...

blog.naver.com

 

 

https://www.youtube.com/watch?v=Xi8P8s7FQns 

#가격 

#유연성

#이종 병렬성

반응형

댓글