?이노그리드 클라우드연구센터?/?김명진 센터장


 

4차 산업혁명 시대 초입에 들어서면서 IT가 보편화되고 생성되는 데이터가 폭발적으로 증가해 빅데이터, AI, 머신러닝, 딥러닝 등의 기술이 이를 뒷받침하는 고성능 컴퓨팅(HPC: High Perfomance Computing) 인프라의 중요성이 높아지고 있다. 일반적으로 HPC는 다수의 컴퓨팅 자원을 한곳에 집중시켜 3D모델링, 시뮬레이션, AI연구 등을 비롯해 주식거래 및 금융 리스크 분석, 소비자 패턴 분석 등의 비즈니스를 위한 빅데이터 영역에 이르기 까지 다양한 분야에서 수요가 확대되고 있다.

본고에서는 HPC와 이를 이용한 클라우드 기술의 중요성을 인식하고 미래 산업 발전에 대응하기 위한 비전을 고찰한다. 2장에서는 HPC 클라우드를 알아보고, 3장에서는 HPC 클라우드 현황, 4장에서는 HPC 클라우드 서비스와 기술 동향에 대해 알아본다. 마지막 제 5장에서는 HPC 클라우드의 향후 발전 가능성에 대해 알아본다.

 




 

Ⅰ. HPC(High Perfomance Computing) 정의


HPC(High-Performance Computing)이란 일반적으로 고급 연산 문제를 풀기 위해 슈퍼컴퓨터 및 컴퓨터 클러스터를 사용하는 것으로 보통의 컴퓨터보다 연삭속도가 수백 배 이상 빠른 컴퓨터를 말한다. HPC 기술은 자동차, 선박, 금융권, 기상청 등 다양한 산업에서 활용이 되어 새로운 신산업을 만들었고 우리의 생활을 보다 윤택하게 만들어 주고 있으며 앞으로도 지속적인 발전 가능성을 갖추었다.
하지만, 최근 4차 산업혁명 기술인 빅데이터, 클라우드, AI 등의 발전으로 HPC는 더 이상 슈퍼컴퓨터의 의미에서 더 나아가 그리드 컴퓨팅 기술을 이용하는 고성능 컴퓨팅을 구현한 것을 말한다. 이와 같은 발전으로 국내 정부 정책도 HPC 기술의 발전을 위하여 적극적인 투자가 이루어지고 있으며, 이와 동시에 HPC 기술 공급 증가와 포럼 운영으로 기술 개발과 표준화를 통해 지속적인 발전을 이루고 있다. 또한, 4차 산업혁명으로 빅데이터, 클라우드, AI 등 다양한 기술들과 융합한 HPC 기술들이 나타났다. 이 기술들을 바탕으로 HPC 기술은 지속적 발전 가능성과 미래 시장에 대한 경쟁력을 갖추어 클라우드와 융합하여 미래 ICT 산업 기술 중 한 자리를 차지할 것이다.

[표 1] HPC 구성 및 개요


cloud_181112_image1

?출처 : 초고성능컴퓨터산업 발전전략, ETRI, 2014


 




 

Ⅱ. HPC 클라우드 (HPC as a Service) 정의


HPC 기술 발전에 따라 클라우드 컴퓨팅 환경과 융합한 기술인 HPC as Service가 나타났다. 클라우드 컴퓨팅이란 네트워크를 통해 원하는 때에 원하는 자원을 이용하고 사용한 만큼 비용을 지불하는 것이다. HPC 기술은 비용이 많이 들어가며 리소스 사용 요구가 증가하고 있다. 그러기 위해서는 지속적인 장비 구매를 해야 하는 번거로움이 있지만, 클라우드 서비스와 결합하게 되면서 번거로움이 사라지고 실질적으로 필요한 시점에서 필요한 만큼의 리소스만 받아 사용을 하며 사용한 만큼 비용을 지불하기에 비용 절감 효과가 발생한다. 또한, 수집된 데이터를 효율적으로 저장하고 분석할 수 있다는 이점을 바탕으로 HPC 기술과 클라우드 기술을 융합하여 보다 효율적인 시스템을 구축할 수 있으며 클라우드의 장점인 가용성, 확장성 등을 함께 갖추기 시작하면서 수요가 증가하고 있다.

[그림 1] HPC as a Service


cloud_181112_image2

 




 

Ⅲ. HPC 및 클라우드 국내·외 시장현황


