College Of Engineering
서울공대 이야기
 

저렴한 슈퍼컴퓨팅 패러다임의 미래 첨단기술개발에의 응용


서울대학교 공과대학 기계항공공학부 교수

김승조 


슈퍼컴퓨터와 슈퍼컴퓨팅

슈퍼컴퓨터는 일반적으로 당대에 운용되는 컴퓨터의 평균성능보다 훨씬 빠른 고성능의 컴퓨터를 일컫고 이들 컴퓨터를 이용해서 고성능 연산을 수행하는 일을 슈퍼컴퓨팅이라 말할 수 있다. 이러한 일반적인 정의는 컴퓨터, 특히 중앙처리장치(CPU)의 급격한 성능향상으로 인해 약간의 수정이 필요하게 되었다. 예전 슈퍼컴퓨터의 초고성능(당대 다른 컴퓨터에 비해) 전용 중앙처리장치 대신에 현재의 슈퍼컴퓨터는 대부분 PC(Personal Computer)나 워크스테이션에서 사용하는 마이크로 프로세서를 대량으로 활용하여 병렬처리를 통해 슈퍼컴퓨팅을 수행하기 때문이다. 따라서, 적절한 병렬 알고리듬을 쓰지 않으면 슈퍼컴퓨터에서도 슈퍼컴퓨팅을 이룰 수가 없고, 반대로 여러 대의 PC들로도 적절한 병렬연산수단을 가지면 슈퍼컴퓨팅이 가능한 시대가 도래한 것이다. 다시 말하면, 조금만 노력을 기울이면 큰 투자 없이도 슈퍼컴퓨팅을 구현할 수 있는 슈퍼컴퓨팅 보편화시대가 된 것이다. 그리고 인터넷으로 대변되는 네트워크의 급속한 확대는 정보화 시대로의 급속한 변화를 가져왔으며, 기업체나 연구소 등의 사무용 및 업무용 PC 및 워크스테이션들이 서로간의 데이터를 주고받을 수 있게 되었다. 그래서 이러한 네트워크화된 컴퓨팅 자원들 역시 중요한 계산자원으로 인식되기 시작했다. 특히, 당대 최고의 슈퍼컴퓨터를 구성하고 있는 마이크로 프로세서들과 개인용 PC에 활용되고 있는 마이크로 프로세서들 간의 성능이 거의 차이가 없어지면서 네트워크로 연결된 개인용 PC들을 이용한 슈퍼컴퓨팅 구현이 현실적으로 가능해지기 시작한 것이다. 더욱이, 현재의 PC용 CPU, 즉 펜티엄 III, IV 그리고 Athlon 프로세서들은 내부구조에 맞추어 적절히 튜닝(tuning)하여 사용하게 되면 연산속도를 크게 증가시킬 수 있는 가능성(펜티엄 IV의 SSE2, Athlon의 3DNow 등)을 가지고 있어 놀라운 계산속도를 얻을 수 있다.


저렴한 슈퍼컴퓨팅 패러다임

이러한 슈퍼컴퓨팅 패러다임의 변화를 실제적으로 구현해서 저렴한 슈퍼컴퓨팅을 구현하는 기술에는 크게 클러스터 슈퍼컴퓨팅, 인터넷 P2P(Peer to Peer) 슈퍼컴퓨팅, 그리드 컴퓨팅 등이 있다.


- 클러스터 슈퍼컴퓨팅

네트워크로 연결된 워크스테이션이나 개인용 PC들의 컴퓨팅 자원을 활용하기 위한 기술인 클러스터링(clustering) 기술은 1994년 Donald Becker에 의해 소개되고 가능성이 입증된 후, 자체적인 슈퍼컴퓨팅 시스템을 구축하고자 하는 연구소나 대학 등에서 널리 활용되고 있다. 특히, 공개 운영체제인 Linux를 설치한 PC 등을 이용하여 구축한 클러스터링(clustering) 시스템은 과학기술분야뿐만 아니라, 웹서비스 등 다양한 분야에서 사용되어지고 있다. 현재 세계 슈퍼컴퓨터 랭킹 500위 리스트에도 클러스터 시스템이 10% 정도를 차지하고 있으며 12대 시스템은 자체 제작한(Self-made) 시스템이다. 서울대학교 항공우주 구조연구실에서 개발하여 운영 중인 국내 최고성능 슈퍼컴퓨터인 Pegasus 시스템(그림1)도 자체제작 클러스터 시스템이다. 클러스터 시스템의 가장 큰 장점은 대형 UNIX 서버 시스템에 비해서 상대적으로 저렴하게 고성능의 전용 슈퍼컴퓨팅 시스템을 구축할 수 있다는 점이다. 그리고 비교적 확장성이 용이하며, 상용화가 활발하게 이루어지고 있어서 다양한 솔루션들이 급증하고 있다는 점이 장점이다.

 

