IDF2010에서 Sandy Bridge에 대해서 알려진 것은 다음과 같습니다.

 

Sandy Bridge는 동일 다이 상에 CPU 코어, 공유 캐쉬, iGPU(Processor Graphics)가 통합

 

CPUiGPU는 캐쉬를 공유한다.

 

터보 부스트 시에는 CPUiGPU의 열과 전력 여유를 이용할 수 있다. 네할렘의 터보 부스터 보다 향상

 

iGPU도 성능이 향상하여 Blu-ray 3D 재생도 가능

 

Sandy Bridge에는 비디오 encode의 가속화 기능이 탑재. 이것을 사용하는 것으로 텔레비전이나 소형 디바이스 용의 비디오를 보다 단 시간에 encode 가능.

 

Sandy Bridge의 데모로 화상의 「HDR(High Dynamic Range imaging)변환이나 비디오의 encode의 데모 피로.

데모에서는 현행의 Core i7 머신에서는 4분이 걸리는 encode 처리를 겨우 2초에 완료.

또 새롭게 탑재된 AVX 명령에 의해 부동 소수점의 SIMD 연산 기능이 2배로 강화되어 예를 들어 3D CG의 렌더링과 같은 처리도 단시간에 행할 수 있다.

 

Sandy Bridge 마이크로 아키텍처는 PC 분야 뿐만이 아니라 임베디드에서 서버까지의 Computing Continuum에 대응. 지금까지 DSP나 전용 프로세서를 사용하고 있던 패킷의 리얼타임 감시와 같은 작업도 Sandy Bridge로 가능

 

복수의 HD 영상을 감시하고, 그 중에서 물건이 가지고 사라져진다고 하는 움직임을 검출하는 데모도 시연

 

미국 Sixense Entertainment CTO 제프 베링하우젠(Jeff Bellinghausen)씨에 의한 데모에서는 동사의 모션 콘트롤러와 Sandy Bridge를 조합한 데모가 피로. 이 콘트롤러는 양손으로 들고 그 움직임을 검출할 수 있다. 데모에서는 3D의 리얼타임 표시를 자유롭게 움직이거나 3D 오브젝트의 일부를 잘라내고, 다른 오브젝트와 합성하는 작업을 콘트롤러로 행해 보였다.

 

Nehalem 마이크로 아키텍처는 Core 2 아키텍처(architecture)의 마이너 체인지에 지나지 않고, 단순하게 말하면 「64bit 대응을 강화한 Core 2」라고도 말할 수 있다. 그러나 Sandy Bridge는 내부의 링 버스 등에서 CPU 코어, iGPU 그리고 통합된 메모리 콘트롤러 등 주변 회로를 묶는 새로운 아키텍처(architecture)로 변경되었다.

 

SIMD명령 AVX를 탑재. 이것에 의해 큰 성능 향상을 실현하고 있다. 그러나 SSE가 아닌 AVX로 기술하지 않으면 CPU 본래의 성능을 낼 수 없는 등 꽤 소프트웨어 개발자에게 의존하는 부분도 있다.

 


저작자 표시
신고
by 흥배 2010.09.23 10:00

강력한 부동 소수점 연산 유닛

AMD는 부동 소수점 연산 유닛을 공유화 하면서 효율을 높이기 위한 수단을 설명했다.


「우리는 부동 소수점 연산 유닛을 공유 자원으로 했다. 다만 유연한 방법으로 공유할 수 있다. 부동 소수점 연산 유닛의 일부씩을 2개의 정수 연산 유닛이 각각 동시에 사용할 수도 있다. 혹은 정수 연산 유닛의 다른 한쪽이 부동 소수점 연산 유닛을 점유 할 수도 있다」(Akrout씨).


부동 소수점 연산 유닛은 병렬적인 스레드 실행이 가능한 유닛이 되어 있는 것 같다. 그리고 AMD는 부동 소수점 연산 유닛 자체를 매우 파워 풀하게 만들었다.


