스페인 바르셀로나 슈퍼컴퓨팅센터에서 ARM 코어 기반의 슈퍼컴퓨터를 제작하겠다는 몽블랑 프로젝트를 진행 중입니다.

이 프로젝트의 목적, 목표를 이해하기위해서는 일단 현재 슈퍼컴퓨터의 상황에 대해 알아야합니다.
슈퍼컴퓨터 순위는 크게 두 가지 입니다.
절대 성능으로 순위를 매기는 Top500 (
http://www.top500.org/, 매년 두 번 순위 발표.)
전력대성능비(MFLOPS/W)로 순위를 매기는 Green500 (
http://green500.org/, 매년 두 번 순위 발표.)



2012년 11월 발표에서 Top500 1위는 Titan 입니다.
AMD의 불도저 기반 옵테론, 엔비디아 K20x 기반으로,
17.59 PFLOPS (8209 kW),
2142.77 MFLOPS/W 입니다.


2012년 11월 발표에서 Green500 1위는 Beacon
2499.44 MFLOPS/W 입니다.
전력이 44.89 kW이니 성능은 약 112.2 TFLOPS 입니다.
Top500 1위인 Titan은 3위입니다.

종합해보면, 현재 슈퍼컴퓨터의 전성비는 최대 2.5 GFLOPS/W 입니다.
몽블랑 프로젝트는 저전력 ARM 코어를 이용해서,
더 낮은 비용으로 더 높은 전성비를 갖는 슈퍼컴퓨터를 만들고자하는겁니다.



몽블랑 프로젝트의 1차 목표는 2013년 말에 Green500 진입.
장기적으로 Top500 진입입니다.
(국내 기사에서는 2013년 말에 Top500 진입이라는데 뭐가 맞는건지...)

그것을 위한 1차적인 목표 성능이 50 PFLOPS, 7MW
7.14 GFLOPS/W 로 기존 슈퍼컴퓨터의 3배에 육박(2.85배)하는 전성비입니다.
(장기적인 목표인 200 PFLOPS, 10MW 면 20 GFLOPS/W 입니다.)


그렇다면 ARM 코어의 전성비가 어느 정도인가.



작년 자료로 엑시노스 5450 을 예로 들었습니다.
최근 기사화되었듯이, 최종적으로 프로토타입에 엑시노스 5250 (엑시노스 듀얼)이 선정되었습니다.
(
http://www.montblanc-project.eu/news/mont-blanc-project-selects-samsung-exynos-5-processor)
전성비 측면에서는 큰 차이가 없을겁니다.



ARM Cortex-A15 코어는 128bit SIMD를 갖고 있기때문에,
DP(Double Precision, 배정밀도) 기준으로 1코어당 4 ops/cycle 이고,
2GHz, 4코어라면 32 GFLOPS 가 나옵니다.
전성비가 8 GFLOS/W 로 기존 제품의 최소 2배입니다.



이는 부동소수점 연산에 적합하다는 GPU와 비교해도 60% 이상 높은 수치입니다.


 


GPU까지 활용한다면 전성비는 더 좋아집니다.
SP (Single Precision, 단정밀도) 연산 기준으로,
Mali-T658 (310MHz 추정) 의 전성비는 56 GFLOPS/W 입니다.
Titan 에 들어간 엔비디아의 K20x 의 전성비가 16.8 GFLOPS/W 이니 약 3.3배네요.

사실 DP가 더 중요한데 DP 기준으로는 K20x 가 5.7 GFLOPS/W 입니다. (1.31 TFLOPS/235W)
인텔 Xeon Phi 가 4.5 GFLOPS/W (1.011 TFLOPS/225W)
Mali-T658 의 DP 성능 최대 예측치는 약 40 GFLOPS (310MHz) 입니다. 13.2 GFLOPS/W 인거지요.
K20x 대비 약 2.3배인데 GPU 활용을 확신할 수 없는 것이,
엔비디아가 Cuda core를 활용한 GPGPU를 적극 지원하는 것처럼, Mali 를 활용한 GPGPU가 가능한 상황이 만들어져있는가하는게 문제.

아래 자료는 구성 개념과 각 성능 지표 얘기인데, 엑시노스 5450 기준이라 지금 시점에서는 참고 자료정도인듯 합니다.

 

 



 

위의 자료는 테그라와 모바일 쿼드로를 사용한 프로토타입으로 1.5 GFLOPS/W 의 전성비를 달성했다는 내용.

프로토 타입에서 나온 문제점들은 다음과 같습니다.

- 메모리, Interconnect 의 전력 소비가 높음.
개선 가능성이 높은 부분.

- 소프트웨어적 지원 부족.
ARM 기반으로는 처음이니 말할 필요도 없는 부분.

- 저전력 프로세서임에도 불구하고 냉각이 필요.
효율 저하의 원인 중 하나로 냉각문제가 지목되었습니다.
방열판을 통한 패시브 쿨링으로는 부족했다고 합니다.
하지만 액티브 쿨링을 하게되면 전력소비가 증가합니다.


그럼 어떻게 50 PFLOPS, 7MW 라는 스펙을 달성할 것인가.



엑시노스5 쿼드 가 물망에 올라있는 것 같으니 엑시노스 5450 을 기준으로 계산해보겠습니다.

CPU : Cortex-A15 2.0GHz 쿼드코어
GPU : Mali-T658

DP 기준으로,
CPU : 4cores x 4 ops/cycle x 2.0GHz = 32 GFLOPS
GPU : 32pipes x 8 ops/cycle(추정) x 309MHz(추정) = 80 GFLOPS
위의 계산에서는 CPU 성능만 고려하고, 목표효율은 65% 로 보는듯 합니다.
(테그라2 기반 프로토 타입에서 효율이 57%가 나왔습니다.)

32 GFLOPS x 65% = 20.8 GFLOPS
프로세서당 20.8 GFLOPS 가 나옵니다.

목표치인 50 PFLOPS를 위해서는 약 240.4만 개의 프로세서가 필요합니다.
(50 x 10^6 / 20.8 = 2403846)

자료에는 생략되어있는데, 슈퍼컴퓨터 시스템 소비전력에서 프로세서의 비중은 32.5% 라고 합니다.
메모리와 함께 가장 큰 비중을 차지합니다.
목표 전력이었던 7MW의 32.5% 는 2275 KW 입니다.
(위 자료는 계산 실수가 있네요.)

2275 KW / 240.4만개 = 0.94 W/processor 입니다.
이는 실현 불가능한 수치입니다.
위 자료에서 프로세서(소켓)당 5W 로 잡고 있으니까요.
코어당 0.23W 은 가능하다고 하는데, AP에 코어만 있는 것도 아니고...
(자료에서는 Cortex-A9 1GHz 가 0.25W/core 라고 밝히고 있음.)

그럼 50 PFLOPS, 7MW 을 위해서는 칩당 성능이 얼마여야하는지 계산해보겠습니다.

Blade-based system은
108 blade/rack
12 socket/blade 인가 봅니다.
rack 당 1296개의 칩이 들어간다는 얘기지요.
5 W/socket 으로 가정했으니, 6480 W/rack 입니다.

프로세서 전력이 2275 kW 이니, rack 개수는 약 352개 입니다.
(2275000 / 6480 = 351.08)
352 rack -> 456192 processor

50 PFLOPS 를 456192개의 칩으로 달성해야하니까,
약 110 GFLOPS/processor 이 나옵니다.
소비전력, 스펙 변화 등의 조건이 변한다면 결과가 달라지겠지만, 이 계산만보면 이는 CPU만으로는 불가능하고 GPU까지 활용해야합니다.

- 참고
프로토타입에 엑시노스 5250 이 들어갔으니,
엑시노스 5250 의 스펙을 기준으로 계산해보겠습니다.
CPU : Cortex-A15 1.7GHz 듀얼코어
GPU : Mali-T604 533MHz

DP 기준으로,
CPU : 2core x 4 ops/cycle x 1.7GHz = 13.6 GFLOPS
GPU : 8pipes x 4 ops/cycle x 533MHz = 17 GFLOPS
위의 계산에서는 CPU 성능만 고려하고, 목표효율은 65% 로 보는듯 합니다.
(테그라2 기반 프로토 타입에서 효율이 57%가 나왔습니다.)

13.6 GFLOPS x 65% = 8.84 GFLOPS
칩당 8.84 GFLOPS 가 나옵니다.

목표치인 50 PFLOPS를 위해서는 약 570만 개의 프로세서가 필요합니다.
(50 x 10^6 / 8.84 = 5656108.6)

목표 전력이었던 7MW의 32.5% 는 2275 KW 입니다.

2275 KW / 570만개 = 0.4 W/chip 입니다.

그럼 50 PFLOPS, 7MW 을 위해서는 칩당 성능이 얼마여야하는지 계산해보겠습니다.

위의 자료에서는 엑시노스 5450 의 전력을 5W 로 계산했는데,
저는 엑시노스 5250 의 스펙을 고려해서, 칩당 2W 정도로 잡겠습니다.

Blade-based system은
108 blade/rack
12 socket/blade 인가 봅니다.
rack 당 1296개의 칩이 들어간다는 얘기지요.
2 W/socket 으로 가정했으니, 2592 W/rack 입니다.

프로세서 전력이 2275 kW 이니, rack 개수는 약 878개 입니다.
(2275000 / 2592 = 2700.61)
878 rack -> 1137888 processor

50 PFLOPS 를 1137888개의 칩으로 달성해야하니까,
약 44 GFLOPS/chip 이 나옵니다.
-

엑시노스 5450 기준 계산에서 110 GFLOPS/processor 가 나왔는데,
효율 65% 를 고려하면 이론적 피크치는 170 GFLOPS 가 나와야합니다.
CPU의 피크치가 32 GFLOPS 이니 나머지 138 GFLOPS 는 GPU로 해결해야되고,
Mali-T658 이면 클럭이 540MHz 내외는 되어야합니다.
(꽤 높네요. 엑시노스 5250 GPU 클럭이 533MHz 인 것도 이런 것까지 염두한 것일지도?)

엑시노스 5450 은 28nm HKMG 공정으로 생산한다는데, 그렇다면 저 스펙에서 소비전력 5W가 가능할지도 모르겠습니다.

결과적으로 GPU를 활용해야만 가능한 수치인데, 이를 위한 소프트웨어적인 기반이 마련되어있느냐가 의문이네요.
현재 계산대로 간다면 성능은 약 30 PFLOPS 가 나오게되고, 전성비는 약 4.4 MFLOPS/W 입니다.
이 정도 수치면 Green500 뿐만 아니라 Top500 에 들어갈 수준이지만, 프로토타입에 드러난 문제점들이 있기때문에 이대로 이루어질지는 지켜봐야할겁니다.


-
목표대로 될 것 같지는 않은데 그래도 성과는 있을 것 같습니다.
중간에 없던 일이 될 수도 있으니,
목표대로 흘러가려면 해야할 일이 많아보이는데, 일단 지켜봅시다.

-

- 2012.11.20
내용 수정, 보강.
다시볼 때마다 구멍이 왜 이렇게 많은건지.
-



Posted by gamma0burst Trackback 0 : Comment 4

댓글을 달아 주세요

  1. addr | edit/del | reply 반도체업종종사자.. 2012.11.19 09:07

    자료 분석 감사합니다. 재미 있게 잘 보았네요..ARM이 점점 대단해지는 것 같습니다..

  2. addr | edit/del | reply lee 2012.11.21 08:47

    내일은 아니지만 자랑스럽네요 저런대에
    삼성칩이 이용된다니!