머신러닝(ML) 구현에서 ‘상위수준합성(High Level Synthesis, HLS)’이 주목받는 이유 ①

최태우 기자 / 기사승인 : 2020-03-30 11:00:40
  • -
  • +
  • 인쇄
▲ [source=alibaba damo academy]
상위수준합성(High Level Synthesis, HLS)이 머신러닝(Machine Learning, ML) 매트릭스와 반복적인 설계 작업을 처리할 수 있는 차세대 기술로써 주목을 받고 있다.

HLS의 분명한 이점은 디자이너들이 RTL이 아닌 C/C++ 및 기타 상위수준 언어로 작업함으로써 생산성이 향상된다는 점이다. 작동하는 레이아웃을 설계한 뒤에 이를 손쉽게 수정해 다른 구성들을 테스트해볼 수 있다면 골치 아픈 문제에 대한 해결책을 찾거나 새로운 맞춤형 제품이나 상용 제품을 신속하게 개발할 경우에 더욱 많은 노력을 절약할 수 있다.

케이던스(Cadence) 디지털 및 사인오프 그룹의 HLS 부문 수석 제품 매니저인 데이브 퍼슬리(Dave Pursley)는 HLS의 가장 큰 이점으로 “새로운 IP를 설계하면서 최상의 전체 아키텍처를 달성하기 위해 변경이 필요할 경우”라고 말하기도 한다.

디자이너들은 아직도 이를 효과적으로 실현하기에 적합한 알고리즘이 무엇인지 알아내기 위해 노력하고 있다. 따라서 하나 이상의 솔루션을 시도하고자 하는 경우도 드문 일이 아니며, 이 모든 비트폭의 조합들로 인해 최근에는 그야말로 흔한 일이 되었다. HLS를 활용하면, C로 설계할 경우에는 코드를 재생성 할 수 있기 때문이다.

RTL 수준에 도달할 때쯤이면, 어떠한 변경이 이루어지든 레이아웃을 처음부터 다시 시작해야 할 가능성이 훨씬 더 커지게 된다.

상위 수준의 추상화 모델을 가지고 작업하게 되면 무엇보다도 IP를 보다 신속하게 작성할 수 있다. RTL에서 설계할 경우에는 모드를 하나 가감하거나 모델에서 뭔가를 변경하면 ‘그것으로 끝’이다.

HLS는 원래 하드웨어 검증용으로 설계된 설계 자동화 툴이다. 이 툴은 RTL보다 높은 추상화 수준을 사용한다.

케이던스가 자사 HLS 제품라인이 미치는 영향으로부터 추정한 바에 따르면 전반적인 설계 시간과 검증 비용을 약 25~50% 줄일 수 있는 잠재력을 가지고 있다고 한다. 시높시스(Synopsys)와 멘토(Mentor, a Siemens Business), 자일링스(Xilinx)도 독자적인 HLS 패키지를 판매하고 있다.

시높시스의 검증그룹 R&D 디렉터인 프라틱 마하잔(Pratik Mahajan)은 “가장 중요한 것은 부동소수점 장치를 작성하는 법”이라고 말한다.

칩을 교육에 사용할 때는 아마도 16비트 곱셈기와 32비트 덧셈기를 사용하고 싶을 것인데, 이는 C++에서 결정하는 편이 훨씬 쉽다. 소프트웨어 엔지니어들은 이를 알고 있으며, 상위수준 언어로 모델화 할 수 있다.

하지만 상위수준 합성은 1단계 RTL의 작성이라는 면에서는 좋지만 면적과 전력소비 면에서는 최상의 선택이 못 된다. 복잡한 연산을 위해서는 아직도 RTL을 수작업으로 코딩하고 있는 이유이기도 하다.

HLS 레이아웃도 RTL과 마찬가지로 테스트하고 검증할 수 있다. 이를 이용해 전력이나 타이밍 문제를 해결할 수 있으며, 이들은 텐서플로(TensorFlow)나 카페(Caffe)와 같은 프레임워크로 작성된 ML 추론 모델 정의를 읽을 수 있다.

이러한 문제 해결을 통해 디자이너는 작업부하를 칩으로, 칩을 작업부하로 최적화할 수 있다. 이는 또한 교육 결과를 데이터센터에서 처리해 추론 모델을 생성하는 동안에 가중치 부여나 강조 과정에서 의도하지 않은 변경이 이루어지지 않았는지 검증할 수 있게 해준다.

추론 모델은 네트워크의 가장자리에 있는 종단(EP) 장치의 크기에 관계없이 상대적인 혼돈 상태를 견뎌내야 한다.

