벤치리뷰·뉴스·정보/아키텍처·정보분석

[분석정보] Ivy Bridge의 강화 포인트는 GPU 아키텍처의 개혁

tware 2012. 4. 27. 20:00

 

 

CPU보다 GPU의 확장에 다이를 할애 Intel의 CPU 전략


 Intel의 "Ivy Bridge"에는 두 가지 중요한 점이있다. 하나는 물론 첫 3D 트랜지스터 칩 인 점, 다른 하나는 GPU 코어를 대폭 강화한 점. 3D 트랜지스터의 중요도가 훨씬 높지만, Intel의 CPU 전략 안에 GPU 코어의 강화도 놓칠 수 없는 포인트이다. Ivy Bridge의 다이는 Sandy Bridge의 다이와 비교하면, GPU 코어의 대형화는 분명하다.

 

Ivy Bridge 및 Sandy Bridge의 다이 비교

 

  Ivy Bridge의 GPU 코어에 대해서는 그다지 화제가 되고 있지 않지만, 코어 디자인은 Sandy Bridge 세대보다 훨씬 확장되고 있다. 단순히 DirectX 11에 대응했다 뿐만 아니라 GPU 코어를 확장 할 수 있도록 재 설계되었다. 그 목표는 결국 AMD의 APU (Accelerated Processing Unit)에 GPU 코어의 성능을 따라 잡는것이라 볼 수 있다.

 Ivy Bridge의 GPU 코어는 최대 16 개의 EU (Execution Unit)에서 각 EU가 단정밀도 부동 소수점 연산 유닛을 4 개 준비하므로 총 64 개의 연산 유닛을 갖추고 있다. 참고로, Ivy Bridge의 GPU 코어는 EU가 6 개인 GT1과 EU가 16 개인 GT2의 두 가지 코어가 있다. 그리고 현재 계획은 내년 Haswell (하스웰) 세대에서 최대 40 개의 EU, 즉 160 개의 부동 소수점 연산 유닛을 갖추게 된다.

 그래도 연산 유닛의 개수는 AMD의 A 시리즈 APU (Llano : 라노)의 320 연산 유닛과 비교하면 절반 50% 에 불과하다. Llano의 GPU 코어 "SUMO '는 아래 그림과 같이 구성되어 있다.

 

Haswell와 Llano의 GPU 비교


 차이가 크기 때문에, Intel이 GPU 코어를 AMD보다 높은 클럭으로 동작시켰다 하더라도 원초적 연산 성능이 못 미치는 것이다. 게다가 AMD는 다음 APU 'Trinity'에서 성능을 더욱 끌어 올린다. 그러나 Sandy Bridge에서는 48 연산 유닛 (12EU) 이었기에, 연산 자원 수는 3.3 배로 증가하고, AMD의 차이를 단숨에 메우게 된다. 이전에는 레이스가되지 않았던 것이 이제 두 회사의 레이스가 시작된다. 따라서 확장 설계가 Ivy Bridge에서 실현되고 있다.

 

SUMO의 GPU 코어


 Intel은 향후 성능 확장은 CPU 코어 부분 보다는 오히려 GPU 코어 부분에서 행하려고 하고 있다. 다이의 빈 영역은 CPU 코어를 늘리는 것이 아니라 GPU 코어를 크게하기 위한 사용 방향에 있다. 현재 GPU 프로그래머는 게임과 일반 어디라도, Intel 아키텍처를 별로 중시하지 않지만, Intel의 전략이 명확하기 때문에 향후에는 Intel 아키텍처도 시야에 넣을 필요가 나올 것이다.

 


Ivy Bridge는 작은 CPU 코어와 큰 GPU 코어의 조합


 Ivy Bridge의 GPU 코어는 다이의 레이아웃을 봐도 Sandy Bridge 와 상당히 다르다. 32nm 공정의 Sandy Bridge에서 22nm 공정의 Ivy Bridge 전환으로 CPU 코어와 LL 캐시 SRAM 셀 크기가 작아졌다. 그러나 GPU 코어는 서두에서 언급한 바와 같이 커져 있다. Intel의 의도는 분명히 공정의 미세화에 의한 트랜지스터의 증가의 장점을 CPU보다 GPU에 배분하고 있다.

 

GPU 코어의 비교


 GPU 코어 프로세서 부분인 EU는 Sandy Bridge의 GT2 구성이 12 개, Ivy Bridge의 GT2 구성이 16 개. 공정이 미세화 되고 있음에도 불구하고, Ivy Bridge EU의 다이 위치는 그다지 작아지고 있지 않다. GPU 코어 프로세서 부분도 기능이 향상되어 커져 있는 것을 알 수 있다.

 구체적으로 Ivy Bridge는 GPU의 무엇이 강화된 것인가. 아래는 Ivy Bridge의 GT2 구성의 GPU 코어 다이어그램 그림이다. Intel이 전체​​ 다이어그램을 공식적으로 공개하고 있지 않기 때문에 추측이 들어있다. Ivy Bridge 및 Sandy Bridge의 GPU 코어 구조의 차이는 한마디로 표현하면 크기 조절이다. Ivy Bridge의 코어는 Sandy Bridge의 구성을 크게 확장하기 쉬운 구조로 되어 있다. 또 다른 특징은 보다 진행된 메모리 계층 구조로 GPU 코어 내부의 메모리 계층 구조가 정리되었다.

 

