기존슈퍼컴퓨터분석을통한엑사스케일컴퓨팅시스템전망 Prospect of Exascale Computing System through Analysis of Supercomputers 박성규, 박기웅, 박규호 Sung Kyu Park, Ki-Woong Park, Kyu Ho Park (305-701) 대전광역시유성구대학로 291 KAIST 전기및전자공학과컴퓨터공학연구실 {skpark, woongbak, kpark}@core.kaist.ac.kr 요약 신약개발, 기상예측, 공학시뮬레이션등과학및공학분야에서주로활용되던슈퍼컴퓨팅은고객분석, 경제예측, 멀티미디어등활용범위가극대화되고있으며, 최근슈퍼컴퓨팅수요산업이증대됨에따라대규모컴퓨팅자원의충족을위해슈퍼컴퓨팅시스템개발의필요성이증가하고있다. 슈퍼컴퓨팅기술은단일기술이아니라프로세서, 메모리, 네트워크, 스토리지에이르기까지의첨단하드웨어를기반으로최고의성능을내기위한운영체제와계산라이브러리, 그리고그응용프로그램에이르는소프트웨어기술의총집합체로써각각의세부기술들은슈퍼컴퓨팅의실현에필수불가결한핵심요소라할수있다. 본논문에서는기존슈퍼컴퓨터기술분석을통해향후미래의고성능엑사스케일컴퓨팅시스템의구조및이를위한효율적인자원관리기술을전망하여, 슈퍼컴퓨팅기술개발정책및연구방향을제시한다. Abstract There is a growing need about high-performance computing system in order to support large-scale computing resources. Hige-performance computing technology consists of hardware components which are processors, interconnect, memory, network, and storage system and software components which are operating systems and applications. These technologies critically affect the advance of computing areas. In this paper, we establish a road map for exascale high-performance computing system by analyzing core technology trend and issues. 키워드 : 엑사스케일시스템, 슈퍼컴퓨터, 매니코어, 차세대비휘발성메모리, 자원관리 Keyword: Exascale Computing System, Supercomputer, Manycore, Non-Volatile Memory, Resource Management 논문투고일자 : 2012. 01. 13 심사일자 : 2012. 01. 27 게재확정일자 : 2012. 02. 21 52
1. 서론 최근슈퍼컴퓨팅수요산업이증대됨에따라대규모컴퓨팅자원의충족을위해슈퍼컴퓨팅시스템개발의필요성이증가하고있다 [1]. 신약개발, 기상예측, 공학시뮬레이션등과학및공학분야의전유물로인식되어왔던과거와달리, 최근들어슈퍼컴퓨팅은고객분석, 경제예측, 멀티미디어등활용범위가극대화되고있는것이다. 이와같은슈퍼컴퓨팅기술은단일기술이아니라프로세서, 인터커넥팅, 메모리, 네트워크, 스토리지에이르기까지의첨단하드웨어를기반으로최고의성능을내기위한운영체제와계산라이브러리, 그리고그응용프로그램에이르는소프트웨어기술의총집합체로써각각의세부기술들은컴퓨팅분야의발전에크게영향을미치고있다. 이뿐만아니라고성능컴퓨팅기술은유전자분석, 지진분석, 기상분석등의기초과학분야의연구에서부터산업에서필요한신약개발, 자동차또는비행체모의 실험, 고객분석, 경제예측, 멀티미디어등의대규모시뮬레이션에이르기까지의많은응용에적용함으로써이익을얻을수있어서타기술발전에크게이바지할수있는잠재력을가지고있다. 고성능컴퓨팅기술을확보하기위한장기적인안목의연구투자를비롯하여컴퓨팅센터를구축하고유지하기위한막대한비용을감당하기위해서는기본적으로국가단위의지원이필요한데, 이미국외의경우고성능컴퓨팅시스템의높은시장성을인식하여이를위한자원관리및분배를위한연구가진행되고있다. 세계 500 위안의슈퍼컴퓨터보유국가중미국이총 225 개로가장많이보유하고있으며, 중국이 61개, 독일이 30개, 영국이 27개, 일본이 26개의슈퍼컴퓨터를보유중에있다 [2]. 이에반해국내기술은세계적인기술에비해상당히뒤떨어져있다. < 표 1> 에서알수있듯이한국은세계 500위안의슈 Rank Site Manufacturer Computer Country Cores 1 2 3 4 5 RIKEN Advanced Institute for Computational Science National Supercomputing Center in Tianjin Oak Ridge National Laboratory National Supercomputing Centre in Shenzhen (NSCS) GSIC, Tokyo Institute of Technology Fujitsu NUDT Cray Dawning NEC/HP 6 DOE/NNSA/LANL/SNL Cray 7 NASA/Ames Research Center/NAS SGI 8 DOE/SC/LBNL/NERSC Cray 9 Commissariat a l'energieatomique (CEA) Bull 10 DOE/NNSA/LANL IBM 20 21 26 423 Korea Meteorological Administration Korea Meteorological Administration KISTI Supercomputing Center National Fusion Research Institute < 표 1> 2011 년 6 월기준 Top 10 슈퍼컴퓨터및국내슈퍼컴퓨터보유현황 K Computer SPARC64 VIIIfx 2.0GHz, Tofu Tianhe-1A NUDT TH MPP, Xeon 6C, Nvidia Jaguar Cray XT5, HC 2.6 GHz Nebulae TC3600 Blade, Intel X5650, Nvidia TSUBAME-2 HP ProLiant, Xeon 6C, Nvidia Cielo Cray XE6, 8C 2.4GHz Pleiades SGI Altix ICE 8200EX/8400EX Hopper Cray XE6, 6C 2.1 GHz Tera 100 Bull bullx super-node S6010/S6030 Roadrunner BladeCenter QS22/LS21 Rmax (Pflops) Power (MW) Japan 548,352 8.162 9.90 China 186,368 2.566 4.04 USA 224,162 1.759 6.95 China 120,640 1.271 2.58 Japan 73,278 1.192 1.40 USA 142,272 1.110 3.98 USA 111,104 1.088 4.10 USA 153,408 1.054 2.91 France 138,368 1.050 4.59 USA 122,400 1.042 2.34 Cray Cray XE6 12 core 2.1 GHz Korea 45,120 0.3164 20 Cray Cray XE6 12 core 2.1 GHz Korea 45,120 0.3164 21 Oracle HP Sun Blade x6048, X6275 Sun HPC Stack Linux Edition HP BL685cG7, Opteron 12C, 2.2 GHz, InfiniBand Korea 26,232 0.2748 1.276 Korea 6,912 0.0432 53
퍼컴퓨터중 4개를보유중에있으나이슈퍼컴퓨터들역시기존해외의슈퍼컴퓨터관련기술들을그대로들여와구축하고적용하는수준에머물러있으며, 현재최고수준의시스템에비해성능이수십분의일에도미치지못하는실정이다. 본논문에서는세계 Top3 슈퍼컴퓨터의구조및자원관리기법의분석을통해향후미래의고성능엑사스케일컴퓨팅시스템의구조및자원관리방법을전망할것이다. 또한현재활발하게개발중인이기종매니코어프로세서, 3D-Stacked 메모리, 및차세대비휘발성메모리가엑사스케일컴퓨팅시스템에어떻게적용이될수있으며, 이에대한자원관리방법에대한논의가이루어질것이다. 본논문은 2장에서세계 Top 3 슈퍼컴퓨터에대한분석을하고, 3장에서는엑사스케일컴퓨팅시스템의개발이슈에관해정리를할것이다. 4장및 5장에서는엑사스케일컴퓨팅시스템의구조및자원관리방법에관해전망을하고, 마지막 6장에서결론을끝으로논문을마무리할것이다. ( 그림 1) K Computer 의 Tofu 연결망구조 K Computer 는그림 1에서보이는바와같이 Tofu 라고불리는연결망구조를사용하여구성이되어있다. Tofu 는 3D 토러스구조를바탕으로하고있으며, 총 6차원구조로써, x, y, z, a, b, c 의좌표를사용해서각노드를선택하도록하였다. 각컴퓨팅노드는 ICC (Interconnect controller) 를가지고있고, ICC 는총 10개의링크를가지고 6차원토러스구조를형성한다. 이링크는 6개의 3D 토러스링크와 4개의 tofu 유닛의링크로구성이되고, 각링크는최대 10GB/s 의대역폭을가지고, 100GB/s 의처리속도를보인다. 2. Top 3 슈퍼컴퓨터분석 2.1 K Computer [3] 일본 Fujitsu 사에서개발한 K Computer는 2011 년 6월기준세계에서가장빠른슈퍼컴퓨터이다. K Computer는총 68,644개의 Fujitsu SPARC64 VIIIfx 프로세서로이루어져있고, 각프로세서는 2 GHz 로동작하는 8개의코어로구성이되어총 549,152개의코어로구성이된다. 프로세서의성능향상을위해각프로세서에 256 개의부동소수점레지스터를추가하고, SIMD (Single Instruction Multiple Data) 명령어집합을추가하였다. 또한고속, 고정밀의삼각함수연산을위한특수명령어집합을추가하여성능을최적화시키기위해노력하였다. 이를통해 K Computer는총 8.162 PFLOPS 의성능을보여세계에서가장빠른컴퓨터가되었다. 또한수냉식쿨링을통해 58W 의저전력설계를달성하였다. Tianhe-1A의 0.64GF/W 와비교해서 0.83GF/W 로단위전력당성능이더좋은편이다. ( 그림 2) Fujitsu Exabyte 파일시스템 K Computer 의스토리지시스템은 ( 그림 2) 에서보이는바와같이 FEFS (Fujitsu Exabyte File System) 이라는분산파일시스템을사용하고, Lustre 파일시스템을기반으로구성된다. FEFS 는 100PB에서 1EB 정도의매우큰용량의파일과단일스트림으로는 GB/s, 병렬스트림으로는 TB/s 의처리속도및높은신뢰성과활용성을목적으로설계되었다. FEFS 는글로벌파일시스템과로컬파일시스템으로구분하여사용이되는데, 로컬파일시스템의경우 /work 폴더에마운트되고, core 에서처리되는태스크에맞춰진고속의파일시스템으로사용된다. 이 54
논 문 한국차세대컴퓨팅학회 논문지 2012년 2월 2.2 Tianhe-1A [4] 는 컴퓨팅 노드를 위하여 배타적 용도로 사용이 된다. 글로벌 파일 시스템의 경우는 /data 폴더에 마운트 되 어 사용되고, 공유를 목적으로 고용량과 중복성을 가 Tianhe-1A는 중국 NUDT에서 개발한 슈퍼컴퓨 터로 현재 슈퍼컴퓨터 랭킹 2위에 위치하고 있다. Tianhe-1A는 14,336개의 Intel Xeon X5670 프로 진 파일 시스템으로 구성되어 많은 서버 및 시스템과 공유가 될 수 있다. K Computer의 소프트웨어 구조는 그림 3에서 보 이는 바와 같이 리눅스 기반의 기반 운영체제를 기반 으로 관리 모듈, 고성능 파일시스템, 컴파일러 내부 세서와 2,048개 FT-1000 CPU, 7,168개의 Nvidia Tesla M2050 GPGPU로 구성이 된다. 각 프로세서 는 2.93 GHz로 동작하는 6개의 코어로 구성이 되고, 총 86,016개의 코어로 구성이 된다. 각 GPU는 1.15 모듈이 적재가 되며, 중앙 관리 시스템을 통해 통제를 받는 구조를 취한다. GHz로 동작하는 448개의 코어로 구성이 되고, 총 3,211,264개의 GPU 코어로 구성이 된다. 각 컴퓨팅 노드는 2개의 Intel CPU와 1개의 NVIDIA GPU로 구성이 되고, 각 서비스 노드는 2개의 FT-1000 CPU로 구성이 된다. Tianhe-1A는 이기종의 프로세 서와 customized 프로세서를 활용하여 총 2.57 PFLOPS의 성능을 보인다. 그림 5에서 보이는 것처 럼 성능 향상을 위해 자체적으로 멀티코어 CPU를 개 발하고, 대규모 interconnection network에서 통신 latency를 줄이기 위해 Routing Chip을 개발하였다. (그림 3) K Computer의 소프트웨어 아키텍쳐 K Computer는 계층적 프로그래밍 모델을 통해 태 스크 수행의 효율성을 극대화하고 있다. (그림 4)에 서 보이는 바와 같이 Front End 계층에서는 유저 프 로그래밍 환경을 위한 IDE 인터페이스를 제공하고 전 용 디버깅 파티션인 인터랙티비브 디버거를 제공한다, Backend 계층은 샘플 데이터 프로파일러 및 튜닝 도구를 제공하고 복수개의 태스크에 대한 디버깅 파 티셔닝을 제공하고 각 실행 상황을 인피니밴드의 고 속 채널을 통해 Front End계층에 전달해 주도록 함으 로서 디버깅 용이성 제공한다. (그림 5) Tianhe-1A의 CPU 및 연결망 칩 구조도 (그림 6) Fat Tree 기반 연결망 Tianhe-1A는 (그림 6)에서 보이는 것처럼 Fat Tree 기반의 연결망을 사용을 한다. 이는 토러스 구 조보다 높은 성능을 보이고, 운용성 및 가용성 측면에 (그림 4) K Computer의 프로그래밍 모델 55
서뛰어나지만확장성이떨어진다는단점을가지고있다. 각링크의연결은 NUDT 에서제작한 High- Radix Routing Chip 을사용하고, 각채널은 20 GBps 의성능을보인다. Tianhe-1A의스토리지시스템은 Lustre 파일시스템기반으로구성이되고, 6개의 I/O 관리노드와 128개의스토리지노드로구성이된다. 스토리지시스템과컴퓨팅시스템의연결은 Tianhe-1에서는 InfiniBand를사용하였으나, Tianhe-1A에서는 High -Radix Network Routing Chip을사용하고 opticelectronic hybrid fat tree network으로구성하였다. ( 그림 8) Tianhe-1A 프로그래밍모델 Tianhe-1A의가장큰특징은 GPU 기반의가속과기능이포함되어있다는것이다. 따라서 GPU 내부의 SIMD 엔진을통해주어진태스크의병렬화를극대화해야한다. 이를위해 OpenMP기반프로그래밍환경을제공하여복수개의쓰레드들의효율적인실행을가능하게하였고, 각각의물리적코어는 TH-1 이라불리는자체적인내부네트워크로통신을가능하게하여동기화및내부데이터통신의속도를극대화시켰다. 2.3 Jaguar [5] ( 그림 7) Tianhe-1A 소프트웨어아키텍쳐 Tianhe-1A 소프트웨어아키텍쳐는 ( 그림 7) 에서보이는바와같이병렬 ( 클러스터 ) 형태의운영체제를기반으로하고있으며, 각커널에는통신, Security Isolation, 자원관리, 파일시스템등의내부모듈을탑재하고있다. 운영체제를기반으로 3개의주요컴포넌트가적재가되는데, 컴파일러시스템은 OpenMP 를기반으로다양한언어를한의통합된프레임웍으로컴파일을하고최적화하는기능을담당하고, 개발환경시스템은병렬적인디버깅모듈과, 성능분석및과학계산용라이브러리를통해주어진태스크의효율적인처리를위한모듈탑재하였다. 마지막으로시각화시스템은각컴퓨터노드간의상방통신및병렬파일시스템의효율적인데이터통신및공유를위한계층이다. Jaguar 는미국 Cray 사에서만든슈퍼컴퓨터로써현재슈퍼컴퓨터랭킹 3위에위치하고있다. Jaguar 는 45,203개의 AMD Opteron 2356 프로세서로구성이되고, 각프로세서는 2.3 GHz 로동작하는 4개의코어로구성이되어, 총 180,832개의코어로구성이된다. 각코어마다 128 KB L1 캐쉬와 512 KB 크기의 L2 캐시로구성이되고, 한프로세서내의 4개의코어는 2 MB 크기의 L3 캐쉬를공유한다. 이를통해총 1.64 PFLOPS 의성능을보인다. Jaguar 의연결망은그림 9에서보이는것처럼 SeaStar 라고불리는구조를사용한다. SeaStar Router는 6개의 LCB (Link Control Block) 과 2개의 HyperTransport 링크들로구성이됨. 각 LCB 는최대 9.6 GBps 의처리속도를보여준다. 스토리지시스템은 ( 그림 10) 에서보이는바와같이 Spider 라는파일시스템을사용하는데, 이역시 Lustre 파일시스템을기반으로구성된대용량스토 56
Jaguar 의소프트웨어아키텍쳐는 ( 그림 11) 에서보이는바와같이 Cray Linux Environment(CLE) 로구성이된다. 이는크고복잡한어플리케이션실행및 240,000 개코어이상스케일가능하도록리눅스기반의 OS 디자인하였고, 높은확장성을가진사용자어플리케이션으로 Lightweight 모드에서동작하고, OS 가어플리케이션의확장을방해하지않는다. ( 그림 9) SeaStar Router 구조 리지클러스터이다. SAN 기반의객체기반스토리지로서 13,440 개의 1 TB SATA 디스크를사용하여 RAID 6로구성되어, 총 10 PB 이상의가용용량을제공한다. 특징으로는 Metadata 를 2대의 LSI XBB2 디스크어레이에별도로저장하고, 데이터들은 192 개의 Object Storage Server (OSS) 를통하여접근되며, 각 OSS 는 1.25 GB/s I/O 대역폭을제공한다. ( 그림 11) Cray Linux Environment (CLE) Jaguar 의프로그래밍모델은공유메모리다중처리프로그래밍 API 인 OpenMP 를수정하여사용한다. Node 를유저들을위한어플리케이션의 visualization 을담당하는부분과연산을위한부분, 파일시스템을관리하는부분으로나누어해당역할에맞추어 OS를재구성하였다. 마지막으로각 Node 별로담당역할에최적화시키기위해리눅스기반의별도의 OS 를구현하여탑재하였다. 3. 엑사스케일컴퓨팅시스템개발이슈 ( 그림 10) Spier 파일시스템 ( 그림 12) Potential System Architecture Targets in USA [7] 57
( 그림 12) 에서알수있듯이현재슈퍼컴퓨팅발전속도에미루어보아엑사스케일시스템은 2018년에서 2020년사이에달성될것으로전망하고있다. 엑사스케일시스템을달성하기위한중요한이슈가저전력, 고성능, 고신뢰성이다. 본절에서는이를달성하기위한개발이슈들을살펴볼것이다. 3.1 저전력설계엑사스케일의연산속도를가지기위하서는많은컴퓨팅노드들의집합이필요하여컴퓨팅연산에소모되는전력은비약적으로증가한다. 2006년인텔사의컴퓨터코어의단일명령어수행당전력소모량은 10000 pj 이며, 이코어로엑사스케일급의컴퓨터를만들경우연간 10 BW 를소모하게될것이며, 추정치 10B$ 를매년소모하게될것이다. 크기가큰컴퓨터일수록대부분의전력소모는캐쉬, 메모리, 디스크들사이의리모트데이터전송에서발생하게되므로, 리모트데이터전송을최소화하는것이핵심기술로요구된다. 따라서현재까지의컴퓨터회로의초점은연산속도에초점이맞춰졌던것에반하여앞으로의회로의디자인은전력소모를최소화하는방향으로맞춰줘야한다. 칩내의통신회로를구성하거나, 새로운메모리구조등이그예가될것이다. 데이터전송에사용되는전류량에서도가장효율적인대역폭을찾아야한다. 최근연구동향을살펴보면, 컴퓨터에공급되는전압을반도체의문턱전압에맞추어적용시키는기술연구가진행되고있다. 이기술을사용하면전력의소모량을줄일수있지만, 연산과정중발생되는하드웨어적지연이 5 배정도더길어지기때문에이문제를해결해나가는것이필요하다. 또한효율적인파워사용을위해파워소모량모니터링관련기술이활발하게개발이되고있고, 각단계에서의 power convention loss를줄이는노력이계속해서이루어지고있다. 또한 HVAC (Heating, Ventilating, and Air Conditioning) 관련개선노력이저전력달성을위해이루어지고있다. 3.2 고성능디자인엑사스케일컴퓨팅시스템은컴퓨팅자원들을병 렬화하여최대한의성능을얻고자하는시스템으로, 현재구축되어있는슈퍼컴퓨팅의 1000배까지의용량및성능증대를목표로하고있다. 이를위해프로세서개발에있어서는현재단일코어당클럭속도증가에대한한계로인해, 수백개의코어를한칩내에집적한매니코어형태의하드웨어기술로개발이되고있다 [8]. 또한, CPU의집적에의한성능향상이아닌 GPU 의집적에의한성능향상을통해더높은성능을보다적은파워를소모하면서사용하고자하는노력이이루어지고있다. 메모리성능에는대역폭과지연시간의두가지이슈가있다. 상용 DRAM 은대역폭향상에초점을맞추고있어지연시간에서는성능저하가일어나는문제가발생한다 [9]. 실제 DRAM 이 DDR 에서 DDR2, DDR3 로발전함에따라대역폭을증가시키기위해더복잡한논리회로를사용하게되었고, 이에따라지연시간이함께증가하는결과가나타났다. 이는지연시간뿐만아니라추가논리회로에의한전력문제와공간효율성문제도야기시킨다. 엑사스케일시스템에서는전력과공간사용을감소시키면서성능을향상시키는방법이요구되는데, 입출력파이프라인의논리회로의간소화, 입출력버스넓이증가, 혹은반도체소자의성능향상이필요하다. DRAM 프로세스는메모리누수를줄이고생산성을증가시키는방향으로최적화되고있다. 하지만메모리누수를줄이기위한반도체소자는고성능을위해설계된반도체소자와다소성능차이가있다. 또한비용절감을위해핀개수를제한하는경우가많고, 이는같은양의데이터를전송하는데필요한시간을늘리고전력소모를증가시키고있다. 따라서엑사스케일시스템에서의메인메모리구성을위해메모리구조의변경및이를위한관리가필요하다. 디스크의데이터전송속도자체는꾸준히증가하는추세이나, 디스크상에서데이터를찾는횟수나찾는속도에의해그성능이상당히감소하며, 크기가작은데이터의입출력이일어날때그감소폭은더커지고있다. 결국엑사스케일급컴퓨터에서도데이터찾는시간을줄일필요가있다 [9]. 엑사스케일시스템의성능에있어서이슈가되는부분은각자원들의개별적성능최대화와더불어, 수 58
많은자원들을어떻게 Scalable 하게사용할수있을것인가이다. 실제로각자원컴포넌트들의성능최대화는하드웨어와밀접한관련이있으며, Scalable 한시스템의구현은소프트웨어적으로디자인되어야할것이다. 3.3 고신뢰성시스템구축기존의낮은단계의컴퓨팅시스템에서는찾을수없던희박한확률의에러및실패들이수많은노드를사용하는엑사스케일컴퓨팅시스템에서는매번발생하는이벤트가될수있다. 엑사스케일급시스템에서이러한시스템인터럽트가발생하는현상은더욱가중될것이므로, 각종시스템에러에대한관리는시스템가용성및내성에있어서매우중요한이슈가될것이다 [9]. 엑사스케일시스템은매우많은수의컴퓨팅자원을기반으로이루어져있으며, 이들이모여큰규모의네트워킹을구성하고있고, 이러한자원들이소프트웨어적으로관리가되어야하는시스템이다. 따라서, 여러영역및레이어에걸쳐서에러를발생시키는가변적인원인이존재한다. 엑사스케일급슈퍼컴퓨팅시스템에서예상되는에러의원인및발생위치는수백만에서수십억개에달하는공간적메모리및디스크의하드웨어상에러와, 에이징에따른시간적하드웨어에러, 같은하드웨어서킷사이에서도존재하는시공간적에러, 전력감소를위한저전력화정책에따른에러, 데이터트랜스미션시의비트에러, 동시수행연산능력의증가로인한데드락문제등이있다. 에러특성에따른구분으로는시스템이멈추거나고장나도록하는영구적인에러, 복구가능하거나짧은시간동안에는나타나는트랜지언트에러, 시스템멈춤이나고장은없으나시뮬레이션및계산에 Corruption 을발생시키는발견되지않은에러등이존재한다. 4. 엑사스케일컴퓨팅시스템구조전망 4.1 프로세서구조전망 단일코어당클럭속도증가에대한한계로인해수백개의코어를집적한매니코어형태의하드웨어 기술이개발되고있다. 칩내부코어수가증가하게될것이며, 그림 7의인텔샌디브릿지와같이 CPU 만이아닌 GPU 가결합된이기종의프로세서가차세대고성능혼합형시스템에서사용될것으로전망된다. 또한코어간연결에있어서확장성, 적은파워소모, 성능향상을위해 Router 기반으로연결망이이루어질것으로보인다. ( 그림 13) 인텔샌디브릿지내부구조 [10] 4.2 메인메모리구조전망차세대고성능컴퓨팅시스템의메인메모리구조는그림 8과같이계층적메인메모리구조가될것이다. 계층적메인메모리는 3D-Stacked 메모리 [11] 와 DRAM 및차세대비휘발성메모리 [12][13] 로구성이되어있으며이구조구성을통해메인메모리접근속도를증가시키고고성능시스템에맞는대용량메모리구성이가능하다. 계층적메인메모리는 M1, M2, M3 메모리로구성이되어있으며, M1은 on-chip 메모리로 3D stacked 메모리로구성이되고, 빠른접근속도를보이는특성을가지고있다. M2 는 on-board 메모리로기존메인메모리역할을하며차세대비휘발성메모리와함께하이브리드메모리로구성이가능하다. M3 는 off-board 메모리로 PCI-e 인터페이를통해메모리용량을확장시켜대용량메모리구성이가능하도록한다. 차세대비휘발성메모리는메인메모리와스토리지로동시에사용이가능하다. 4.3 스토리지시스템구조전망현재파일시스템개발동향은 Lustre 파일시스템기반으로고성능컴퓨팅시스템파일시스템이구축되 59
고있다. Lustre 파일시스템은분산, 병렬, 클러스터파일시스템으로객체저장단위및병렬 I/O 를지원한다. 현재 Top 100 슈퍼컴퓨터중 65개의슈퍼컴퓨터가사용중이며, Top 10에서는 8개의슈퍼컴퓨터가이를사용한다. 차세대고성능슈퍼컴퓨팅시스템에서는새로운스토리지구조에맞는파일시스템의수정이필요하다. 우선각노드당로컬파일시스템이존재하고, Lustre 파일시스템기반의글로벌파일시스템이존재하는멀티레벨파일시스템이사용될것이다. 또한 InfiniBand 혹은고성능상호연결망을통한 I/O 연결이이루어질것이고, 차세대비휘발성메모리역시스토리지로사용될수있기때문에이를고려한파일시스템의메타데이터관리가필요할것이다. 또한엑사스케일에서는시스템의내성이중요하기때문에스토리지시스템에서도에러가존재해도시스템이문제없이진행될수있도록디자인이필요하다. 용될것으로전망된다 [14]. InfiniBand 는 P2P 방식으로장비와장비간의연결을지원하고, 현재 4X 속도로 10G/20G 까지지원된다. 특징으로는모듈타입으로 giga, SAN 등의기존네트워크와통합가능하고, RDMA (Remote Direct Memory Access) 를지원하기때문에 CPU 오버헤드를감소시킨다. 또한기존의 MPI 지원을하는특징을가지고있다. 현재 Top 100 슈퍼컴퓨터에서도 InifiBand가주로사용되고있고, 또한사용이증가되는추세이기때문에고성능컴퓨팅시스템에서의연결망에있어서보다발전된 InfiniBand 가주로활용될것으로전망된다. 5. 엑사스케일컴퓨팅시스템자원관리전망 ( 그림 15) 컴퓨팅노드의경량화된 Linux ( 그림 14) 계층적메인메모리구조 4.4 슈퍼컴퓨터의연결망구조의전망기존병렬버스연결은하나의장비가많은대역폭을소모하면다른장비의사용이어렵고계층적스위치구조의오버헤드가존재한다. 따라서고성능혼합형컴퓨팅시스템연결에있어서는 InfiniBand 가사 ( 그림 16) 서비스노드의 customized Linux 5.1 Operating System (OS) 기존고성능컴퓨팅시스템을위한 OS 개발동향은컴퓨팅노드와서비스노드로나뉜다. 그림 15 에서보이는바와같이컴퓨팅노드에는경량화된 Linux 를사용하여 OS 가응용프로그램실행에있어서간섭을안하도록하였다. 커널에는최소한의기능만을구 60
현하고, 기존의커널기능을유저영역에서실행을시킴으로써커널오버헤드를줄일수있고, 신뢰성을높일수있게된다. ( 그림 16) 에서보이는바와같이서비스노드에서는 Customized Linux 를사용하여각컴퓨팅노드로태스크를분배하는역할을담당하게될것이다. 태스크를분배하기전에모델링과시뮬레이션을통해최적화된자원분배정책을정하여성능을최적화시키는역할을하게될것이다. 차세대고성능혼합형시스템의 OS 에서는새로운구조를지원하기위한자원관리기법이추가되어야할것이다. 대표적으로 CPU 와 GPU 가결합된프로세서, 계층적메인메모리, 차세대비휘발성메모리등을고려한자원관리가이루어져야할것이다. 또한태스크스케줄러설계에있어서액세스패턴및병렬성등의태스크의특성을고려하여 CPU 및 GPU 에할당하여야할것이고, 메모리관리에있어서도계층적메인메모리에서각메모리의특성을고려하여할당이이루어져야할것이다. 또한스토리지와메인메모리로사용되는차세대비휘발성메모리를이를위한관리가필요할것이다. 5.2 메인메모리관리메모리관리에있어서계층적메인메모리를효율적으로사용하기위한관리기법이필요하다. 이를위해우선 M1, M2, M3 메모리특성을고려한효율적인메모리할당기술개발및메모리레벨에서메모리충돌문제해결기술개발이필요하다. 또한효율적인메모리할당및마이그레이션을위해서페이지접근모니터링기법개발이필요하다. 이를통해페이지별접근횟수정보및페이지주소저장하고각페이지내에서관리가가능한범주를파악할수있다. 마지막으로는메모리페이지마이그레이션기법개발이필요하다. 모니터링을통한동적 Hot/Cold 페이지구분에따른 M1, M2, M3 간페이지마이그레이션을통해메인메모리접근속도를증가시킬수있다. 또한여러노드의메모리를통합적으로관리하는방법이필요하게되는데, 한노드에서메모리부족시, 이웃노드의메모리를활용하기위한관리가이루어져야한다. 이를위해메모리모니터링및메모리할 당정책이필요하게되고, 이를통해메모리사용량을높일수있게될것이다. 5.3 스토리지관리스토리지관리에있어서는다른 compute node 상의같은 job에서의 I/O request를한 node에서담당할수있도록개발이되어야할것이다. 이를통해버퍼캐시의 pollution 제거및 utilization 증가효과를볼수있게된다. 또한, 차세대스토리지를 SSD 로사용시, 이는 HDD 와는다르게특성에대한예측이가능하기때문에 SSD 특성을고려하여 I/O reordering 및 I/O 재분배기술을적용하여성능향상을가져올수있을것이다. 또한, 차세대비휘발성메모리를메인메모리와스토리로동시에사용하기위해서는우선메모리데이터와파일시스템데이터의구분이필요하고, 워크로드특성에따른메인메모리와스토리지사이의동적인용량조절이필요하다 [15]. 이를통해 Page fault 로인한스토리지로의스왑오버헤드를줄여성능향상가능하다. 이런자원관리를통해차세대비휘발성메모리사용률증가를통한성능향상및신뢰성증가시킬수있다. 5.4 프로그래밍모델우선 OpenMP [16] 를수정하여다수의노드들간의병렬적프로그램수행을지원해야할것이고, 노드들간의역할분담및해당역할에맞춘 OS 재구성이필요하다. 또한새로운하드웨어를고려한프로그래밍모델설계가필요하다. 새로운하드웨어고려사항으로는 CPU 와 GPU 가통합된프로세서가있을것이고이를고려하여 MPI (Message Passing Interface) [17] 수정이필요하다. 계층적메인메모리, 차세대비휘발성스토리지를지원하기위한프로그래밍모델이개발되어야할것이다. 6. 결론 본논문에서는기존슈퍼컴퓨터구조및자원관리분석을통해향후미래의고성능엑사스케일컴퓨팅 61
시스템의구조및이를위한효율적인자원관리방법을전망하였다. 프로세서는 CPU 만이아닌 GPU 가결합된이기종의프로세서가차세대고성능혼합형시스템에서사용될것이고, 프로세서내코어간, 컴퓨팅노드간연결은 InfiniBand 를통해연결됨으로써높은성능을얻을것으로전망된다. 스토리지시스템구조는분산파일시스템인 Lustre FS 기반으로새로운스토리지구조에맞는파일시스템수정이필요하고, 메인메모리구조는 3D-Stacked 메모리와차세대비휘발성메모리가결합되어고성능, 대용량의계층적메인메모리구조가구성될것으로보인다. 이구조를효율적으로활용하기위해, OS 디자인에있어서이를서포트하기위한자원관리기법이추가되어야할것이다. 대표적으로 CPU 와 GPU 가결합된프로세서, 계층적메인메모리, 차세대비휘발성메모리등을고려한자원관리가이루어져야할것이다. 또한스케줄러설계에있어서엑세스패턴및병렬성등태스크의특성을고려하여 CPU 및 GPU 에할당하여야할것이고, 메모리관리에있어서도계층적메인메모리에서각메모리의특성을고려하여할당이이루어져야할것이다. 스토리지와메인메모리로사용되는차세대비휘발성메모리를이를위한관리가필요할것이다. 프로그래밍모델에서도새로운구조를지원하기위해 OpenMP 및 MPI 의수정이필요하다. Acknowledgement [4] Tianhe-1A, http://nscc-tj.gov.cn/en. [5] Jaguar, http://www.nccs.gov/jaguar. [6] J. Appavoo et. al., Project Kittyhawk: Building a Global -Scale Computer, SIGOPS 2008. [7] R. Brightwell et. al., Why Nobody Should Care About Operating Systems for Exascale, ROSS 2011. [8] K. H. Park et. al., MN-Mate: Resource Management of Manycores with DRAM and Nonvolatile Memories, HPCC 2010. [9] K. Bergman et. al., Exascale Computing Study: Technology Challenges in Achieving Exascale Systems, [Online]. Available: http://www.cse.nd.edu/reports/2008/tr-2008-13.pdf [10] Intel SandyBridge, http://www.intel.com. [11] G. H. Loh et. al., 3D-stacked Memory Architectures for Multi-Core Processors,ISCA 2008. [12] Y. Park et. al., Linux Kernel Support to Exploit Phase Change Memory, OLS 2010. [13] Y. Park et. al., Power-Aware Memory Management for Hybrid Main Memory, ICNIT 2011. [14] A. Bechtolsheim Technologies for Data-Intensive Computing, 14th International workshop on high performance transaction systems (HPTS) 2009. [15] J.-Y. Jung et. al., Dynamic Co-Management of Pers55istent RAM Main Memory and Storage Resources, CF 2011. [16] OpenMP, http://openmp.org. [17] The Message Passing Interface (MPI) Standard, http://www.mcs.anl.gov/research/ projects/mpi. 본연구는지식경제부및한국산업기술평가관리원의 IT산업원천기술개발사업의일환으로수행하였음. [10038768, 유전체분석용슈퍼컴퓨팅시스템개발 ] 참고문헌 [1] J. Dongarra et al. The International Exascale Software Project Roadmap, IESP Workshop 2011. [2] Top500 Supercomputer Sites, http://www. top500.org. [3] K Computer, http://www.fujitsu.com/global/ about/ tech/k. 저자소개 박성규 2007 년 KAIST 전기및전자공학과학사 2009 년 KAIST 전기및전자공학과석사 2009 년 ~ 현재 KAIST 전기및전자공학과박사과정 관심분야 : 플래시메모리, 차세대비휘발성메모리등 62
박기웅 2005 년연세대학교전산학과학사 2007 년 KAIST 전기및전자공학과석사 2012 년 KAIST 전기및전자공학과박사 관심분야 : 클라우드컴퓨팅, 보안프로토콜, 모바일시스템등 박규호 1973 년서울대학교전자공학과학사 1975 년 KAIST 전기및전자공학과석사 1983 년 Parix XI 대학컴퓨터공학과박사 1983 년 ~ 현재 KAIST 전기및전자공학과교수 관심분야 : 운영체제, 매니코어시스템, 차세대비휘발성메모리, 플래시메모리등 63