멘토, 지멘스 비즈니스의 HLS 기술 전문가인 마이크 핑거로프(Mike Fingeroff)는 “추론 엔진을 구현할 때는 오리지널 네트워크 모델을 가지고 엣지 장치나 모바일 장치에서 실행하는 것이 중요하다”고 강조한다.
▲ 그림 1. 복잡한 컨벌루션 디자인에는 보다 높은 추상화 수준이 필요하다.
IC의 면적과 전력소비를 줄이되, 성능도 고려해야 하는데, 실시간 성능이 어느 정도 요구되는 자율주행 차량의 ADAS 같은 부문의 일부일 경우에는 특히 그렇다. 최상의 성능을 얻기 위해서는 하드웨어를 특정 네트워크에 맞게 조정하고 모델도 이에 기여하도록 최적화해야 한다는 설명이다.

중요한 것은 정확한 문제를 파악하는 것
HLS는 전력의 사용, 분배, 타이밍, 성능과 같은 칩 설계의 일반적인 해결과제를 최적화하기에 훌륭하다. 하지만, 그 진정한 가치는 관련 디자이너들이 다루기 어려울 수 있는 질문에 대답해줄 수 있다는 데 있다. 옵션은 많아도 표준과 모범사례는 별로 없는 ML의 경우에는 특히 그렇다.

HLS는 실험을 통해 어떤 것이 최고의 성능을 제공하는 지 알 수 있도록 해준다. 그것은 ASIC일 수도 있고 FPGA나 PE 배열일 수도 있다. 어쩌면 PE 배열이 가장 유연한 하드웨어 옵션일 수도 있다. 혹은, 어쩌면 네트워크 최상위 계층에 대해서만 융합 계층(fused layer) 아키텍처를 이용해 메모리 트래픽을 최적화할 수도 있을 것이다.

시행착오 방식은 칩 비즈니스 뿐만 아니라 기준도 개발비용도 높은 다른 모든 사업에 있어서도 솔루션 개발을 위한 가장 효율적인 접근방법은 아닐 것이다.

린리그룹(The Linley Group)이 지난해 2월 발표한 ‘딥러닝을 위한 프로세서 가이드(A Guide to Processors for Deep Learning)’ 보고서에 따르면, 2023년경에는 모든 신규 서버의 절반이 딥러닝 가속기(Deep Learning Accelerator, DLA)를 포함하게 될 것으로 보인다. 2022년에는 19억대의 클라이언트 장치들이 DLA를 탑재한 상태로 출하될 것으로 보고서는 전망하고 있다.

하지만 DLA가 그처럼 보편화된다면, ML 장치를 만들 때 시행착오 방식은 거의 불필요해지는 것일까? 성능을 높일수록 효율성도 높아지며, 더 많은 것을 할 수 있게 된다. 허나 제품만 제대로 동작한다면 비록 흐름이 극히 매끄럽지 않더라도 음성인식 등을 위한 수많은 틈새시장과 장치 및 분야들이 존재한다.

그러나 이러한 결정을 내리기 위해서는 때때로 설계 팀의 구조를 파고 들어야 한다. 각각의 기업에서 ML 애플리케이션을 개발하고 이를 실행할 장치를 설계하고자 소프트웨어/하드웨어 설계 팀을 구성할 경우, 최종적인 책임이 누구에게 있는 지 확인해 두는 것도 나쁘지 않은 생각이다.

중요한 점은 알고리즘이 칩을 정의한다는 사실이다. “중국에서 우리가 하려는 일에 대해 하드웨어 엔지니어와 한참을 얘기한 적이 있는데 그가 결정권자가 아니라는 걸 알게 된 적이 있다. 결정권자는 소프트웨어 설계자였던 것이다. 알고리즘이 칩을 정의하는 것이지, 칩이 알고리즘을 정의하는 것은 아님을 깨달은 후에야 모두 한 자리에 모인 자리에서 성과를 도출할 수 있었다”고 말한 아르테리스 IP(Arteris IP)의 마케팅 부사장인 커트 슐러(Kurt Shuler)의 비즈니스 사례로 우리는 이해할 수 있다.

물론, 소프트웨어 설계자가 항상 좋은 하드웨어 감각을 갖고 있는 것은 아니다. 슐러 또한 “우리가 겪은 또 다른 문제는 소프트웨어 설계자가 트랜지스터 수준까지 추상화해 내려가는 일을 잘 못할 수 있으며, 하드웨어 설계자도 소프트웨어 수준까지 추상화해 올라가는 일을 잘 못할 수도 있다는 것이었다. 말하자면, 이들에게 단계별로 잘 설명해줄 필요가 있다는 것이다”라고 말하기도 했다.

소프트웨어와 하드웨어의 긴밀한 통합 및 최적화를 고수하는 것도 개발 작업을 조정하는 좋은 방법일 수 있지만, 그것이 항상 성능에 대한 현실적인 요구를 반영하는 것은 아니다.

고객사가 해당 문제에 대해 생각해보도록, 하드웨어 설계자에게 해당 칩이 기대에 부응하지 못할 경우 어떤 일이 일어날지 묻기 보다는 이 칩을 제거하고 이를 애플리케이션에 대해 완전히 일반화 되어 있는 상용 추론 칩으로 대체할 경우 해당 장치에 어떤 영향이 미칠지 물어보는 것이 대안이 될 수도 있다.