Ivy Bridge의 그래픽 코어


 Intel의 GPU 코어는 크게 고정기능 유닛 및 제어 장치로 구성된 파이프 라인 부분 (그림 중에서는 최상위 Fixed-Function Units)과 연산 프로세서 코어와 텍스처 유닛 부분 (그림의 중앙 부분 ), 여기에 픽셀 백엔드와 L3 캐시, 래스터 라이저 등의 공유 유닛 군으로 구성되어 있다.

 고정 기능 파이프 라인 부분에 있는 쉐이더가 실제로 연산을 행하는 유닛이 아닌 연산을 행하는 EU 어레이의 스레드 디스패치의 제어를 행한다. 각 EU에 스레드 디스패처에서 명령이 발행된다. EU는 4 단위 씩 "Row"에 정리되고 있고, L1 명령어 캐시를 공유한다. 각 EU는 4-way 연산 유닛이므로 각 Row는 16 개의 연산 유닛을 갖추고 있다.

 그러나 Row는 AMD의 이전 세대 아키텍처의 SIMD와는 달리 Row의 각 EU는 같은 명령을 실행할 필요는 없다. 별도의 명령을 실행할 수 있게 되어 있다고 한다. Row에서 하나의 벡터를 처리하는 것이 아니라, EU가 개별 벡터를 처리한다. 입도가 작은 것이 Intel 아키텍처의 특징이다. 또한 논리 벡터 길이도 가변 다양한 길이와 구성을 가지고 갈 수 있다. 이것은 논리 벡터 길이를 32으로 고정하는 NVIDIA 및 64로 고정하는 AMD와 크게 다른 점이다. Ivy Bridge의 설명은 벡터장은 SIMD8과 SIMD16, SIMD32으로 되어있다. 32의 SIMD 레인의 경우 EU는 8 사이클 (명령어 종류에 따라 다를 수 있다)에 걸쳐 수행해 계산된다.

 텍스처 유닛은 2 개의 Row에 1 유닛이 배치되어 있다. 미디어 샘플러와 있는 것은, 미디어 프로세싱을 위한 데이터 처리 고정 기능 유닛이다. Intel은 쉐이더 코어의 프로그래밍 가능한 미디어 프로세싱에 열심이기 때문에 전용 유닛을 갖추고 있다. 미디어 프로세싱은 미디어 파이프 라인의 "Video Front-End (VFE)"단위로 제어된다.

 


Sandy Bridge와는 다른 Ivy Bridge의 GPU 코어


 Ivy Bridge에서 본, Intel 그래픽 코어의 기본형은 몇 세대 전부터 계승되어 오고 있지만, 점점 진화해 가고 있다. 크게 점프한 것은 Sandy Bridge 였지만, Ivy Bridge는 Sandy Bridge 보다 진화하고 있다.

 아래는 1 세대 이전 Sandy Bridge 추측 다이어그램이다. Sandy Bridge 세대는 DirectX 11 지원되지 않기 때문에 테셀레이션 스테이지가 3D 고정 기능 파이프 부분에 없다. 또한 텍스처 필터링 유닛도 전체 1 유닛을 공유하고 있다.

 

