The Importance and the Status of High Performance Parallel Computing Environment


▪ 빠른 성능의 슈퍼컴퓨터 시스템 하나를 보유했다고 해서, HPC 분야를 선도하는 것은 아니므로, 관련 분야의 원천기술의 확보가 중요
▪ 슈퍼컴퓨터 시스템의 기반을 갖추고, R&D를 수행할 수 있는 기반 조성 절실
▪ 앞으로 더 방대한 양의 데이터가 쏟아져 나오고, 산업과 사회 전반에 걸쳐 생산된 데이터를 분석하는 수많은 연산들이 필요로 할 것임

▪ Having one Super-Computer system with fast performance does not lead the HPC field, so it’s important to acquire the original technology in related fields.
▪ Based on Super-Computer system, there is an urgent need for a foundation for R&D.
▪ More massive data will be poured out in the future, and numerous operations will be needed to analyze the data produced throughout the industry and society.


■ 고성능 병렬컴퓨팅의 환경

  • IoT, 빅데이터, 인공지능 등 제4차 산업혁명 시대의 핵심 기술들은 서로 밀접하게 연관되어 있으며, 상호 간의 시너지 효과를 냄

- 빅데이터를 활용하여 학습률이 향상된 인공지능의 높은 성능은 다시금 인공지능을 세기의 관심사로 끌어올릴 수 있고, 그 바탕에는 고성능 병렬컴퓨팅 환경이 큰 역할을 했음

  • 최근에는 기술의 발달로 인해 계산을 위한 하드웨어의 성능이 향상되고 가격 또한 많이 저렴해지면서 상대적으로 성능이 좋은 컴퓨팅 자원의 대중화가 가능

- 과거의 인공지능은 학습할 데이터가 충분치 못했거나, 알고리즘을 학습시킬 만한 성능의 컴퓨팅 자원이 대중적이지 못했기 때문에 괄목할 만한 성과를 내지 못함

  • 고성능 컴퓨팅(HPC: High Performance Computing)은 대표적으로 슈퍼컴퓨터를 다루는 것을 지칭하며, 주로 직접적인 실험이 불가능한 자연현상을 시뮬레이션 하거나 예측하는 데 이용

- 슈퍼컴퓨터는 기상청에서 일기예보 제작, 또는 NASA와 같은 우주항공연구소에서 우주의 현상을 시뮬레이션 하는 등의 목적을 위해 국립 연구소나 기관에서 보유
- 슈퍼컴퓨터는 워낙 고가의 장비이며, 그 수량과 사용 목적이 한정되어 있었기 때문에, 종종 국가의 경쟁력을 대변하는 척도가 되기도 함
- 많은 선진국들은 경쟁국가보다 우월한 성능의 컴퓨팅 자원을 보유하기 위해 국가 차원의 전략을 세우고 막대한 투자를 진행

■ 전세계 고성능 병렬컴퓨팅의 현황

  • 미국은 HPC 분야의 세계 선두답게 2년 전부터 엑사스케일(Exa-Scale)1 컴퓨팅 프로젝트를 추진하며, 2020년까지 10억 달러를 투자할 계획임

- 미국은 중국과 스위스에 밀려 현재는 4위에 해당하는 단일 시스템을 보유하고 있지만, 세계의 전체 HPC 시스템의 비중을 보면 여전히 세계 1위임

  • 중국은 HPC 분야의 신흥강국으로 현재 세계 최고 수준의 슈퍼컴퓨터를 보유

- 중국은 2013년에 약 4,200억 원을 투자한 텐허-2(Tianhe-2)를 출시하며 전 세계 슈퍼컴퓨팅 성능 1위를 차지하였고, 작년 6월에는 자체기술로 출시한 슈퍼컴퓨터 선웨이 타이후라이트(Sunway Taihulight)가 성능 1위에 오르는 등 HPC 분야에 연간 1조 원 이상의 막대한 투자와 개발을 진행한 결과 강력한 컴퓨팅 환경을 보유
- 2017년 6월 기준으로 현재까지 중국의 선웨이 타이후라이트가 93.0 PetaFlop/s의 성능으로 1위를 지키고 있고, 그 뒤를 이어 33.8 PetaFlop/s 성능의 텐허-2가 2위를 차지
- [표]는 현재 세계 HPC 실측성능 순위 및 정보를 나타낸 것으로. 전세계 1위에서 10위권에 이르는 시스템들은 대부분 미국, 중국, 일본이 보유

