퍼포먼스가 80% 올라간 Bulldozer


Bulldozer의 개발을 리드한 AMDChuck Moore(Corporate Fellow and CTO Technology Development)2005Analyst Day에서 클러스터 아키텍처의 이점을 설명.  CPU 코어의 자원을 50% 늘리는 것만으로 80% throughput가 오른다고 설명하고 있었다. 이 때의 설명으로는 Hyper-Threading과 같은 SMT(Simultaneous Multithreading)로는 자원도 조금으로 끝나지만 퍼포먼스 향상도 적다고 설명하고 있다.


50%CPU 자원 증가로 80%의 퍼포먼스 증가

Moore씨는 이번 Analyst Day가 아키텍처의 설명을 통해서 Bulldozer80% throughput 향상을 달성할 수 있다고 말하고 있다. AMD는 클러스터 아키텍처에 관련된 특허도 몇 개인가 신청(United States Patent Application 20090006814, 20090024836 )하고 있다.


Bulldozer의 구체적인 구조는 아래의 그림대로. 1개의 Bulldozer Module 안에 2개의 정수 연산 코어가 있다. 각각의 정수 연산 코어는 4개의 정수 연산 파이프라인을 가진다고 한다. 4개의 파이프는 ALU(연산 유닛)AGU(주소 생성 유닛)의 페어가 4개나 그렇지 않으면 2개의 페어로 합계 4 파이프로 되어 있는지 아직 밝혀지지 않았다.

현재의 AMD 아키텍처에서는 ALUAGU의 페어가 3개로 최대 3개의 x86 정수 연산 명령을 실행할 수 있다. ALUAGU의 페어가 4개라고 하면 1개의 정수 연산 코어가 현재의CPU 코어보다 확장되고 있다. ALUAGU의 페어가 2개라고 하면 현재 코어의 2/3의 규모가 된다.



Bulldozer의 아키텍처


Bulldozer의 구체적인 구조


Bulldozer Module의 명령어 인출과 디코드는 각 사이클 4명령이라고 되고 있다. x86에서 4명령이 연산 명령과 메모리 오퍼레이션 명령으로 분해되어 8개의 uOPs(내부 명령)이 된다고 생각하면 정수 연산 파이프가 ALUAGU의 페어가 2개이면 정확히 계산이 맞는다.


부동 소수점 연산 유닛은 128-bitSIMD 승산,누산 유닛이 2개 갖춰져 있다. 2 유닛을 사용하여 256-bitIntel AVX 호환 SIMD 명령을 실행할 것으로 예상된다. AMDBulldozer에 독자적인 SSE5를 구현할 계획을 변경, Intel256-bit SIMD 명령 AVX에 독자 명령을 더한 명령을 구현하기로 했다. 부동 소수점 연산 유닛은 다른 한쪽의 스레드가 2 파이프를 양쪽 모두 점유 하는 것이나 양쪽 모두의 스레드로 1파이프씩 쉐어 하는 것도 가능하다고 한다.



AMD의 명령 확장의 변경


AVX포맷의 명령도 수중에 넣는다




AMD가 차기 아키텍쳐 「Bulldozer」와「Bobcat」의 개요를 공표 - 1

출처 : http://pc.watch.impress.co.jp/docs/column/kaigai/20091112_328392.html
by 흥배 2009. 11. 14. 18:29