「우리는 부동 소수점 연산 유닛을 가장 효율적인 공유 자원으로 하기 위해서 매우 사이즈가 큰 것으로 했다. 128-bit(SIMD)의 FMAC(부동 소수점적 일본 재래의 주산기)를2개 갖추고 있다. 사용되는 경우에는 매우 고속이고 효율적으로 되도록 했다」(Patla씨).


Bulldozer에서는 부동 소수점 연산 유닛은 공유가 되고 있지만 자원은 강력해서 사용되는 경우에는 높은 퍼포먼스를 발휘할 수 있다. AMD는 Bulldozer의 설명에서는 부동 소수점 연산 퍼포먼스가 성장하는 것을 강조해 왔지만 그 이유는 여기서 명쾌하게 나타나고 있다. 덧붙여서 AMD는 범용 CPU에 넣는 SIMD 유닛의 벡터 길이는 단정도로 4-way(128-bit)가 적절하다고 생각하고 있어 Intel과 같은 단정도로 8-way(256-bit)로 적극적으로 확장하려는 자세는 볼 수 없다.


여기서 재미있는 것은 정수 연산 클러스터가 두 개에 대해서 부동 소수점 연산 클러스터가 하나라고 하는 비율이 비교적 일반적인 것이다. 예를 들면 Sun Microsystems의 Niagara2(UltraSPARC T1/UltraSPARC T2)이나 Rock 등도 두 개의 정수 코어와 하나의 공유 부동 소수점 코어라고 하는 비율이다. 또 구 DEC/Compaq의 Alpha 프로세서의 「EV8」도 4-way의 SMT(Simultaneous Multithreading)로 8개의 정수 연산 유닛의 클러스터에 대해서 4개의 부동 소수점 연산 유닛 구성이었다. multi-thread 성능을 추구하는 CPU가 이 비율을 취하고 있는 것은 멀티 스레딩 시에 효율이 뛰어나는 것을 나타내고 있다고 보여진다. 덧붙여서 EV8의 아키텍터 였던 Joel Emer씨는 현재는 Intel에 재적하고 있다(Intel Fellow, Intel Architecture Group).



● Heterogeneous화로 강력한 데이터 병렬 컴퓨팅 기능도 통합

사용 빈도가 낮은 부동 소수점 연산 유닛을 공유화하는 Bulldozer의 아키텍처는 현재의 작업 부담량에서는 납득할 수 있다. 그러나 향후의 throughput 중시의 작업 부담량에서는 부동 소수점 연산을 자주 사용하는 애플리케이션이 급증할 것이다. AMD도 Intel도 그러한 비전을 내걸고 있다. Bulldozer 모듈로의 부동 소수점 연산 유닛의 공유화는 그러한 흐름에 역행하는 것처럼 보인다. 그러나 그렇지 않다고 한다.


「시간과 함께 Bulldozer코어는 APU(Accelerated Processing Unit)에도 사용되어 간다. APU SOC(System on a Chip)로서 매우 파워 풀한 데이터 병렬 엔진을 CPU 위에 대비하게 된다. (Bulldozer코어의)작은 부동 소수점 연산 유닛의 기능과 자꾸자꾸 증가해 가는 GPU의 데이터 병렬 부동 소수점 연산 기능이 흥미로운 점이다」(Moore씨).


「Bulldozer는 APU가 되는 능력을 가지고 있다. 즉 heterogeneous컴퓨팅 기능을 통합할 수 있다」(Akrout씨).


아마 AMD의 전략은 다음과 같은 것이다. 향후 작업 부담량으로 증가하는 것이 예상되는 부동 소수점 연산의 요구의 상당수는 CPU에 싣는 GPU와 같은 데이터 병렬형 엔진으로 흡수한다. 그 쪽이 효율적이기 때문이다. CPU 코어 측의 부동 소수점 연산 기능의 확장은 APU화를 전제로서 약간 조심스럽게 억제한다. Bulldozer 또 하나의 중요한 컨셉은 heterogeneous화에 있는 것을 생각하면 아키텍처의 선택을 납득할 수 있다.