[표] 세계 고성능 컴퓨팅(HPC) 성능 순위 및 정보

  • 과거 세계 2위 수준의 슈퍼컴퓨터 제조국이었던 일본은 1980년대 후반부터 국가 차원의 슈퍼컴퓨터 개발을 진행

- 2011년에는 K컴퓨터를 출시하며 세계 1위를 차지했고, 현재는 중국과 미국의 슈퍼컴퓨터들에 밀려 7위를 차지하고 있음
- 일본은 2018년에 195억 엔(한화 약 2,018억 원)을 투자한 인공지능 전용 슈퍼컴퓨터 ABCI(AI Bridging Cloud Infrastructure)를 출시할 예정

  • 유럽은 범유럽 차원의 HPC 생태계를 구성하고 서비스를 제공하는 목적으로 PRACE라는 프로젝트를 진행하고 있음

- 고성능 컴퓨팅 환경의 공동 활용체제로 시스템 운영을 위해 독일, 프랑스, 이탈리아, 스페인 등의 4개 주요국과 EU에서 4억 6천만 유로 이상의 금액을 지원
- 컴퓨팅 수준과 규모에 따라 티어(Tier) 등급을 나눠서 서비스를 제공하며 GPU 활용 및 오픈소스 프로젝트를 지원
- 특히, 중소기업의 경쟁력 향상을 위해 중소기업이 수행하려는 프로젝트에 적합한 HPC 환경 및 전문가 네트워킹을 제공

  • 캐나다는 컴퓨터 캐나다(Compute Canada)라는 이름으로 정부에서 관리하고 지원하는 컴퓨팅 플랫폼을 제공하여 자국의 학계, 연구계를 비롯하여 산업계의 R&D를 위한 계산 환경을 제공

- 컴퓨터 캐나다는 성능은 20 PetaByte/s 수준이며, 캐나다 혁신재단(CFI)으로부터 재정 지원을 받으며 현재 3,500개가 넘는 리서치 그룹과 1만 명의 연구진을 보유하고 있음
- 또한, 37개의 파트너 대학과 200개의 전문가 그룹을 형성하고 있으며, 5천 개가 넘는 저널 논문 외에도 수십 개의 특허와 스핀오프(spinoff) 실적 등을 보이고 있음

  • 우리나라는 지난 2014년부터 「국가 초고성능 컴퓨터 활용 및 육성에 관한 법률」이 시행 되면서, 차세대 슈퍼컴퓨터 도입과 HPC 기술력 확보를 위한 연구개발을 진행

- 금년에 제2차 국가 초고성능 컴퓨팅 육성계획을 수립하기 위한 조사 분석을 추진 중이며, 2020년까지 전체 990억 원의 재정을 투입하여 HPC 시스템을 구축하려는 계획을 검토 중
- 또한, 내년 상반기에는 한국과학기술정보연구원(KISTI)에서 25.7 PetaFlop/s 수준(이론성능)을 목표로 하는 HPC 시스템을 도입 및 운영을 목표
- 해당 목표는 2017년 6월에 집계된 각국의 HPC 시스템의 이론성능 기준으로 볼 때, 세계 5~6위권 안에 드는 계산 자원을 확보2

  • [그림 1]은 글로벌 HPC 시스템 개수 및 계산 성능 비율을 나타낸 것으로, 시스템의 숫자와 각각의 시스템의 성능을 모두 합친 계산 성능은 미국이 모두 1위 자리를 지키고 있음

- 중국은 미국 다음으로 슈퍼컴퓨팅 시스템 수 및 성능을 차지하고 있고, 일본은 3위에 해당함
- 한국의 경우 시스템은 1.6%(8개) 비율이며, 합산성능 수치는 전 세계 컴퓨팅의 1.1%(약 8.5 PetaFlop/s)를 차지하고 있음

[그림 1] 글로벌 HPC 시스템 및 성능 비율

  • 단일 시스템 성능 순위로 한국은 <표>에서 보이는 바와 같이 누리(Nuri)와 미리(Miri)가 2.3 PetaFlop/s의 동일한 성능으로 53~54위를 차지하고 있음