그림1 Pegasus (Cluster Supercomputer) 시스템

(세계 슈퍼컴퓨터 랭킹 80위)


- 인터넷 P2P 슈퍼컴퓨팅

클러스터 슈퍼컴퓨팅이 기존의 대형 UNIX 서버 시스템에 대한 현실적인 대안의 하나로  생각된 것이라면, 인터넷 슈퍼컴퓨팅은 변화된 슈퍼컴퓨팅 환경을 기반으로 한 미래지향적인 슈퍼컴퓨팅 기술이라고 볼 수 있다. 인터넷 슈퍼컴퓨팅 기술의 기본 개념은 기존의 초고속 네트워크를 이용한 대형 UNIX  서버나 클러스터 시스템과는 다르게 인터넷으로 연결되어 있는 기존의 PC들을 소프트웨어적으로 서로 연결하여 인터넷상에 존재하는 가상적인 슈퍼컴퓨터를 구현하여 슈퍼컴퓨팅을 수행하는 기술을 말한다. 클러스터와 달리 각각의 컴퓨터들을 연결하는 별도의 초고속 네트워크가 필요 없게 되고, 기존의 PC를 사용함으로써 획기적으로 계산비용을 낮출 수 있다. 그리고 더욱 좋은 점은 기존의 슈퍼컴퓨터나 클러스터 시스템은 초기 구입가격뿐만 아니라, 시스템 유지보수비도 필요하지만, 인터넷 슈퍼컴퓨팅에 동원되는 PC들은 별도의 시스템 유지보수비가 필요 없다는 점이다. 이미 각각의 유저가 자기의 업무를 수행하기 위해서라도 유지보수를 하기 때문이다. 그런데 인터넷 슈퍼컴퓨팅 기술은 인터넷에 연결된 기존의 PC들을 활용하기 때문에 인터넷 슈퍼컴퓨팅기술이 기존의 방법들에 비해서 많은 장점을 가지게 되지만, 반드시 장점만이 있는 것은 아니다. 우선, 가장 큰 단점은 역시 별도의 고속 네트워크를 구축하지 않고, 인터넷을 통해서 컴퓨터들간의 통신이 이루어지므로 전송속도가 기존의 슈퍼컴퓨팅 전용 서버나 클러스터링 시스템에 비해서 상당히 느리다는 것이다. 그래서 인터넷 슈퍼컴퓨팅 기술을 활용하여 분산병렬처리 프로그램을 개발하려고 할 경우에는 컴퓨터들간의 통신을 최대한으로 줄이는 방향으로 프로그램을 작성해야만 한다. 인터넷 슈퍼컴퓨팅 개념은 최근 활발하게 연구되고 있는 그리드 컴퓨팅 개념, P2P 컴퓨팅 개념을 모두 포함한 것으로 서울대학교 항공우주구조연구실팀(http://aeroguy.snu.ac.kr)에 의해서 제안되어졌다. 현재, 그리드 컴퓨팅을 위한 미들웨어들을 활용하여 효율성과 편의성을 올리는 연구가 진행 중이며, 관련 연구활동을 과기부의 국가지정연구실 사업을 통해 지원을 받고 있다. 

 

그림2 Internet Supercomputing의 개념도



- Piggyback 슈퍼컴퓨팅

Piggyback 슈퍼컴퓨팅 기술은 인터넷 슈퍼컴퓨팅 기술을 기반으로 하며, 클러스터 컴퓨팅의 장점을 접목시킨 기술이라고 할 수 있다. 우선 기존의 네트워크에 연결된 컴퓨터의 CPU 파워향상을 위해 Dual CPU 시스템화하고 또한 메모리를 추가 설치한다. 이렇게 함으로 해서 기존 유저들이 PC를 이용하는 일반 업무를 원활하게 하면서도 많은 CPU파워를 요구하는 병렬 슈퍼컴퓨팅도 가능케 한다. 그러나 대부분의 컴퓨터 기능은 기존의 PC성능에 의존하기 때문에 Piggyback이라는 이름을 붙인 것이다. 각각의 PC에는 리눅스를 기본 OS로 설치하며, 별도의 소프트웨어를 이용하여 다른 OS를 리눅스 기반 위에서 사용할 수 있다. 이상을 개념적으로 설명한 것이 그림3이다. 이러한 슈퍼컴퓨팅 기술의 장점은 그림4에 설명된 것처럼, 각 PC의 유저들이 자신의 업무나 연구를 하는 동안에도, 대규모의 컴퓨팅 자원을 요구하는 특정 유저가 각 PC들의 자원을 활용하여 병렬계산을 수행할 수 있다는 것이다. 다시 말해서, 인터넷 슈퍼컴퓨팅 기술의 경제성 및 전문 병렬 클러스터 시스템의 사용 편의성을 모두 갖춘 것이 Piggyback 슈퍼컴퓨팅이라고 볼 수 있으며, 인터넷 슈퍼컴퓨팅의 범용성 및 확장성을 크게 넓힐 수 있는 응용기술이다.

 

       그림3 Piggyback 슈퍼컴퓨팅의 개념도          그림4 Piggyback 슈퍼컴퓨팅


- 그리드 컴퓨팅

슈퍼컴퓨터들을 활용해서 연구를 수행해 국가 기술경쟁력을 확보하기 위한 수단으로서 선진국들은 국가적인 차원에서 선진국들은 슈퍼컴퓨터 인프라를 구축하기 시작했지만, 인간의 호기심은 무한한 것이므로 점점 더 뛰어난 성능의 슈퍼컴퓨터를 필요로 하는 문제들에 대한 도전을 시작하게 되었다. 지구전체의 기후변화를 예측하기 위한 지구기후 시뮬레이션 및 블랙홀 시뮬레이션 등의 연구가 시작되었다. 그런데, 이러한 초대형 응용문제를 해결하기 위해서 기존의 슈퍼컴퓨터 시스템을 증설하거나 새로운 슈퍼컴퓨터 시스템을 구축하는 것 역시 그 연구가 아무리 중요하다고 해도 많은 사람들의 공감을 얻기에는 많은 무리가 있었다. 그리고 이미 갖추어진 많은 슈퍼컴퓨터들의 효과적인 활용방안도 연구를 해야만 했다. 이런 환경에서 등장한 것이 바로 그리드(Grid) 컴퓨팅 개념이다. 그리드 컴퓨팅의 시작은 기존의 슈퍼컴퓨터들을 서로 연결하여 네트워크 상에 존재하는 가상의 초거대 슈퍼컴퓨터 시스템을 구축하여 기존의 단일 시스템으로는 해결할 수 없었던 문제들을 해결하자는 아이디어에서 출발한 것이다. 지금은 그리드라는 것은 네트워크로 연결된 자원들의 통합된 환경이라고 정의할 수 있으며, 통합 자원들은 기존의 슈퍼컴퓨터들을 포함해서 대용량 저장장치, 고성능의 연구장비 및 전문가들까지를 포함하는 개념으로 확대되었다. 그리드 컴퓨팅 분야의 대표적인 연구자인 Ian Poster는 그리드를 ‘Virtual Organization’이라는 용어로 정의하기도 했다. 그리드의 개념 및 정의가 넓어짐과 동시에 실제적인 구현에 있어서는 보다 더 다양한 형태를 취하게 되었다. 대표적으로 크게 3가지의 그리드로 세분화되었는데, 그리드를 통해서 해결하고자 하는 응용문제의 특성에 따라 세분화되었다. 많은 양의 계산을 수행하는 어플리케이션인지(Computing GRID), 데이터의 전송이 빈번하고 다루는 데이터의 양이 많은 어플리케이션인지(Data GRID), 여러 다른 분야의 전문가들이 협력해서 해결해야 하는 어플리케이션(Access GRID)인지 등에 따라 그리드의 형태가 나누어져 연구되고 있다. 그림5는 미국 NASA에서 추진하고 있는 대표적인 그리드 프로젝트인 IPG(Information Power GRID)에 대한 소개이며, 그리드 기반의 이러한 응용연구는 최근에는 e-Science라고 정의되기도 한다.

 

그림5 미국 NASA의 IPG(Information Power Grid)를 이용한 항공기 안전성 향상 연구


21세기 미래기술에의 응용

지금까지 살펴 본 것과 같이, 변화된 컴퓨팅 환경에 적합한 슈퍼컴퓨팅 구현기술은 분산병렬처리 기술이며 인터넷으로 연결된 개인용 PC들도 효율적인 분산병렬처리 알고리듬과 인터넷 슈퍼컴퓨팅 기술을 이용한다면 충분히 저렴한 비용으로 경쟁력 있는 슈퍼컴퓨팅을 수행할 수 있다. 이러한 슈퍼컴퓨팅 개념은 미국과 같은 선진국에서는 앞에서 살펴본 것처럼 그리드 컴퓨팅이라는 개념으로 경쟁적으로 기술개발을 주도해 나가고 있다. 그런데 여기서 우리가 생각해 보아야 할 것은 미국과 같은 선진국에서 그리드 컴퓨팅 기술과 같은 새로운 개념의 슈퍼컴퓨팅 기술을 개발하고 구현하고자 하는 궁극적인 목적이다. 그러한 목적을 잘 파악할 수 있는 한 예가 바로 미국 국방성이 추진하고 있는 M&S(Modeling & Simulation) 마스터플랜이다. 미국은 1991년에 DMSO(Defense Modeling & Simulation Office)라는 국방부 소속 전담조직을 구성하여 M&S기술의 개발을 주도하고, 국방의 여러 분야에 활용할 수 있도록 하고 있다. M&S 기술은 국방전략 수립, 각종 무기체계의 개발 및 획득 체제, 병참 분야, 가상모의전투를 통한 군사훈련 및 교육 등의 다양한 국방분야에서 활용되고 있다. 특히, 무기체계의 개발 및 획득체계에서 M&S 기술은 SBA(Simulation-Based Acquisition)기술로 특화되어 집중적으로 개발되고 있는데, SBA기술은 지금까지 다양한 분야에서 수행되어 왔던 시뮬레이션과는 다르게 PBS(Physics-based Simulation)을 구현하는 기술이며 고정밀 모델의 개발 및 실시간 해석 능력의 확보가 필수적이다. 이러한 고정밀 모델의 개발 및 실시간 해석 능력의 확보를 위해서는 슈퍼컴퓨팅 기술에 기반한 초정밀 해석능력의 확보 및 개발이 선행되어야 하기 때문에 미국은 바로 그리드 컴퓨팅 개발과 같은 슈퍼컴퓨팅 기술의 개발에 엄청난 투자를 하고 있는 것이다. 미국은 이러한 투자의 위력이 걸프전을 통해 입증되었다고 공공연하게 자랑하고 있는 실정이다.


- 6T(IT, BT, NT, ST, ET, CT) 기술에의 응용

그런데 이러한 초정밀 해석 능력에 기반한 M&S기술은 국방분야뿐 아니라, 21세기 미래의 국가경쟁력을 결정하게 될 6T 기술에 핵심요소기술이라는 점이 더욱 중요하다(그림6). 슈퍼컴퓨팅 기술의 핵심은 IT기술이며 IT기술의 발전과 함께 하고있다는 점에서 IT기술과의 관련성은 굳이 설명이 필요가 없을 것이다. BT기술분야의 경우, 대규모 데이터베이스의 활용 및 구현, 분산된 자원의 효율적인 이용 등의 기술에서 슈퍼컴퓨팅 기술이 기술경쟁력을 높일 수 있으며, 특히 인터넷 슈퍼컴퓨팅의 장점을 크게 활용할 수 있는 분야이기도 하다. 그리고 이러한 BT기술의 경쟁력은 신약개발 및 의학분야 기술의 개발에도 그대로 활용될 수 있으므로 21세기 산업을 주도할 수 있는 기반이 될 수 있을 것이다(그림7). 컴퓨팅 전문가들은 앞으로 BT분야의 슈퍼컴퓨팅 수요가 전체의 30% 이상을 차지할 것이라고 예상했다. NT분야의 경우는 초정밀 해석기술이 핵심기술인 분야이며 반도체 및 새로운 신소재의 개발에 적극 활용될 수 있다. ST와 ET기술의 경우는 현실적으로 구현하기 힘든 실험환경에서의 연구들을 수행해 나가기 위해서는 슈퍼컴퓨팅 기반의 초정밀 시뮬레이션 기술이 요구된다. ST의 경우는 새로운 개념의 항공우주 비행체의 개발에 있어서 설계와 개발을 사이버 공간을 통해 수행함으로써 개발기간과 비용을 줄일 수도 있다(그림8). ET의 경우에는 전지구적인 규모의 기상현상들에 대한 관심이 높아지고 이 분야에서의 기술을 선점하기 위한 노력이 가속화되면서 슈퍼컴퓨팅 기술의 수요가 급등하는 분야이기도 하다. CT기술의 경우는 21세기 새로운 고부가가치 산업의 하나로써 기존의 애니메이션보다 한차원 높은 수준의 PBS기술, 즉 물리현상을 고려한 애니메이션을 슈퍼컴퓨팅기술을 기반으로 해서 상품화할 수 있는 분야이다. 그리고 애니메이션 개발기간도 획기적으로 줄일 수 있으므로 가격경쟁력의 확보에도 슈퍼컴퓨팅 기술이 요구된다.

 

그림8 슈퍼컴퓨팅 기술의 6T에의 응용


슈퍼컴퓨팅 기술 개발은 21세기 기술중심의 산업구조에서 생존하기 위한 필수요건으로 간주되고 있기 때문에, 우리 나라와 같은 기술중심의 수출중심국가에서는 국가적인 차원에서 체계적으로 기술개발을 주도해 나가야만 한다. 일본의 경우만 보더라도, 전 세계를 놀라게 한 당대 최고 성능의 슈퍼컴퓨터인 Earth Simulator를 개발하여 전지구적인 기상현상에 대한 연구프로젝트와 연계해 나가고 있는 사실은 우리에게 시사하는 바가 크다고 할 수 있겠다. 우리 나라의 경우에는 초고속 인터넷의 보급률과 PC 및 인터넷을 활용한 정보화 보급률이 상대적으로 높은 환경을 최대한 활용하여, 저렴하면서도 경쟁력이 있는 독자적인 슈퍼컴퓨팅 기술을 개발하고 산업계 및 학계의 활발한 연구교류를 통해 각종 산업의 경쟁력과 연구활동의 수준을 높일 수 있어야 할 것이다.

 

그림9 BT 응용 예제 : NAMD 해석

Gramicidin A embedded in POPE membrane, surrouneded by water

(Pegasus 시스템 : 256 CPUs, 144초 )


 

그림11) CATIA를 이용한 Cyclocopter 실험장치 설계

      