이렇게 하여 Bulldozer의 컨셉을 개관 하면 AMD가 Bulldozer 모듈을 듀얼 코어라고 세는 이유도 잘 알 수 있다. AMD로서는 주로 사용되는 정수 연산 파이프에 대해서는 완전하게 코어를 나누어 스레드 당 성능을 유지하고 있다. 그 발상의 원점은 현재의 싱글 스레드의 성능에 대해서는 가능한 한 유지하는 것에 있다. 그러니까 듀얼 코어라고 부를 수 있는 것일 것이다.

 

 

출처 : http://pc.watch.impress.co.jp/docs/column/kaigai/20091126_331235.html

신고
by 흥배 2009.12.18 08:30

● throughput 시대에 맞춘 아키텍처 연구

원래는 throughput 컴퓨팅 시대가 온다고 하는 예측으로부터 시작되었다.


「우선 우리는 CPU 아키텍처에 throughput 시대가 온다고 예측했다. 그리고 그 시대를 향해서 가장 파워 효율이 높고, 가장 밀도의 높은 throughput 엔진을 개발하기로 했다. 그것도 싱글 스레드 퍼포먼스에 대해 타협하지 않고. 그 때문에 CPU의 작업 부담량을 연구하여 각 작업의 부담량이 시스템 중에서 어떻게 행동하는지를 연구했다」(Moore씨).


PC용 CPU의 발전은 긴 기간 싱글 스레드의 성능 향상이라고 하는 주박에 묶여 있었다. 그러나 AMD는 2002~2004년 정도에(Moore씨가 AMD에 참가한 전후)에서 향후는 throughput가 최대 중요 요소가 된다고 판단했다. 거기서 스레드의 병렬 처리로 고 throughput를 얻을 수 있고 게다가 필요한 트랜지스터 카운트가 적은 고효율로 고밀도의 아키텍처를 연구하기 시작한 것 같다.


일반적으로 CPU 코어를 심플하게 하면 면적 당 코어 수가 증가하여 throughput는 높아진다. 그러나 그 경우 싱글 스레드 퍼포먼스가 떨어져 버린다. AMD는 싱글 스레드 성능을 떨어뜨리지 않고 끝내는 것도 최대 중요 포인트로서 잡았다. 거기서 작업 부담량을 분석하여 싱글 스레드 성능을 유지하면서 고 throughput를 달성할 수 있는 CPU 아키텍처를 찾았다. 그것이 Bulldozer의 출발점이었다.



● Busy인 것은 정수 유닛으로 부동 소수점 유닛은 잠시

AMD는 Analyst Day의 프레젠테이션 중 작업 부담량 연구 결과가 어떻게 되었는지를 다음과 같이 설명했다.


「우리는 모든 어플리케이션의 작업의 부담량을 조사했다. 그 결과 프로세서 중에서 가장 자주 사용하고 있는 부분은 정수 연산 유닛이며 부동 소수점 연산 유닛은 아닌 것을 알 수 있었다. 부동 소수점 연산 유닛도 사용되지만 대다수(의 명령)는 정수 연산 유닛에 간다」(Chekib Akrout씨(General Manager, Technology Group)).


부동 소수점 연산 유닛은 실은 99%의 시간은 사용되지 않았다. 수치 연산은 매우 보기 드물었다」(Patrick Patla씨(Vice President and General Manager, AMD Server Business)).


즉 CPU 코어 중에서 사용 빈도 높은 부분과 낮은 부분이 있으며 붐비는 부분이 성능의 열쇠가 되는 것을 AMD는 인식했다. 그리고 빈도가 높은 것이 정수 연산부이며 빈도가 낮았던 것은 부동 소수점 연산부라고 하는 것이다. 특히 Patla씨가 담당하는 서버 시장의 경우는 하이 퍼포먼스 컴퓨팅(HPC)이외에서는 부동 소수점 연산은 거의 사용되지 않을 것이다.