- 해당 시스템은 기상청에서 일기 예보를 측정하는 데 쓰이고 있고, 고성능 컴퓨팅 시스템은 그 규모와 비용 면에서 상당한 투자가 필요하기 때문에 국가가 운영하거나 국가의 지원을 받는 연구소 및 기관에서 보유하고 있음

  • 세계 HPC 성능 변화 추이는 [그림 2]에서 볼 수 있는데, 세계 1위와 500위의 성능 변화가 어느 정도 일정한 간격을 유지하면서 발전해 왔음을 알 수 있음

- 2017년 6월 기준으로 세계 500위는 1위와 약 216배의 성능 격차를 보이며, 약 10년 전 1위의 성능과 비슷한 것으로 나타남
- 글로벌 고성능 HPC 시스템은 그 성능이 매우 빠르게 향상되고 있음3

[그림 2] 세계 HPC 성능 변화

  • 위의 [표]에서도 나타나 있지만, 현시대의 슈퍼컴퓨터들은 모두 최소 수만 개 이상의 코어를 가지고 있음

- 현재 세계 1위인 선웨이 타이후라이트는 코어 수가 무려 1천만 개를 넘고, 2위인 텐허-2 또한 3백만 개 이상의 코어를 가지고 있음
- 고성능을 필요로 하는 고용량의 연산을 위해서는 계산을 할 수 있는 단위가 많을수록 유리하며‘, 집단의 힘’이 라는 개념은 컴퓨터월드에서도 마찬가지로 존재함

  • 병렬컴퓨팅은 많은 계산량이 필요한 어떤 문제를 해결하기 위해 여러 개의 계산 자원을 동시에 활용하는 것을 말함

- 다수의 프로세서(Multi-Core)를 갖는 컴퓨터나 네트워크로 연결되어 있는 컴퓨터 군집(Cluster), 또는 이 둘의 복합적인 형태로 구성된 시스템으로 병렬컴퓨팅을 구현할 수 있음
- 병렬컴퓨팅을 통해 문제를 병렬처리(Parallel Processing)하게 되면, 단일 머신(Single-Core)상에서 수행하는 것보다 빠른 시간 내에 문제를 해결할 수 있음
- 즉, 고성능의 병렬컴퓨팅 환경을 보유했다는 것은 보다 복잡하고 다양한 문제를 해결할 수 있는 능력을 갖추었다는 의미이며, 이것은 딥러닝처럼 수많은 학습을 거쳐 우수한 성능을 낼 수 있는 기술들에게는 더욱 중요함

■ 고성능 병렬컴퓨팅의 필요성

  • 제4차 산업혁명 시대의 도래와 함께 쏟아져 나올 데이터를 분석하는 데에 인공지능이 필요하고, 이를 제대로 활용하기 위해서는 잘 갖추어진 컴퓨팅 환경이 반드시 필요함

- 고성능 병렬컴퓨팅 환경을 구축하는 데에 성능이 아주 좋은 단일 프로세서(Single-Core)를 다수 사용하여 구축할 수도 있지만, 이는 곧 천문학적인 비용 부담으로 이어지므로, 또한 단일 프로세서로 고성능을 뽑아내는 것은 기술적으로도 사실상 한계에 이르렀음

  • 고성능 단일 프로세스의 개발은 크기의 한계 때문에 집적도를 향상시키기에 제한이 따르며, 또한 집적도를 향상시키더라도 발열 문제뿐만 아니라 각종 비용 상승의 문제를 야기함

- 계산하고자 하는 데이터의 처리 및 전송속도 또한 제약이 걸릴 수밖에 없으며, 이 때문에 근래에 CPU 제조사에서 출시하는 제품들은 클럭 스피드(Clock speed: Hz)를 올리는 것보다는, 코어 수를 늘리는 쪽으로 변화하고 있음

  • 따라서, 적당한 성능의 여러 코어를 병렬로 연결한 시스템은 고성능의 단일 코어를 갖춘 시스템보다 가격이 저렴하거나 같은 가격 대비 더 좋은 성능을 낼 수 있는 대안임

- 이는 시스템을 구축하는 데에 소요되는 단위 코어당 비용을 줄이며, 알파고처럼 병렬 연산에 특화된 알고리즘의 성능 향상을 상대적으로 저렴한 비용으로 이룰 수 있는 것임
- 적당한 성능의 병렬 코어 시스템은 대표적으로 GPU(그래픽 처리장치)가 있으며, 구글의 알파고는 GPU를 활용한 병렬컴퓨팅 환경에서 학습된 결과물임

  • GPU는 단일 고속연산보다는 다수의 코어에 의한 병렬 연산이 더 필요한 이미지 랜더링에 특화되어 있는 장치임