HPC 시장은 최근 IT 시장에서 급성장하고 있는 분야 중 하나로 꼽히고 있다. 특히 AI가 주목받으면서 머신러닝, 딥러닝을 위한 HPC 솔루션이 가장 큰 성장세를 보이고 있다. 세계 HPC 시장은 2016년 356억 달러 시장 규모에서 2021년 439억 달러 시장규모로 성장할 것으로 예측되고, 특히 HPC 서비스 분야가 높은 성장률을 보이며 2016년 38억 달러 시장에서 2021년 42억 달러 시장 규모로 성장 할 것으로 예상 했다.
HPC 시장에서 가장 큰 비중을 차지하는 것은 서버, 저장장치, 네트워크 등 고성능 컴퓨터와 관련된 HW 시장으로 2016년 200억 달러 시장규모에서 2021년 255억 달러 시장규모로 성장이 예상된다.

[표 2] 전 세계 HPC 시장 전망


cloud_181112_image3


출처 : Intersect360 Research, HPC Market Update, ISC 17, 2017


 

국내 HPC 시장은 2016년 1조 231억 시장 규모에서 21년 1조 2,566억 시장 규모로 성장 할 것으로 예측 되고, 한국의 경우 고성능 컴퓨터 관련 HW 분야가 높은 성장률을 보여 16년 5,156억 원 시장에서 21년 6,496억 원 시장 규모로 성장 할 것으로 예상된다.

 

[표 3] 국내 HPC 시장 전망


cloud_181112_image4
*추정방법 : HPC Market Update, ISC 17(Intersect360 Research)의 세계시장 자료를 중심으로 IDC(2016)에서 나오는 서버, 저장장치, 시스템SW 등의 국제 국내 시장 비율을 적용하여 자체 추정함
또한, 국내 클라우드 시장은 지속적으로 성장하는 추세이며, 클라우드는 사물인터넷, 빅데이터 등 새로운 ICT 기술을 실현시킬 수 있는 핵심 인프라로 인식되면서 클라우드 시장이 성장하고 있다. 아마존, MS 등 세계 주요 선도 클라우드 선도 기업이 위치하고 있는 미국 시장 및 기업을 중심으로 시장을 주도 중이며, 적극적인 정부육성 의지와 기업의 투자를 추진하고 있는 중국 클라우드 시장이 급성장 하고 있다. 국내 클라우드 시장 규모는 2015년 7,664억원에서 2016년 1조 1,890억 2017년 1조 5,134 억으로 (기업 매출 기준) 전년대비 성장률 27.3%를 기록 하고 있다.

[그림 2] 국내 클라우드 시장 규모


cloud_181112_image5


출처 : 2017년 클라우드산업 실태조사 한국클라우드산업협회 2017. 12.


 

국외 클라우드 성장률은 가트너에 따르면 2019년 전세계 퍼블릭 클라우드 서비스 시장 규모는 2018년 1,758억 달러에서 17.3% 증가한 2,062억 달러에 이를 것으로 예상했다. 또한, 2018년에는 전년도의 1,453억 달러에서 21% 성장할 것으로 전망했다.




 

Ⅳ. HPC 클라우드 서비스 및 기술동향


4차산업혁 초입에 들어서면서 HPC 클라우드 서비스 및 관련기술은 사회 전 분야에 고성능 컴퓨팅 파워를 보편화하는데 일조 하고 있다. 일반적으로 HPC는 다수의 컴퓨팅 자원을 묶어 크고 복잡한 문제나 고급 연산 문제를 처리하는 시스템으로 HPC 클라우드는 고성능 컴퓨팅 자원을 클라우드 형태로 제공하는 일종의 HPC as a Service 로 볼 수 있다. HPC 클라우드를 제공하는 서비스로는 Amazon HPC, Microsoft Azure, Oracle Cloud, IBM Cloud 등이 있으며 4장에서는 HPC클라우드 기술동향과 국내?외 서비스현황을 서술한다.

1)TidalScale 하이퍼커널


TidalScale은 캘리포니아 산타 크루즈 대학교(University of California Santa Cruz)의 컴퓨터 과학 부교수이자 CTO인 Ike Nassi에 의해 2013년에 설립된 회사이다. TidalScale 의 핵심기술은 하이퍼커널(HyperKernel) 이라는 이름에서 알 수 있듯이, 마치 커다란 크기로 실행되는 것처럼 실행중인 어플리케이션에 하나의 거대한 리눅스 커널처럼 보이는 분산커널을 만드는 일종의 하이퍼바이저이다. 즉, 기존 가상화(Virtualization) 기술이 서버 내의 컴퓨팅 자원을 가상 머신에 분배해 쓰는 개념이었다면, 하이퍼커널 기술은 반대로 수많은 랙에 분산돼 있던 컴퓨팅 자원들을 하나로 통합하기 위한 역 하이퍼바이저(Inverse Hypervisor) 기술이라는게 TidalScale의 설명이다. TidalScale은 ‘SDS(Software Defined Servers)’개념을 토대로 다수 노드에 위치한 컴퓨팅 자원(CPU, 메모리, 스토리지, 네트워크 등 여러 노드의 모든 자원)을 ‘하이퍼커널(HyperKernel)’ 기술로 한데 모아, 인메모리 컴퓨팅 및 HPC에 보다 적합한 하나의 자원 풀(pool)로 구성한다는 것이 핵심 기술이다. 소프트웨어 정의 서버로 필요한 리소스 자원과 서버 스펙을 일치시키는 단일 가상 시스템에 여러 상용 시스템을 저장하여 데이터 센터가 온 프레미스(on-premise) 또는 클라우드(cloud) 방식에 상관없이 모든 데이터 세트에 맞게 서버를 바로 바꿀 수 있다.