거기서 AMD는 클러스터 아키텍처 Bulldozer를 선택하게 된다. CPU 코어 안을 분할하여 정수 연산부 등을 스레드 전용의 자원으로 하는 한편으로 부동 소수점 연산부를 스레드 공유 자원으로 했다.


「우리는 Bulldozer 모듈 안에 2개의 정수 연산 유닛과 2개의 정수 스케쥴러를 분리하여 구현했다. 이 2개의 정수 연산 코어는 각각이 1 스레드를 완전하게 독립하게 병렬로 실행 할 수 있다. 그 때문에 최고 퍼포먼스를 달성할 수 있다」(Akrout씨).

Bulldozer의 아키텍쳐



스레드 간 간섭이 없는 정수 연산 클러스터

Moore씨에 의하면 이 아키텍처 선택은 싱글 스레드 퍼포먼스를 떨어뜨리지 않고, 효율을 올리기 위한 선택이었다고 한다.


「우리는 2개의 완전하게 분리된 완전한 정수 연산 부품을 갖추는 것이 바람직하다고 깨달았다. 2개의 분리한 정수 코어는 각각이 정수 오퍼레이션에서는 풀 기능을 갖춘다. 1개의 정수 코어가 다른 정수 코어와 실행 시에 간섭하는 것이 없다. 또 분리된 데이터 캐쉬, 분리된 스케쥴러를 갖춘다. 그 때문에 양쪽 모두의 정수 연산 코어가 동시에 사용되고 있는 경우에서도 싱글 스 레드 퍼포먼스는 매우 좋은 것이 된다. 그것이 열쇠였다」.


AMD의 판단은 Hyper-Threading과 같은 SMT 기술에서는 정수 연산 자원이 충분하지 않으면 자원의 경합이 발생하고 성능이 억제되어 버린다고 하는 것이었다. 그것보다 사용 빈도가 높은 정수 연산 파이프는 각각의 스레드마다 분리한 클러스터 베이스 멀티 스레딩이 퍼포먼스를 올린다.


한편 스레드 간 경합 하는 빈도가 낮다고 예상되는 부동 소수점 연산 유닛은 공유로 했다.


「통상은 부동 소수점 연산 유닛은 별로 사용되지 않는다. 그러니까 공유는 완벽하게 자연스러운 일이다」라고 Moore씨는 설명하고 있다.

부동 소수점 유닛을 공유하는 Bulldozer

 

 

 

출처 : http://pc.watch.impress.co.jp/docs/column/kaigai/20091126_331235.html

신고
by 흥배 2009.12.17 08:30

● Bulldozer아키텍처에 의해서8코어를 싣는 Zambezi

AMD는 2011년에 Bulldozer 아키텍처의 최초 CPU로서 최대 8코어의 「Zambezi(잠비지)」를 투입한다. Zambezi는 GPU코어를 탑재하지 않는 현재의 AMD CPU와 같은 CPU 코어만의 제품이다. AMD의 현재 라인 업으로 말하면 Phenom II계가 Zambezi로 옮겨지게 되는 것 같다.


여기서 포인트는 “코어”수다. 현재의 45nm 프로세스의 Phenom II에서 데스크탑 CPU로서 경제적인 die size의 한계인 200평방mm대에서는 CPU 코어를 4개 밖에 탑재할 수 없다. 6코어는 300평방mm대가 되어 코스트적으로 통상의 데스크탑 CPU의 테두리를 초과해 버린다. AMD는 2010년 6 코어의 데스크탑 CPU「Thuban(투밴)」도 투입하지만 코스트적인 것을 생각하면 아래의 가격대로는 내릴 수 없을 것이다.


