2003년 미 로스 알라모스 국립연구소는 ASCI-Q 슈퍼컴퓨터를 설치했다. 7.7테라 플롭스(TeraFLOPS: 1초에 1조회 연산 수행) 성능을 갖추고 당시 세계 2위를 자랑했다. 하지만 이 시스템은 고질적인 문제를 갖고 있었다. 잦은 고장이었다. 평균 한 시간에 한번 꼴로 시스템 전체가 다운됐다.

CPU 내부에 있는 메모리로 연결되는 주소 버스(address bus) 회로에 별다른 보호장치가 없었기 때문이었다. 회로를 따라 지나는 신호가 외부의 힘에 의해 변질되는데, 이를 감지하고 적절한 조치를 하지 못했다.

변질의 원인은 우주에서 빠른 속도로 지구로 날아오는 우주 선(cosmic ray) 때문이었다. 이들이 반도체에 충돌하면서 신호를 변경하고 있었다. 과학자들은 이를 증명하기 위해 중성자 빔을 컴퓨터 서버에 쏘는 실험을 했고, 유사한 오류가 발생하는 것을 재현했다.

해결책으로 ASCI-Q 시스템 주위를 금속판으로 감쌌다. 그렇게 우주 선의 영향을 줄이고 평균 고장 간격을 6시간까지 늘렸다. 하지만 이후 많은 노력에도 불구하고 만족할만한 안정성에는 도달하지 못했다.

ASCI-Q 슈퍼컴퓨터 : 7.7 테라플롭스의 성능으로 2003년 세계 2위 시스템으로 등장했으나 한 시간에 한번 꼴로 시스템 전체가 다운됐다. / 로스 알라모스 국립연구소 제공
ASCI-Q 슈퍼컴퓨터 : 7.7 테라플롭스의 성능으로 2003년 세계 2위 시스템으로 등장했으나 한 시간에 한번 꼴로 시스템 전체가 다운됐다. / 로스 알라모스 국립연구소 제공
우주 선의 영향력을 받은 슈퍼컴은 또 있다. 2003년 미 버지니아공대는 1100대의 파워 맥(Power Mac) G5 컴퓨터를 연결해 '빅맥(Big Mac)'이라는 슈퍼컴퓨터를 완성했다. 하지만 이 시스템은 시스템 전체의 부팅이 완료되기도 전에 시스템이 다운되는 등 안정성이 극명하게 떨어졌다.

그 원인 또한 우주 선이었다. 파워 맥 G5는 에러를 찾아내고 고치는 ECC(Error Correcting Code) 기능이 없는 메모리를 사용하였는데 우주선이 지속적으로 에러를 발생 시킨 것이다.

시스템을 사용할 수 없게 되자 버지니아공대 연구자들은 결국 슈퍼컴을 분해했고, 각각의 부품을 온라인으로 판매했다. 이후 구축한 슈퍼컴퓨터 '시스템엑스(System X)'부터는 ECC 기능을 반드시 탑재하고 있다.


버지니아공대의 빅맥 슈퍼컴: 1100개의 파워 맥 G5를 연결해 만든 이 시스템은 안정성 문제로 본격적으로 활용되지 못했다. / 버지니아공대 제공
버지니아공대의 빅맥 슈퍼컴: 1100개의 파워 맥 G5를 연결해 만든 이 시스템은 안정성 문제로 본격적으로 활용되지 못했다. / 버지니아공대 제공
슈퍼컴퓨터가 우주 선에 민감한 것은 반도체의 집적도 증가와 관련이 있다. 예를 들어 미국이 2023년 구축 예정인 엑사급 슈퍼컴퓨터의 경우 트랜지스터 크기가 현재의 1/3 수준으로 줄어들게 된다. 이렇게 되면 우주 선이 트랜지스터의 상태를 변경할 가능성이 높아진다.

우주선으로 인한 데이터의 변질은 얼마나 자주 일어날까? 2009년 세계 최고의 슈퍼컴으로 등장한 미 오크리지 국립연구소의 재규어(Jaguar) 시스템에는 ECC 기능이 적용된 360테라 바이트(TB)의 메모리가 있었다.

조사 결과 메모리의 비트가 변질되는 사례는 1분에 350번에 달했다. 대부분의 경우 하나의 비트만 변경되었으나, 우주선의 에너지가 높은 경우에는 몇 개의 비트를 동시에 바꾸기도 했다. 심지어는 반도체를 영구적으로 손상시키는 경우도 있었다.

ECC를 이용하면 64비트(bit)안에서 1개의 비트가 변질되는 경우 이를 찾아내고 수정 할 수 있다. 하지만 두 개 이상의 비트가 변경되면 대응이 불가능하다. 재규어 시스템의 경우 2개 이상의 비트가 변경되는 사례가 하루에 한번 주기로 일어났다.

뒤집어 보면 반도체는 우주 선 검출기의 역할을 하기 때문에 그 면적이 늘어나면 오류의 확률도 높아지게 된다. 엑사급 시스템은 현재보다 50배가 많은 100페타바이트 규모의 메모리를 사용하게 되고 그 오류의 확률도 높아지게 된다.

우주선 외에 다른 원인들도 있다. 2004년 세계 1위 슈퍼컴으로 등장한 미 로렌스 리버모어 국립연구소의 블루 진(Blue Gene)/L 시스템의 경우 컴퓨터 시뮬레이션이 갑자기 중단되거나 그 결과가 크게 틀리는 경우가 종종 발생했다.


블루진(Blue Gene)/L 슈퍼컴퓨터: 2004년 세계 최고 슈퍼컴인 이 시스템도 안정성 문제로 그 활용이 제한됐다. / 로렌스 리버모어 국립연구소 제공
블루진(Blue Gene)/L 슈퍼컴퓨터: 2004년 세계 최고 슈퍼컴인 이 시스템도 안정성 문제로 그 활용이 제한됐다. / 로렌스 리버모어 국립연구소 제공
그 원인을 찾고 보니 땜납(solder)이었다. 땜납에서 나오는 방사선이 CPU에 내장된 캐시 메모리의 데이터를 변경하고 있던 것이다. 이를 해결하기 위해 캐시를 사용하지 않도록 프로그램을 수정하였으나 성능이 급격하게 저하되는 문제가 발생했다.

이러한 안정성의 문제는 앞으로 더 심각해질 수 밖에 없다. 그 기본적인 이유는 시스템을 구성하는 요소의 수가 증가하고 트랜지스터 등 구성 요소의 크기가 줄어들기 때문이다. 사실 엑사급 컴퓨터 개발의 주요한 어려움 중 하나는 바로 시스템의 안정성이다.


필자 주: 이 글은 미 오크리지 국립연구소의 Geist 박사님이 올해 IEEE Spectrum지에 기고한 'Supercomputing's Monster in the Closet' 기사를 기초로 했다. 이를 허락하신 Geist 박사님께 감사 드린다.


[이지수 소장 약력]
-미 보스턴대학 물리학 박사
-독일 국립슈퍼컴센터 연구원
-한국과학기술정보연구원(KISTI) 슈퍼컴퓨팅센터 센터장
-사단법인 한국계산과학공학회 부회장
-Journal of Computational Science 편집위원
-(전) KISTI 국가슈퍼컴퓨팅연구소 소장
-(현) KISTI 책임연구원


관련기사