[그림 3] TidalScale HyperKernel 기술


cloud_181112_image6


출처 : The next platform (The Dream Of Software Only Shared Memory Clusters)


 

뿐만 아니라, 하이퍼커널은 하드웨어와 게스트OS 사이에 위치하면서, 특허 받은 머신러닝 기술을 기반으로 CPU와 메모리 자원이 필요한 곳(VM)으로 이동하며, 동시에 마이크로초 단위로 최적화한다. 즉 새롭게 설계된 인터커넥션(Interconnection) 네트워크를 통해 데이터들이 이동하면서 머신러닝으로 시스템 성능이 점점 더 빨라지고 진화하는 것이 특징이다. 현재 오라클과 SAP 등의 기업이 TidalScale의 기술을 기반으로 클라우드 서비스를 제공 중이다.

2)Microsoft Azure


마이크로소프트 Azure는 클라우드 컴퓨팅 플랫폼으로 2010년을 시작으로 2011년과 2013년에 각각 PaaS, IaaS 서비스를 시작했다. 이후 지속적으로 발전하여 개인 및 고객에게 다양한 배치와 유형을 제공하고 IT 환경에 맞춤형 클라우드 플랫폼 서비스를 제공하고 있다. 또한, Azure는 다양한 오픈 플랫폼과 디바이스 지원 환경 서비스를 제공하고 안정적인 고객 서비스 지원으로 경쟁력을 갖추었다. 다양한 Compute 서비스, 데이터, 앱, 네트워크 서비스 등을 지원하고 이들을 웹에서 관리하도록 제공을 하고 있다.
애저(Azure)는 HPC 응용 프로그램 실행을 위해 컴퓨트 노드 코어를 수천개로 확장 및 온-프레미스 형태로 컴퓨트 자원을 확장하여 사용하는 방식으로 하이브리드 클라우드 형태로 사용하거나, 100% 클라우드 기본 솔루션으로 실행할 수 있는 HPC 클라우드 서비스를 제공하고 있다. 이 솔루션은 Azure 관리 서비스(Virtual Machine Scale Sets, Virtual Network, Storage)를 기반으로 서비스를 지원한다. 다음 그림 4는 애저(Azure)의 HPC 클라우드 클러스터 구성도이다.

[그림 4] HPC clusters deployed in the cloud


cloud_181112_image7

3)Amazon HPC


클라우드 시장의 공룡 AWS 는 클라우드 서비스 제공을 위한 tremendous 한 인프라와 다양한 기능 및 기술을 활용한 HPC 서비스를 2006년부터 제공하고 있다. AWS HPC는 수많은 옵션과 시나리오들을 제공하며 생명 과학, 금융 서비스 등 복잡하고 고성능 컴퓨팅 파워를 요구하거나, mission-critical한 여러 산업군의 어플리케이션을 위한 유연하고 강력한 인프라를 제공한다. 미국증권거래위원회가 페타 데이터 단위의 데이터를 다루어야하는 플랫폼을 구축해야했을 때에도 AWS HPC의 이러한 장점들 덕분에 6개월이라는 짧은 기간 내에 성공적으로 프로젝트를 수행할 수 있었다.
Amazon HPC 아키텍쳐중 “버스트(Burst) 라는 개념으로 온프레미스(on-premise) 환경에서 HPC 클러스터를 운용하고 있는 사용자가 Amazon VPC 에 요청하여 고성능 컴퓨팅 자원을 무제한으로 이용할 수 있다. 다음 그림 5는 AWS에서 가상으로 무제한의 컴퓨팅 용량을 제공하는 구성도 이다.

[그림 5] AWS에서 가상으로 무제한의 컴퓨팅 용량을 제공하는 구성도


cloud_181112_image8


 

또한, Amazon HPC 서비스는 사용자 인프라 및 클러스터를 모두 제공하는 구성으로 서비스도 가능하며, 다음 그림 6의 구성도와 같이 HPC 환경을 클라우드 형태로 서비스를 제공하고 있다.