Sandy Bridge의 그래픽 코어

 

 Sandy Bridge에서 EU는 1 개의 Row에 3 유닛 구성이었다. GPU 아키텍처에 익숙하면 4의 배수가 아닌 유닛 수는 기이하게 느껴진다. 그래픽은 4의 배수 단위로 4 개 또는 16 개 (또는 8 개)의 픽셀을 동시에 처리하는 것이 효율적이기 때문이다. 그러나 Intel 아키텍처의 경우 개별 EU가 개별 벡터를 처리하기 때문에 Row 속의 EU의 수를 4의 배수로 유지할 필요는 없다.

 각 EU는 멀티 쓰레드로 Ivy Bridge의 경우 각 EU가 최대 8 쓰레드까지 내부에서 처리 될 수 있다. GT2의 경우 총 128 스레드를 처리할 수 있다. Sandy Bridge의 GT2는 각 EU에서 5 스레드로 총 60 스레드 였기 때문에 스레드 수는 2 배 이상이 된다. 참고로 NVIDIA 아키텍처로 벡터의 각 레인을 스레드로 계산 하려면 Intel의 스레드 수는 NVIDIA의 경우 내부 Warp 수와 AMD의 Wavefront 숫자와 비교해야 한다.

 Sandy Bridge와 Ivy Bridge의 차이점은 GPU 코어의 메모리 계층에도 보인다. Sandy Bridge는 "URB (Unified Return Buffer)" 가 쉐이더 코어의 출력을 디스패처와 3D 파이프 라인에 돌려 보내기 위해 설치되어 있었다. Ivy Bridge는 URB가 일반 L3 캐시로 전환되었다. L2 명령어 캐시와 그림 사이는 아니지만 한층 버퍼 등이 모두 L3 캐시로 흡수되었다.

 이 L3는 EU 측에서 읽기와 쓰기를 한다고 볼 수 있어 범용 컴퓨팅 프로그램에서 스레드 간 메모리 공유에 사용할 수 있는 것으로 보인다. Sandy Bridge 아키텍처는 범용 캐시는 CPU 코어가 공유하는 LL 캐시의 영역 이었지만, Ivy Bridge는 GPU 코어 내에서도 L3를 대비하여 더 코어에 가깝고, 전력 효율이 좋은 캐시가 됐다. 또한 메모리 계층도 더 깔끔한, 현대적인 GPU 같은 아키텍처로 진화했다.

 또한 Sandy Bridge는 1 개의 텍스처 유닛을 공유하고 있었지만, Ivy Bridge에서는 텍스처 유닛이 2 개다 "Half Slice" 라 Intel이 부르는 프로세서 번들에 배치되게 되었다. 간단한 계산으로 텍스처의 최대 처리량이 2 배가 된다. Ivy Bridge의 그림과 비교하면,이 부분의 차이를 알 수 있다.

 또한 디스패치도 바뀌었다. Sandy Bridge의 디스패치 부분의 구성은 정보를 알고 있지 않지만, 아마 1 단으로 디스패치 되고 있다고 볼 수 있다. 이에 비해 Ivy Bridge는 2 단 구성되며, 각 EU에 대한 명령 발행은 로컬 Dispatcher가 담당하게 된 것으로 보인다. 래스터 라이저는 2 개의 Half Slice에서 공유되고 있지만, 하위 Dispatcher에 연결 구성으로 바뀐 것으로 보인다. 그러나 디스패처는 현재로서는 아직 잘 알수 없고 하위 디스패처는 픽셀 쉐이더 전용 가능성도 있다.

 


Haswell의 GPU 코어 Ivy Bridge 아키텍처를 기반

 

Ivy Bridge 및 Sandy Bridge의 그림만 보면 Ivy Bridge에서 아키텍처 변경의 의도가 별로 보이지 않는다. 그러나 아래의 Haswell의 GPU 코어의 추측 그림을 보면 Ivy Bridge의 GPU 코어 아키텍처의 의미를 잘 알게 된다. Haswell의 코어는 아직 모르는 부분도 많지만, 정보를 기반으로 Ivy Bridge 구성을 확장하면 아래 그림과 같다. 대충 말하면 Ivy Bridge의 GPU 코어인 Slice를 두개 묶은 구성이다.

 

Haswell의 그래픽 코어

 Haswell이 추측과 같은 구성을 가지게 되면, Ivy Bridge의 확장 부분이 살아 난다. 먼저 래스터 라이저가 분산된 병렬 처리되는 것으로, 래스터가 병목이 될 가능성이 낮아진다. 이 경우 화면을 영역으로 구분하여 두 슬라이스에 할당으로 보인다. 따라서 렌더링 백엔드까지 개별적으로 나누어져 있어도 문제는 없다.

 Ivy Bridge의 스레드 디스패처 구성도 그림의 구성에서 살아 난다. Ivy Bridge Dispatcher가 2 단 구성으로, 실제 명령 스케줄링은 하위 Dispatcher가 행하는 구성되어있는 경우, Haswell에서 EU가 급증하는 경우에도 대응이 가능하기 때문이다. AMD도 명령 디스패처를 중앙 제어에서 분산했는데, Intel도 비슷한 일을 하려는지도 모른다.

 Intel은 이렇게 Ivy Bridge에서 보다 확장성이 뛰어난 GPU 아키텍처로 전환하여 다음 Haswell에서는 GPU 코어를 단번에 대형화 하는 것으로 보인다. 아래는 Intel의 각 세대 GPU 아키텍처의 구성이다. 저가형은 6EU 구성 바뀌지 않지만, 하이 엔드는 점점 강화되고 있는 것을 알 수 있다.

 

Intel의 그래픽 강화

 현재는 AMD 쪽이 CPU 코어의 크기가 훨씬 작기 때문에 AMD가 더 APU에 더 강력한 GPU 코어를 올릴 수 있다. 그러나 Intel은 공정 기술의 장점이 있고, 그것은 앞으로도 계속한다. 따라서 서서히 Intel의 GPU 코어의 성능 범위도 AMD에 다가간 것으로 보인다. 명백한 것은, GPU 코어의 급속한 발전 전략에 따라 Intel의 GPU 코어가 더 중요한 플랫폼으로 시작하는 것이다. 그것은 Sandy Bridge에서 시작 Ivy Bridge에서 가속되고 있​​다.

 

 

[분석정보] 범용 컴퓨팅을 강화한 Sandy Bridge의 그래픽

 

 

[Research @ Intel 2011] 인텔 HD Graphics로 오픈CL 시현 및 저전력 회로 설계

 

 

[벤치리뷰] 인텔 코어 i5-3570k 리뷰