그런데 Bulldozer에서는 32nm프로세스로 8코어를 탑재할 수 있게 된다. 이것이 경제적인 die size내에서의 이야기라고 하면 AMD의 퍼포먼스 CPU는 4코어로부터 8코어로 코어 수를 배증시키게 된다.


1세대 프로세스 기술이 미세화하면 2배의 트랜지스터가 실리므로 2배 수의 코어가 되는 것은 계산이 맞는 것처럼 보인다. 그러나 실제로는 CPU 코어 수가 증가하는 것에 따라서 CPU 코어 이외의 언 코어의 부분이 비대화 해 버리므로 단순하게 2배로는 좀처럼 할 수 없다. Intel도 32nm의 퍼포먼스 CPU는 당면의 Westmere(웨스트미어)세대로는 6코어(Gulftown:걸프 타운) 다. 그런데 AMD는 Zambezi로 8코어를 예정하고 있다.


아마 이것이 Bulldozer아키텍처의 이점이다. CPU 코어를 multi-thread 처리에 최적화하는 것으로 단위면적 당 “코어 수”를 늘릴 수 있다. 결과적으로 CPU의 면적 당 컴퓨팅 성능을 올릴 수 있다.

K10의 die size

AMD CPU의 die size 추이

AMD의 데스크탑 전용 CPU의 추이



● Bulldozer 모듈은 듀얼 코어인가 싱글 코어인가

다만 여기에 정의의 문제가 하나 부상한다. 그것은 Bulldozer의 경우 “CPU 코어”라고 불러도 좋은 것인가라고 하는 점이다. Bulldozer의 경우는 2개의 CPU 코어가 부분적으로 자원을 공유하여 「Bulldozer 모듈」을 형성하고 있다. 즉 Zambezi는 4개의 Bulldozer 모듈을 탑재하고 있게 된다. 이 경우 Bulldozer 모듈을 하나의 멀티 스레딩 코어라고 셀지 아니면 Bulldozer 모듈을 2개의 코어라고 셀 것인가라는 것이다.


당연 라이벌 Intel은 Bulldozer의 “코어”는 멀티 스레딩 코어의 일부이며 8코어는 실제로는 4코어라고 주장할 것이다. Intel의 Hyper-Threading 코어는 2 스레드를 SMT(Simultaneous Multithreading)로 실행할 수 있다. 그 때문에 Intel CPU는 4코어로 8 스레드, 6코어로 12 스레드가 된다. 당연 Intel은 대 Bulldozer의 마케팅 전략으로서 CPU를 코어는 아니고 병렬 스레드 수로 카운트 하게 될 것이다. 단순한 병렬 스레드 수라면 다이 면적 당으로 Intel측이 위가 될 가능성이 높다. 이 부분은 마케팅이지만 실제로 기술상 Bulldozer의 코어를 코어라고 불러도 좋은지 어떤지는 논의가 일어날 것이다.


이 점에 대해서 AMD에서 Bulldozer의 개발을 리드했던 AMD의 Chuck Moore씨(Corporate Fellow and CTO Technology Development)는 「2009 Financial Analyst Day」에서 다음과 같이 명쾌하게 단언하고 있다.


우리가 Bulldozer 모듈이라고 부르고 있는 것은 실제로는 듀얼 코어다. 그러나 최적화된 듀얼 코어다」.


Moore씨가 말하듯이 Bulldozer 모듈이 80%의 multi-thread throughput를 얻을 수 있다면 모듈은 듀얼 코어라고 말해 좋은 것 같다. 그러나 Moore씨의 설명에 의하면 그 진심은 더 깊은 곳에 있는 것 같다.

멀티 스레딩 비교

 

 

 

출처 : http://pc.watch.impress.co.jp/docs/column/kaigai/20091126_331235.html

신고
by 흥배 2009.12.16 08:30
| 1 |

티스토리 툴바