1. 프로젝트 개요

2. Cluster System의 필요성

3. 프로젝트의 목표 및 내용

4. 연구개발 방법


 

1. 프로젝트 개요

PC 또는 워크스테이션을 초고속 네트워크로 연결하여 고성능을 얻을 수 있도록 하는 클러스터 시스템을 연구 개발한다. 이를 위하여 하위 레벨 메시지 전송 계층, 표준 메시지 인터페이스, 운용 소프트웨어 계층과 같은 핵심적인 미들웨어군을 개발하고, 또한 활용성을 극대화하기 위하여 클러스터내 자원 관리 기능 및 단일 시스템 이미지 기법, 이기종의 연결 통합 관리 기능 등 확장된 개념을 연구 개발한다.

2. Cluster System의 필요성

고성능의 병렬 컴퓨터에 대한 요구는 꾸준히 지속되어 왔으며 현재까지 슈퍼컴퓨터 및 MPP(Massively Parallel Processor)의 개발을 통해 그 요구가 충족되어 왔다. 하지만 이들 고성능의 슈퍼컴퓨터나 MPP는 개발 기간이 길고 개발 비용이 높으며 대량 생산되는 마이크로 프로세서를 장착한 컴퓨터들에 비해 비싼 단점이 있다. 최근 들어 대량 생산되는 싼 가격의 컴퓨터들을 고속의 네트워크로 연결하여 고성능의 병렬 컴퓨터를 구성하려는 시도가 일고 있다. 이렇게 구성되는 컴퓨터를 클러스터 컴퓨터(cluster computer)라 부르며 값싼 PC나 워크스테이션들로 구성되는 노드 컴퓨터와 고속의 네트워크가 구성의 기본 단위가 된다. 이러한 클러스터 컴퓨터는 가격 대비 성능이 높고 확장성이 좋으며 하드웨어와 소프트웨어의 개발기간이 상대적으로 짧다는 장점이 있다.

이런 추세에 따라 외국 유명 대학과 연구소에서 클러스터 기반 컴퓨팅에 관해 연구하고 있으며 그 결과로 140대의 Alpha 21164A 마이크로 프로세서를 장착한 워크스테이션들을 고속의 네트웍으로 연결한 Avalon 클러스터 컴퓨터가 전세계에서 160번째로 빠른 컴퓨터로 등록되었다. 클러스터 기반의 병렬 컴퓨터를 사용하기 위해서는 병렬 프로그램의 스케쥴링, 네트워크에 연결된 각 컴퓨터들의 자원(CPU, 디스크, 메모리 등)의 사용 현황 감시 및 관리, 동적 부하 분산(dynamic load balancing)을 위한 프로세스 이전(process migration), 운영체제나 사용자 프로그램 사이의 빠른 통신을 위한 메카니즘, 편리한 관리자 도구 및 사용자 인터페이스 등이 필요하다. 이러한 기능을 제공하기 위하여 운영체제와 응용프로그램 사이에 존재하는 미들웨어가 고속의 네트워크로 연결된 여러 컴퓨터들을 하나의 단일 컴퓨터로 보이게 하는 단일 시스템 이미지(SSI: Single System Image)를 제공해야 한다. 단일 시스템 이미지는 관리자나 사용자에게 클러스터 컴퓨터의 물리적 구성 사항들을 숨기고, 투명한 가상 컴퓨터를 제공한다.

이와 같은 미들웨어는 병렬처리 및 분산처리 기술의 집합으로서, 고속의 통신 모듈, 분산 공유 메모리(DSM: Distributed Shared Memory), 네트워크 파일 시스템, 작업 감시 및 관리 시스템, 자원 감시 및 관리 시스템, 단일 입출력 공간, 단일 프로세스 공간, 고장 허용 구조 등의 요소기술을 포함하게 된다. 이러한 기술들은 클러스터 기반 컴퓨팅에서 뿐만 아니라 MPP, SMP나 메타 컴퓨팅 (meta-computing)등의 다른 구조에도 적용될 수 있는 컴퓨터 구조와 운영체제 분야의 기반 기술에 해당한다. 또한 클러스터 컴퓨터의 개발을 통해 얻어진 미들웨어 기술을 메타 컴퓨팅에 적용함으로써 무한대의 자원을 사용자에게 제공할 수 있는 가상 컴퓨터를 실현하는데 기반 기술로 사용될 수 있다.

과학 기술 및 공학 분야에서 시행되는 실험과 시뮬레이션들은 개인용 PC나 워크스테이션이 제공하는 성능 이상을 요구한다. 뿐만 아니라 최근 인터넷의 급속한 확장과 정보 처리 기술의 향상으로 고객에게 다양한 정보 처리 서비스를 제공하는 기업들에서도 고성능 컴퓨터에 대한 요구가 가속화되고 있다. 전세계 슈퍼컴퓨터의 순위를 500위까지 정해 놓은 'TOP500 Supercomputer Sites"라는 보고서 (1999년 6월 기준) [5, 17]에 따르면 현재 우리나라가 보유한 고성능의 슈퍼컴퓨터 중 전세계 500위 이내에 드는 슈퍼컴퓨터는 [표 1]과 같다.

 

