• 검색 결과가 없습니다.

2. ARCHITECTURE OF HIGH-PERFORMANCE COMPUTERS

2.8. P ROCESSORS

2.8.4. IBM POWER4+

POWER4+을 잇는 POWER5가 IBM의 다른 서버 라인에서 이미 사용 중이지만, IBM의 슈 퍼컴퓨터 라인에서 p690시리즈 노드들은 아직도 POWER4+ 칩을 계산 엔진으로 사용하고 있다. 의심할 여지없이 POWER5가 p690 타입 시스템에서도 사용될 것이 분명하지만, 아직 은 그렇지 않다. 그래서 이곳에서는 POWER4+와 이를 대신할 POWER5 칩 둘 다에 대해 알아볼 것이다.

이 자료가 작성되는 현재 시점에 POWER4+의 클럭 수는 1.5 ~ 1.9 GHz 정도이다. 이것은 POWER4 칩의 클럭을 증가시킨 것이고 클럭 수가 증가한 것 외에 다른 새로운 특성은 없 다. 아래 그림 10a에서 볼 수 있듯 IBM은 하나의 칩에 두 개의 프로세서 코어를 넣어 칩의 크기는 많이 커졌다. 칩에는 0.5 MB 크기의 세 개의 모듈로 구성된 1.5 MB 크기의 2차 캐 시가 있다.

그림 10a: Diagram of the IBM POWER4+ chip layout

L2 캐시 모듈은 Core Interface Unit (CIU) 스위치에 의해 프로세서와 연결된다. 이 스위치 는 포트당 40 Byte/cycle의 대역폭을 가지는 2ⅹ3 크로스바로, 각 프로세서의 L1 명령어 캐시나 데이터 캐시로 32 바이트를 올릴 수 있고, 동시에 8 바이트 값을 저장할 수 있다.

또한 각 프로세서에는 Fabric Controller와 연결되어 non-cacheable 연산을 담당하는 Non-cacheable Unit이 있다. Fabric Controller를 통해 MCM 내에 있는 세 개의 다른 칩들 과 통신(대역폭 13.6 GB/s: 1.7 GHz) 하며, L3 캐시와의 통신(대역폭 9.0 GB/s: 1.7 GHz)과 다른 MCM들과의 통신(대역폭 6.8 GB/s: 1.7 GHz)에서도 Fabric Controller를 이용하게 된 다. 칩에는 다양한 디바이스들이 있는데 L3 캐시 디렉터리, off-chip latency를 현저하게 낮 추는 L3와 메모리 컨트롤러, GX 버스의 소통량을 담당하는 GX 컨트롤러 등이 있다. GX 버 스는 시스템으로(부터) 데이터를 전송하고 실질적으로 I/O에 사용된다. L3 캐시의 최대 크 기는 32 MB나 된다. 그림 10a에는 logging과 에러를 검출하는 logic과 performance monitor와 같은 일부 통합 장치들이 빠져 있다.

그림 10b: Block Diagram of the POWER4+ processor core

POWER4+ 프로세서 코어는 여러 가지 면에서 POWER3 프로세서와 유사하다. 3개가 아닌 2개의 Integer Functional 유닛(IBM에서는 Fixed Point Unit이라고 함)이 있고 POWER4 코어는 Fused Branch/Dispatch Unit 대신 분리된 Branch and Conditional Register Unit을 가져, 모두 8개의 실행 유닛을 가진다. 특이한 것은 명령어 캐시의 크기가 데이터 캐시 크 기의 2배인 것이고(명령어 캐시: 64 KB 직접 사상, 데이터 캐시: 32 KB 2-way 집합 연관) 모든 실행 유닛은 그들과 관련된 명령어 큐(queue)를 가진다는 것이다. 이 명령어 큐는 다 양한 단계에서 200개에 이르는 명령어를 out-of-order 처리할 수 있다. 이렇게 많은 명령 어를 동시에 처리하는 것은 매우 정밀한 분기 예측 능력을 요구한다. 차례대로 분기 예측 logic에 의해 영향을 받는 Instruction Fetch Address Register의 제어 하에 명령어 캐시에 서 명령어가 꺼내어 진다. 이것은 각각 16K entry를 가지는 로컬과 글로벌 Branch History Table(BHT)과 하나의 선택 테이블(selector table)로 구성된다. 선택 테이블은 특정한 상황 에서 최적의 예측을 얻게 되는 BHT를 기억해 둔다. 이는 앞으로 유사한 경우가 나타날 경 우에 있어 BHT의 예측 우선순위를 두기 위한 것이다.

POWER3와 달리 fixed point 유닛은 한 사이클에 완료될 수 있는 정수 연산뿐 아니라 곱셈 이나 나눗셈과 같이 여러 사이클이 걸리는 정수 연산도 수행한다. 나눗셈이나 제곱근 계산 과 같이 많은 사이클이 소비되는 연산을 위해 따로 준비된 부동소수 연산 유닛은 없다. 모 든 부동소수 연산은 FP 유닛에 의해 처리되고 PA-8800처럼, axpy 형태의 연산처리에 적 합한 명령어가 있다. 이것을 IBM에서는 Fused Multiply Add (FMA)라고 하며 이를 통해 매 사이클 마다 2개의 부동소수 연산처리가 가능하다. 이로 인해 1.9 GHz 클럭을 가지는 프로 세서의 이론 최고성능이 7.6 Gflop/s에 이른다. HP 프로세서처럼, 부동소수 연산의 구성 자 체가 FP 유닛이 FMA를 수행할 수 있는 형태여야 하며 그렇지 않다면 성능은 절반으로 떨 어진다.

여기서 언급하고 있는 이중 코어를 가지는 프로세서가 일반적으로 많이 사용되지만, HPC

분야에서는 단일 코어를 가지는 프로세서도 권장되고 있다. 그 이유는 L2 캐시로부터의 대 역폭이 CPU들 사이에 공유될 필요가 없어서 108.8 GB/s에 이르는 경합없는(contention-free) 전송을 할 수 있기 때문이다. 이에 반해 이중 코어 버전에서는 163.2 GB/s의 최대 대 역폭을 두 개의 CPU에서 같이 사용해야 한다.

패키징이나 그 구현 등의 방법이 조금 다르긴 하지만 현재 세 업체(AMD, Compaq, IBM)에 서 프로세서를 glueless coupling하는 기술을 가지고 있다. 세 업체 모두 구현방식에서는 다수의 프로세서를 가지는 low-latency의 SMP 노드 구성을 가능하도록 하고 있어, 최근의 SMP 노드 기반 병렬 시스템 구축에 대한 경향을 촉진하고 있다.

문서에서 최신 슈퍼컴퓨터에 대한 이해 (페이지 29-32)