번호 제목 글쓴이 날짜 조회 수
18 Computer Aided Design & Analysis 연구실(CAD 연구실) [5] lionheart 2004.08.04 3209
17 나노물질의 기상 제조 [2] lee496 2004.07.29 4014
» 저렴한 슈퍼컴퓨팅 패러다임의 미래 첨단기술개발에의 응용 lee496 2004.07.23 3745
15 스포츠 공학이란 무엇인가 lee496 2004.07.22 5762
14 바이오(BT)/나노(NT)/정보(IT) 기술 융합 트렌드에 대해서 [1] sky4u 2004.07.20 3360
13 LOC(Lab on a chip)와 미세유체역학(Microfluidics) [4] lee496 2004.07.19 5280
12 [기항] 서울공대 기계항공공학부의 비전 [2] mejwkim 2004.07.16 7814
11 [공통] 꿈꾸는 공대생 [1] lee496 2004.07.16 3505
10 MEMS 기술에 기초한 동력기관의 개발 lee496 2004.07.15 4744
9 항공우주공학 - 최첨단 과학기술의 결정체 lionheart 2004.07.12 3367
8 자동차공학 - 움직이는 사무실과 새로운 생활공간 꿈꾼다 [7] lionheart 2004.07.12 3723
7 기계공학관련 자료 [1] lionheart 2004.06.16 4724
6 학생활동 및 동아리 활동은? [12] lionheart 2004.06.14 4430
5 [기계항공공학이란 5] 결 론 [2] lionheart 2004.06.14 4330
4 [기계항공공학이란 4] 기계공학 전공 후의 인생 진로 [1] lionheart 2004.06.14 4466
3 [기계항공공학이란 3] 기계항공공학에서 다루는 분야 [1] lionheart 2004.06.14 4437
2 [기계항공공학이란 2] 기계항공공학이란 과연 무엇인가? [5] lionheart 2004.06.14 4300
1 [기계항공공학이란 1] 서 론 lionheart 2004.06.14 4040
Login
College of Engineering Seoul National University
XE Login