전세계 순위

생산 회사

기종

보유기관

프로세스 개수

제외(50-55)

NEC

SX-5/16A

기상청

16

78

SGI

T3E900

KIST

132

197

IBM

SP P2SC 160MHz

한국통신

89

406

HP

Exemplar X-Class

삼성

64

                                             [표 1] 국내 슈퍼컴퓨터 현황

1993년 처음으로 슈퍼컴퓨터를 도입하기 시작한 우리 나라는 현재 50여대의 슈퍼컴퓨터를 가지고 있지만 미국이나 일본, 유럽 등의 선진국들에 비해 미약한 실정이다. 특히 1998년 여름에 쏟아진 집중 호우로 많은 피해가 발생하면서 기상전용 슈퍼컴퓨터를 도입하기 위해 1천 3백만 달러(1백 70억 원)의 예산을 확보하고 슈퍼컴퓨터 공급 업체에 입찰을 시행하여 128 GFLOPS급 벡터 컴퓨터인 NEC SX-5/16A를 구입하였다. 기상청의 슈퍼컴퓨터는 1999년 6월 1일부터 가동을 시작했기 때문에 'TOP500 Supercomputer Sites'에는 포함되어 있지 않지만, LINPACK 벤치마크에 대한 실제 성능을 나타내는 Rmax 성능 비교에 의하면 50위권에 속해 있다. [표 2]는 기상청의 슈퍼컴퓨터 SX-5/16A와 클러스터 컴퓨터 Avalon의 성능 대비 가격을 나타낸다. 1 GFLOPS의 성능을 얻기 위해 소요되는 비용이 15배이상 차이가 남을 확인 할 수 있다. 이렇듯 국내 고성능 컴퓨터의 현황은 세계적 수준에 미치지 못하고 있고, 고성능 컴퓨터에 대한 수요는 지속적으로 성장하고 있다. 하지만 단일 고성능 컴퓨터가 가지는 비용 부담, 전량 수입에 의존하고 있는 현실, 그리고 성능 요구 변화에 능동적으로 대처할 수 있는 확장성 및 유연성 부족이 문제점으로 지적되고 있다. 클러스터 기반 컴퓨팅은 이러한 한계를 극복하면서 슈퍼컴퓨터 및 중대형 서버급 컴퓨터에 대한 시장 수요를 대체할 수 있을 것으로 기대된다.

 

기종

프로세스

최고성능

가격

비용/GFLOPS

SX-5/16A

16

128 GFLOPS

13,000,000 $

101,563 $/GFLOPS

Avalon

140

48.6 GFLOPS

313,000 $

6,440 $/GFLOPS

                        [표 2] 슈퍼컴퓨터와 클러스터 컴퓨터의 가격 대비 성능 비교

 3. 프로젝트의 목표 및 내용

    고성능의 클러스터 컴퓨터의 개발과 확장이다. [그림 1]은 클러스터 컴퓨터의 전체 구성을 보여준다.

[그림 1]  클러스터 시스템 전체 구성도

 

구분

연구개발 목표

1단계(2년후)

슈퍼컴퓨터 용도 및 고성능 서버용 클러스터 컴퓨터의 개발24노드(48프로세서) 클러스터 구축

2단계(5년후)

단일 시스템 이미지와 고장 허용을 제공하는 클러스터 컴퓨터의 개발 및 이질적 환경으로의 확장

                                               [ 단계별 연구개발 목표 ]

 

구분

연구개발목표

1차년도(1999년

기초단계 클러스터 구축

하위 소프트웨어 계층 확립

2차년도(2000년)

분산 공유메모리 설계 및 구현

시스템 성능 분석

                                    [1단계 연차별 연구개발 목표]

 

구분

연구개발 목표

3차년도(2001년)

단일 시스템 이미지 개발 (1)

4차년도(2002년)

단일 시스템 이미지 개발 (2)

클러스터 관리 소프트웨어의개발

5차년도(2003년)

고장 허용 기능의 제공

이질적 환경으로의 확장

                                   [2단계 연차별 연구개발 목표]

4. 연구개발 방법

클러스터 컴퓨터의 개발을 위해서는 다양한 병렬처리 시스템과 그 하부 구조에 관한 지식들이 필요하다. 네트워크 인터페이스 카드, 하위 레벨 메시지 계층, 표준 메시지 전송 인터페이스, 분산 공유메모리, 클러스터 관리 소프트웨어, 단일 시스템 이미지, 고장 허용, 작업 관리 기능, 이기종 간의 통신 등 각 부분에 대한 기술적인 조사가 현재 완료되었다. 이와 더불어 국내외에서 발행되는 저널, 잡지, 학회, 인터넷 등을 통해 최신 정보를 계속 유지해야 할 필요가 있다.클러스터 컴퓨터의 개발은 크게 보아 top-down, bottom-up 방식을 모두 사용한 형태가 된다. top-down 방식에서 행해져야 할 내용들은 다음과 같다.