현존하는 가장 강력한 슈퍼컴퓨터들은 이미 페타플롭스 (Petaflops) 의 벽을 뛰어넘은 상태입니다. 미국의 여러 정부 기관 및 회사들은 이미 이 단계를 더 뛰어넘는 컴퓨터인 엑사스케일 컴퓨팅을 생각하고 있고 이를 2018 년까지 현실화 시키기 위해 연구를 진행중에 있습니다.
페타플롭스란 1초에 부동소수점 연산을 1000 조회 (10의 15승) 정도 할 수 있는 연산 능력을 말합니다. 페타스케일 컴퓨팅을 이야기 할 때는 부동소수점 연산 능력외 페타플롭스급 스토리지를 언급하는 경우도 있기는 하지만 실제로 페타플롭스급 스토리지는 이제 그렇게 드물지는 않기 때문에 페타스케일 컴퓨팅이라고 하면 페타플롭스 슈퍼컴퓨터를 보통 이야기 합니다. 지금 이야기할 엑사 스케일은 10의 18 승으로 1초에 부동소수점 연산을 100 경회 시행할 수 있는 컴퓨터를 이야기 합니다.
페타플롭스급 슈퍼컴퓨터가 처음 등장한 것은 2008 년 5월 25일로, IBM 의 슈퍼컴퓨터 로드러너 (Roadrunner) 가 1.026 PFlops 를 기록한 이후 현재까지 일본의 K (Kei) 컴퓨터가 2011 년 8.162 FLOPS 의 기록을 수립했습니다. 물론 현재 개발되는 슈퍼컴퓨터들 가운데는 이보다 더 강력한 것들이 있어 앞으로도 기록은 새로 수립될 것입니다.
(2011 년 11월 세계 탑 5 슈퍼컴퓨터. 엔비디아는 여기서 테슬라를 적극 밀고 있다. )
미국의 에너지부 (DOE : Department of Energy) 및 국립 핵 안전 기구 (National Nuclear Security Administration) 등 여러 미국내 정부 기구들은 기초과학 연구부터 소재 과학, 생명공학, 핵물리학 등 여러 분야에 필요한 더 강력한 슈퍼컴퓨터 제작을 의뢰한 상태이고 미국 국방 고등 연구 계획국 ( Defense Advanced Research Projects Agency : DARPA ) 는 이를 위해 와트당 50 GFLOPS 의 전력대 연산 효율을 요구하고 있습니다.
즉 다시 말해 20 MW 의 전력을 소모하면서 엑사플롭스급 연산 능력을 지녀야 한다는 의미인데 실제 20 MW 라고 해도 그 전력 소모가 엄청난 만큼 이 이상으로 전력을 소모하게 된다면 사실 비용이나 효율성 면에서 큰 문제가 됩니다. 솔직히 전력 소모와 비용에 대한 제한이 없다면 현재도 엑스플롭스급 컴퓨터를 구성할 수는 있습니다. 하지만 비용과 유지하는데 필요한 에너지를 생각하면 낭비적인 요소가 매우 큽니다. 사실 20 MW 도 엄청난 전력 소모량이라고 할 수 있습니다.
이런 이유에서 현재 IBM, 엔비디아, 인텔 등 여러 제조사들은 와트당 성능비를 2018 년 근처까지 비약적으로 향상시키기 위해 여러가지 노력을 하고 있습니다.
엔비디아는 여기에 매우 적극적으로 나서는 업체 가운데 하나인데 이는 자사의 GPU 를 기반으로 한 GPGPU 에 집중하고 있기 때문입니다. 엔비디아에 의하면 현재의 GPU 들은 병렬 연산에 최적화되어 있으며 GPU 내의 쉐이더 유닛 혹은 스트림 프로세서들이 점차 범용성을 띄어감에 따라 그래픽 연산이외의 연산도 수행할 수 있게 되었습니다. 다만 슈퍼컴퓨터 혹은 HPC (High Performance Computing) 의 목적에 최적화 시키기 위해서 페르미와 같은 엔비디아의 GPU 는 그 다이 크기가 매우 비대해졌습니다. 왜냐하면 그래픽 연산과 HPC 연산을 위한 부분을 같이 포함하기 때문이죠.
엔비디아는 GPU 를 이용한 컴퓨팅, 즉 GPGPU ( General-purpose computing on graphics processing units ) 가 CPU 로만 단일 병렬 컴퓨팅을 사용할 때 보다 더 나은 이유를 위와 같이 설명하고 있습니다. 본래 CPU 들은 기본적으로 싱글 쓰레드 연산을 빠르게 할 수 있는데 최적화 되어 있어 빠른 클럭과 깊은 파이프라인, 레이턴시에 최척화된 캐쉬, out of order 연산과 슈퍼스칼라 아키텍처 등을 가지고 있습니다. 이는 싱글 쓰레드를 빠르게 연산하는데는 적합하지만 에너지 효율적인 구조라곤 할 수 없어 만약 CPU 만으로 슈퍼컴퓨터를 구성하는 경우 와트당 50 GFLOPS 라는 목표를 달성하기가 매우 곤란해 진다는 것입니다.
이에 비해 GPU 는 CPU 보다 훨씬 단순한 구조들이 반복해서 병렬화를 이미 하나의 칩에서 이루고 있기에 병렬 연산이 대규모로 필요한 경우에 CPU 보다 더 에너지 효율적으로 연산을 시행할 수 있습니다. 다만 모든 연산에서 CPU 보다 빠른 것은 아니며 CPU 가 더 최적의 연산을 할 수 있는 Serial Code 의 연산에 있어서는 사실 CPU 가 더 빠릅니다. 이를 서로 협력하는 구조로 만든다면 더 빠른 연산이 가능하다는 게 엔비디아의 생각입니다.
따라서 미래에는 CPU + GPU 를 통한 하이브리드 컴퓨팅이 대세가 된다는 것이 엔비디아의 전략입니다. 단 엔비디아는 이것이 자신만의 전략은 아니라고 생각하고 있습니다. 이미 AMD 도 향후 fusion 의 미래가 CPU 와 GPU 의 완전한 통합이고 FSA (Fusion System Architecture) 라고 부르는 CPU + GPU 이기종 컴퓨팅을 컴퓨팅의 미래로 생각하고 있습니다.
(여기에 대해서는 http://blog.naver.com/jjy0501/100150248070 http://blog.naver.com/jjy0501/100149245539 를 참조 )
인텔 역시 비슷한 아이디어를 도입하고 있는데 그것이 그래픽 카드 처럼 연결되는 인텔의 MIC 입니다. 인텔은 MIC 를 통해 단일 칩으로 1 TFLOPS 를 넘어설 수 있음을 보여주었습니다. (http://blog.naver.com/jjy0501/100143544525 참조) 결국 인텔 역시 CPU + GPU 와 비슷한 이기종 컴퓨팅을 고려하고 있지만 인텔은 자사의 칩을 GPU 용으로 출시하진 않고 있으므로 병렬 연산 전용의 이기종 컴퓨팅이라는 측면이 다릅니다. (그리고 사실 이 MIC 역시 x86 기반이라 엄밀히 말하면 이기종 컴퓨팅이라고 부르기도 다소 애매한 위치에 있기는 한데 그냥 병렬 연산 전용 하이브리드 컴퓨팅이라고 생각할 수 있을 듯 합니다)
참고로 엔비디아가 하나의 칩을 GPU 와 HPC 시장에 내놓으므로써 얻는 장점이 있습니다. 그것은 게임용으로 대량으로 양산하기 때문에 가격면에서 매우 저렴하게 만들 수가 있다는 점입니다. 사실 GPU 나 HPC 목적 한가지에 최적화된 칩이 아니기 때문에 각각에서 조금씩 손해를 보게 되지만 이는 대량 생산이라는 장점 앞에 충분히 상쇄가 된다는 게 엔비디아의 생각이고 실제 페르미 출시 이후 엔비디아의 행보를 보면 이는 어느 정도 맞는 이야기로 나타나고 있습니다.
(인텔의 MIC 는 GPU 와 유사한 방식으로 CPU 와 하이브리드 컴퓨팅을 지원한다)
하지만 2018 년까지라도 엔비디아 역시 와트당 50 GFLOPS 의 벽을 넘기는 쉽지 않을 것으로 예상하고 있습니다. 물론 그 때가 되야 알겠지만 과연 실제로 20 MW 안쪽으로 엑사플롭스 컴퓨팅을 성공시킬 수 있을 지는 장담하긴 어려운 상태입니다. 하지만 결국 시장의 요구가 있는 만큼 그 해결책이 제시될 수 있을 것으로 기대합니다.
참고
댓글
댓글 쓰기