[그림 6] AWS에서 사용자 인프라 및 클러스터를 모두 제공하는 구성도


cloud_181112_image9

4)OpenHPC


OpenHPC는 커뮤니티 기반 프로젝트로서 통합된 HPC 중심의 소프트웨어 모음을 제공한다. OpenHPC는 프로비저닝 도구, 자원관리자, I/O 라이브러리, 개발 도구 및 다양한 R&D 라이브러리와 같은 HPC 환경에서 일반적으로 사전 빌드 된 소프트웨어 구성 요소 모음을 제공하는 오픈소스 프로젝트이다. 다양한 Linux 배포 및 아키텍처를 지원하고 CentOS 7 및 SLES(SUSE Linux Enterprise Server) 12용 패키지 리포지토리를 제공한다. 이 프로젝트의 중요점은 누구도 OpenHPC 스택 전체를 설치 할 필요가 없다는 것에 있는데, 오히려 사용자는 HPC 요구와 관련된 구성 요소를 선택 할 수 있다는 장점이 있다.
OpenHPC v1.2 이상에는 x86_64 및 aarch64 (기술 미리보기) 용 빌드가 포함이 되어있으며, 제공된 패키지 외에도 OpenHPC 에는 다른 프로비저닝 시스템 (예:Warewulf, xCAT 등) 및 다른 리소스 관리자 (Slurm, PBS Professional) 에 대한 설치 안내서가 포함되어 있는게 특징이다. 또한, 이 기술을 중심으로 Ansible, Docker 기술 등을 융합하여 배포를 간편하게 하여 관리적인 측면에서 보다 효율적인 작업이 가능하다.




 

Ⅴ. HPC 클라우드의 미래


위에서 언급한 다양한 HPC 클라우드 서비스와 기술을 볼 때, 고성능 컴퓨팅 환경을 위한 클라우드 서비스 보편화가 멀지 않았다는 것을 확인할 수 있다. 하지만, 대기업은 HPC 클라우드 서비스를 혁신을 위해 적극적으로 활용하고 있지만 중소기업에는 아직 멀게만 느껴지는 상황이다. 국내뿐 아니라, HPC가 보편화 단계에 오른 미국의 경우도 마찬가지 이다. 미 제조공학센터(NCMS)에 따르면 직원수가 100명 미만인 미국 제조 업체의 8%만이 HPC를 활용하는 것으로 조사 되었다. 다만 이들 업체 중 절반 이상이 HPC의 지원을 받는다면 부품?완제품의 설계와 테스트를 대기업 수준 까지 수행할 수 있는 것으로 나타났다. 이러한 측면에서 볼 때 중소기업이 HPC를 활용할 수 있도록 국가적인 차원에서 HPC 클라우드 센터를 설립과 HPC 전문가를 양성하여 보다 쉽게 HPC에 접근할 수 있도록 접근성을 높여야 할 것이다. 또한 이미 기업 경쟁력은 HPC에 달려있다고 해도 과장이 아니다. 거의 모든 상품 개발이 HPC를 통한 모의 실험 과정을 거치기 때문에 이후의 공정과 설계를 최적화하고, 제조하는 과정에서 생길 수 있는 문제를 해결할 수 있게 되었다. 그래서 HPC 클라우드 기술을 중심으로 시뮬레이션 실험, AI, 금융권 등 다양한 분야에 현재보다 더 효율적인 시스템 운영을 할 수 있으며 비용 절감, 편리성, 자원 효율성을 갖추기에 더 많은 곳에서 HPC 기술을 클라우드 중심으로 돌아갈 것이다. 이에 HPC 클라우드 서비스를 지속적으로 제공하기 위해 전문가 양성과 지속적인 관심, 투자를 기반으로 발전을 이루어야 된다.




 

Ⅵ. 참고문헌


[1] The Dream Of Software Only Shared Memory Clusters, October 25, 2017 Timothy Prickett Morgan
[2] 2017년도 클라우드 산업 실태조사 결과 요약 보고서, 한국클라우드산업협회 2017. 12.
[3] HPC 산업구조 변화 분석, 한국전자통신연구원 미래전략연구소 기술경제연구본부 2017-14
[4] HPC Market Update, ISC17, Intersect360 RESEARCH, 2017. 06
[5] 고객 환경에 최적화된 오라클 클라우드 활용 사례, 한국 오라클, 2018. 04
[6] 범용 클라우드 기반의 CAE 플랫폼 구축 및 활용, 월간 계장기술, 2018. 03
[7] Dynamic, On-Demand Windows HPC Clusters On AWS, Amazon Web Service 2015. 08