주간동아 397

..

‘클러스터형 슈퍼컴’꿈은 진화중

PC와 PC 연결 연산능력 탁월한 성능 … 두루 활용 어렵고 관리 힘든 게 단점

  • 이지수 (jysoo@kisti.re.kr) / 한국과학기술정보연구원 슈퍼컴퓨팅센터 연구원 홍정우(jwhong@kisti.re.kr) / 한국과학기술정보연구원 슈퍼컴퓨팅센터 연구원

    입력2003-08-07 10:07:00

  • 글자크기 설정 닫기
    ‘클러스터형 슈퍼컴’꿈은 진화중

    한국과학기술정보연구원 슈퍼컴퓨팅센터에서 구축한 클러스터형 컴퓨터 플루토(왼쪽). 슈퍼컴퓨터는 이를 이용하지 않은 산업 영역이 없을 정도로 첨단과학과 정보통신 분야를 선도하는 기술이다.

    근래 들어 ‘클러스터형’ 슈퍼컴퓨터라는 말을 종종 접하게 된다. 최근 서울대 항공우주연구실 김승조 교수팀이 개발한, 1초에 1조 번이 넘게 연산을 할 수 있는 슈퍼컴퓨터 역시 클러스터 방식이다.

    이를 간단히 설명하면 수백에서 수천대의 일반 PC들을 서로 연결하여 만든 고성능 컴퓨터로, 기존의 슈퍼컴퓨터들에 비해 획기적으로 높은 가격 대비 성능을 보인다. 즉 기존의 슈퍼컴퓨터들은 상당히 고가라서 아무나 접할 수 없었지만 이들 고성능 PC는 잘 연결하기만 하면 슈퍼컴퓨터급의 성능을 낼 수 있다. 그렇다면 앞으로 나올 슈퍼컴퓨터는 모두 클러스터형으로 제작될 것인가. 클러스터형 컴퓨터의 장단점은 무엇인가. 이러한 질문에 답하기 위해서는 슈퍼컴퓨터에 대한 얼마간의 지식이 필요하다.

    저렴한 가격 국산화도 가능

    슈퍼컴퓨터를 한마디로 정의하면 보통의 컴퓨터보다 연산속도가 매우 빠른 컴퓨터라고 할 수 있다. 연산속도의 단위는 초당 부동소수점 연산 횟수인 플롭스(FLOPS·floating-point operations per second)이며 현재 세계에서 가장 빠른 일본의 ‘Earth Simulator’의 연산속도는 약 36테라플롭스(1테라는 1조)다. 이는 20자리 실수의 사칙연산을 1초에 36조 번 할 수 있는 속도로, 일반 PC와 비교해 약 1만 배 빠른 속도다.

    현재 세계 각국에서 보유하고 있는 슈퍼컴퓨터의 성능을 측정하여 가장 우수한 500개를 정리해 만든 ‘Top 500 슈퍼컴퓨터’ 목록이 매년 두 차례 발표되고 있다. 이러한 슈퍼컴퓨터는 자연과학과 공학 분야뿐만이 아니라 보험업계 석유업계 영화산업 등의 광범위한 분야에서 사용되고 있다. 예를 들어 현재 도로를 주행하는 승용차 중에서 슈퍼컴퓨터를 사용하지 않고 설계된 차가 없으며, 약국에 진열된 많은 의약품 중에서 슈퍼컴퓨터의 도움 없이 개발된 약은 거의 없다. 세계 주요 국가들은 1980년대 중반 이후 과학기술의 발전을 통하여 첨단 과학기술과 정보통신 분야를 주도하고자 국가 지원 하에 슈퍼컴퓨터센터를 설립하고 슈퍼컴퓨터 개발을 국가의 핵심 전략사업으로 추진하고 있다.



    현대적 의미의 슈퍼컴퓨터의 역사는 슈퍼컴퓨터의 아버지라고 불리는 크레이 박사가 1976년에 발표한 벡터형 컴퓨터인 Cray-1에서 시작됐다. 벡터형이란 컴퓨터의 두뇌에 해당하는 CPU(중앙처리장치) 구조의 하나로, 많은 수의 연산을 동시에 수행할 수 있도록 특수하게 설계된 형태다. 1990년대 초기까지 대부분의 슈퍼컴퓨터는 벡터형으로, 주로 단일 CPU 성능의 향상을 통하여 컴퓨터 전체 성능의 개선을 추구해왔다. 이후 다수의 CPU를 사용하여 컴퓨터 전체의 성능을 향상하려 하는 병렬형 슈퍼컴퓨터가 점차적으로 벡터형 컴퓨터를 대체하기 시작했다. 이러한 슈퍼컴퓨터들은 특수한 기술들을 사용해서 만드는 국가 혹은 대기업 수준의 투자가 필요한 고가의 장비인 만큼 ‘귀하신 몸’으로 대접받아왔다.

    수요는 느는데 공급이 어려워지자 과학자들이 저렴하고 보다 사용하기 편리한 계산자원을 찾기 시작한 것은 당연한 일. 그러던 중 1994년에 미국 연방항공우주국(NASA)의 연구원인 스테링 박사와 베커 박사가 몇 대의 PC들을 연결하여 최초의 클러스터형 컴퓨터를 만드는 데 성공했다. 이 클러스터의 가격 대비 성능이 우수한 장점에 힘입어 클러스터 개발은 곧 대형 프로젝트가 됐고 클러스터 컴퓨팅 방법은 세계적인 주목을 받기 시작했다.

    클러스터를 구축하는 데에는 기존의 슈퍼컴퓨터와 달리 일반적으로 알려진 기술들이 사용되기 때문에 기본개념을 이해하고 있을 경우 기술을 구현하기가 쉽다. 더구나 소규모 시스템은 공개된 소프트웨어를 사용하기 때문에 비용 또한 대폭 절감할 수 있다.

    그러면 클러스터형 컴퓨터의 장점과 단점은 무엇일까. 가장 두드러진 장점은 뛰어난 가격 대비 성능이다. 해결하려고 하는 문제의 형태에 따라 차이가 있지만 경우에 따라서는 약 10분의 1의 가격으로 상용하고 있는 슈퍼컴퓨터와 동일한 성능의 클러스터를 구축할 수 있다. 다음은 슈퍼컴퓨터의 국산화 가능성이다. 기존의 슈퍼컴퓨터는 장기간의 연구를 바탕으로 축적한 최첨단 하드웨어와 소프트웨어의 제작기술을 필요로 하며 이러한 기술은 국가안보 등에 영향을 주는 것으로 알려져 있어 선진국들이 기술 이전을 매우 꺼리는 것이 현실이다. 이에 비해 클러스터는 공개된 소프트웨어를 사용하고 PC에 사용되는, 일반적으로 구할 수 있는 부품들을 사용하기 때문에 국내 기술로 슈퍼컴퓨터 자원을 확보하고 활용하는 것이 상대적으로 용이하다. 이외에도 해결하고자 하는 문제에 최적화하여 시스템을 구성하는 등의 구성의 유연성과 폭넓은 확장성 등의 장점이 있다.

    그러면 클러스터 방식의 단점은 무엇일까. 그 첫째는 비범용성이다. 다시 말하면 모든 분야에 두루 좋은 성능을 발휘할 수 있게 하기가 어렵다는 점이다. 일반적인 계산을 하는 데는 기존의 슈퍼컴퓨터 같은 구조가 사용하기 쉬우며, 특정 부류의 문제들에 대해서는 클러스터가 효율적이지 못한 것으로 알려져 있다.

    두 번째는 관리하는 데 따른 어려움이다. 많은 사람들이 한 대의 PC를 사용하는 데에도 많은 문제를 겪고 있는데, 하나의 클러스터가 보통 수백개의 PC로 이루어져 있다는 것을 생각해보면 그 관리가 쉽지 않음을 짐작할 수 있다. 우리 속담에 ‘가지 많은 나무에 바람 잘 날 없다’는 말이 있듯이 클러스터를 구성하는 작은 컴퓨터의 수가 많을수록 탈이 날 가능성도 늘어난다. 공개소프트웨어를 사용하고 있다는 점도 관리를 어렵게 하는 요인 중의 하나다. 공개소프트웨어를 사용하다 문제가 생겼을 경우에 결국 자체적으로 이를 해결해야 하는 경우가 많다. 따라서 대규모의 클러스터를 운영하기 위해서는 상용하는 컴퓨터에 비해 큰 규모의 전문기술인력으로 구성된 운영팀이 필요하다.

    이러한 이유 때문에 클러스터가 기존의 슈퍼컴퓨터를 완전히 대체할 수는 없지만 앞으로 주요한 계산자원으로 자리매김하리라 예상된다. 클러스터는 슈퍼컴퓨터를 국산화하려는 꿈을 어느 정도 현실화해주며, 슈퍼컴퓨터급의 계산자원을 필요로 하는 다양한 과학기술 분야에 저렴한 비용으로 보다 많은 자원을 공급할 수 있는 방법이 될 것이다. 국내의 관련 분야 연구자들은 이러한 방향에서 클러스터형 컴퓨터의 단점을 없애기 위해 부단히 노력하고 있다.



    댓글 0
    닫기