- GPU에는 수백~수천 개의 코어가 탑재되어 있는데, CPU의 프로세서(Core)보다는 낮은 성능이지만 계산용으로는 매우 준수하고, 값이 저렴해서 같은 비용 대비 훨씬 더 많은 수의 코어를 탑재하고 있음
- 또한, GPU의 병렬 시스템을 그래픽처리를 위한 목적이 아닌 다른 목적으로 활용하는 것을 GPGPU(General Purpose computation on GPU)라고 하는데, 일차로 비용절감의 효과와 더불어 가격 대비 고성능을 뽑아낼 수 있다는 점에 많은 연구진들이 적용하고 있는 기술임
- 최근에는 이 GPU를 활용하여 고성능의 컴퓨팅 환경을 구축하는 사례가 상당히 많이 늘고 있음

■ 시사점

  • 빠른 성능의 슈퍼컴퓨터 시스템 하나를 보유했다고 해서, HPC 분야를 선도하는 것은 아니므로, 관련 분야의 원천기술의 확보가 중요

- 중국의 현존 1위의 HPC 시스템은 자체기술 개발을 통해 구축되었는데, 이것은 상당한 진보이며 향후 글로벌 HPC 시장의 판도를 바꿀 수도 있는 일말의 가능성을 마련한 것과 같음
- 우리나라는 아직까지는 HPC 분야에서 추격국의 위치에 있지만, 선도국의 위치에 오르기 위해서는 장비의 확보 측면뿐만 아니라 시스템의 개발을 통한 원천기술의 확보가 정말 중요한 과제가 되어야 함
- HPC 시스템을 구축하기 위해 외국기업의 제품을 거액을 들여 사다 쓰는 것도 당장은 필요한 일이지만, 이는 결국 추격국의 위치를 벗어나기 힘든 상황을 유지할 뿐임

  • 슈퍼컴퓨터 시스템의 기반을 갖추고, R&D를 수행할 수 있는 기반 조성 절실

- 수많은 컴퓨팅 코어들을 병렬로 연결하고, 이들 간의 연동과 동기화를 다루는 시스템 소프트웨어를 만들어 HPC 시스템을 구축하는 일은 결코 만만한 작업이 아님
- 이러한 시스템을 개발하는 노하우를 갖추기 위해서는 많은 시행착오도 필요하고, 당장은 정부의 역할과 도움이 절실하게 필요한 영역
- 핵심적인 기술들에 집중적인 투자를 수행하고 R&D를 두려움 없이 수행할 수 있는 기반을 만들어 주어야 함

  • 앞으로 더 방대한 양의 데이터가 쏟아져 나오고, 산업과 사회 전반에 걸쳐 생산된 데이터를 분석하는 수많은 연산들이 필요로 할 것임

- 국가 차원의 고성능 컴퓨팅 환경을 갖추는 것은 좋은 열매를 맺기 위한 양질의 토양을 확보하는 것과도 같음
- 아무리 종자가 좋아도 척박한 땅에서는 자라기 힘들 듯, 제4차 산업혁명 시대를 맞이함을 넘어 선도하기 위한 꾸준히 준비해 가야 함


1 슈퍼컴퓨터의 성능을 나타내는 척도로 초당 100경(1018) 회의 부동소수점연산(Flops)을 수행할 수 있는 용량, 테라(Tera)의 10만 배, 페타(Peta)의 1천 배에 해당.
2 많은 경우에 있어서 HPC 시스템의 실측성능은 이론성능의 60~75% 수준이며, 이 격차를 줄이는 것이 기술력임.(※ 자세한 내용 참조 : 소프트웨어정책연구소, [이슈리포트 2016-013], 2017.01.)
3 [그림 2]의 세로축은 1눈금당 이전 수치의 10배씩 차이난다. 따라서 [그림 2]의 그래프는 세로축을 압축한 형태이며, 압축을 하지 않았다면 지수증가 형태를 보일 것이다.

 

 

병렬컴퓨팅 슈퍼컴퓨터 월간SW중심사회2017년9월