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위권에 이르는 시스템들은 대부분 미국, 중국, 일본이 보유
과거 세계 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)를 차지하고 있음
단일 시스템 성능 순위로 한국은 <표>에서 보이는 바와 같이 누리(Nuri)와 미리(Miri)가 2.3 PetaFlop/s의 동일한 성능으로 53~54위를 차지하고 있음
해당 시스템은 기상청에서 일기 예보를 측정하는 데 쓰이고 있고, 고성능 컴퓨팅 시스템은 그 규모와 비용 면에서 상당한 투자가 필요하기 때문에 국가가 운영하거나 국가의 지원을 받는 연구소 및 기관에서 보유하고 있음
세계 HPC 성능 변화 추이는 [그림 2]에서 볼 수 있는데, 세계 1위와 500위의 성능 변화가 어느 정도 일정한 간격을 유지하면서 발전해 왔음을 알 수 있음
2017년 6월 기준으로 세계 500위는 1위와 약 216배의 성능 격차를 보이며, 약 10년 전 1위의 성능과 비슷한 것으로 나타남
글로벌 고성능 HPC 시스템은 그 성능이 매우 빠르게 향상되고 있음3
위의 [표]에서도 나타나 있지만, 현시대의 슈퍼컴퓨터들은 모두 최소 수만 개 이상의 코어를 가지고 있음
현재 세계 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]의 그래프는 세로축을 압축한 형태이며, 압축을 하지 않았다면 지수증가 형태를 보일 것이다.