“엣지에서는 초기에 아키텍처 상의 발견이 이루어지고 있는 것을 볼 수 있다. 이들은 어떤 알고리즘이 적합한 지 신속하게 알아내고자 하는데, 이는 대개 아키텍처를 살펴보는 것이다. 그 다음에는 FPGA나 ASIC 흐름을 이용하게 된다. HLS는 두 경우 모두에 사용될 수 있다.”

 

 

글 : 케빈 포가티(Kevin Fogarty) / 반도체산업 전문 자유기고가

 

[저작권자ⓒ IT비즈뉴스. 무단전재-재배포 금지]

[관련기사]

멘토, TSMC 5나노·7나노 공정기술 지원 솔루션 확대2018.10.19
한컴그룹·전주시·LX, 디지털트윈(DW) 기반 스마트시티 조성 ‘맞손’2019.03.22
3나노(nm) GAA PDK 배포한 삼성, “파운드리 경쟁력 강화 일환”2019.05.15
“미래 반도체시장, 미세공정기술 아닌 칩의 다양성에 좌우될 것”2019.06.26
정부, 시스템반도체·미래차에 3578억원 투입…내년도 R&D 예산안 확정2019.07.01
[그것을 알려주마] "삼성이 NPU 설계자산(IP) 개발에 나서는 진짜 이유"2019.07.05
차세대 메모리반도체 양산에서의 이슈, “균일성 보장하는 증착공정이 핵심”2019.07.18
‘십년 만에 최악’ 반도체시장, ‘무역분쟁’ 이슈로 공급체인 변화도 감지2019.07.24
네이버가 선택한 팹리스기업, “퓨리오사AI를 아십니까?”2019.08.14
인공지능(AI)이 반도체시장에 제공하는 기회, ‘ML+EDA는 트렌드 아닌 필수’2019.08.31
“설계-제조역량, 도전, 에코시스템…3박자 갖출 때 시스템반도체 성장할 것”2019.09.05
7나노(nm) AP ‘기린990 5G’ 공개한 화웨이, ‘5G 통합 SoC 상용화’ 타이틀 거머쥘까?2019.09.07
한컴MDS·다쏘시스템, 전자설계자동화(EDA) 툴 공급계약 체결2019.09.26
[단독] 자일링스, 머신러닝(ML) 라이브러리 수백 개…오픈소스로 푼다2019.10.02
유럽 파운드리 포럼 개최한 삼성, “폭넓은 파운드리 솔루션 제공할 것”2019.10.11
파운드리 생태계 강화하는 삼성, 美‘서 SAFE 포럼’ 개최2019.10.21
[그것을 알려주마] AI/ML 구현의 핵심 실리콘…“CPU, GPU, NPU와 FPGA, 그럼 IPU는 뭐야?”2020.02.05
음성으로 민원서류 자동 작성하는 AI도우미 나온다2020.02.12
인공지능(AI) 가속기의 생태계, 하드웨어 가속기의 개발속도를 높이기 위한 방법론2020.02.18
자일링스, ‘알비오(Alveo)’ 브랜드 단 스마트-NIC ‘U25’ 공개2020.03.05
머신러닝(ML) 구현에서 ‘상위수준합성(High Level Synthesis, HLS)’이 주목받는 이유 ①2020.03.30
엑스페리, 인공지능(AI) 추론칩 ‘엘고(Ergo)’ 공개…올해 2분기 양산 돌입2020.04.05
머신러닝(ML) 구현에서 ‘상위수준합성(High Level Synthesis, HLS)’이 주목받는 이유 ②2020.04.06
국내 독자기술로 개발된 AI칩 2종, 단계적 실증·상용화 추진2020.04.08
네이버, 통합 모델링 방식 적용한 음성인식 엔진 ‘네스트(NEST)’ 공개2020.04.13
“인공지능/머신러닝(AI/ML) 애플리케이션 개발에 FPGA를 활용한다면?”2020.04.16
[톡 with 스타트업] 퓨리오사AI(Furiosa AI)는 어.떻.게 유니콘을 꿈꾸고 있나?2020.04.28
시스템온칩(SoC) 설계를 위한 리셋 검증 방법론2020.04.28
가상머신 ‘임페라스(Imperas)’를 활용한 스마트카 소프트웨어(SW) 테스트 ②2020.05.04
자일링스, 글로벌 4개 대학에 가속컴퓨팅 클러스터(XACC) 구축2020.05.12
자일링스, 방사선 내성 갖춘 20나노(nm) 킨텍스 FPGA 출시2020.05.20
  • 글자크기
  • +
  • -
  • 인쇄
뉴스댓글 >

주요기사

+

많이 본 기사

마켓인사이트

+

컴퓨팅인사이트

+

스마트카

+

PHOTO NEWS