본문 바로가기
스마트폰/애플 APPLE

APPLE A7 분석 (3) GPU 성능 및 G6430 사양 추정.

by gamma0burst 2013. 10. 1.
반응형



GPU 사이즈는 전체의 22%. 23mm2 정도입니다.
GPU 코어만 따지면 16mm2 정도입니다.
32nm A6의 SGX543MP3의 GPU 코어 면적이 22mm2 정도였습니다.
규모로 보면 A6 대비 95~100% 수준입니다.

GPU의 종류와 클럭을 추정해보겠습니다.
우선 벤치마크 결과부터 보겠습니다.



A6 대비 2배라더니 4배 가까운 성능입니다.


2.5 이집트 HD 오프스크린으로 비교해보면 A6 대비 2배입니다.
아무래도 업계에서 말하는 성능 기준은 2.5 이집트인가 봅니다.
2.5가 2.7보다 현실적인 조건이기도 할테니 2.5를 기준으로 테스트하고 있을 가능성이 있겠습니다.

GPU는 거의 무조건 이매지네이션의 제품일 것이고 구체적인 종류가 의문입니다.
다이 사진을 통해 GPU 코어 구성이 4개라는건 확인할 수 있습니다.

먼저 SGX5 계열일 가능성.
그렇다면 SGX543MP4 혹은 SGX554MP4 일겁니다.
(애초에 다이 이미지를 봐도 SGX5 계열일 가능성은 없다고 봐야하는데 그래도 확인은 해봐야하니까요.)





텍셀 3.3 GTexels/s
지오메트리 68 Mtriangles/s

- SGX554MP4 일 가능성.
3.3 GTexels/s에 효율을 반영하면 이론적인 텍셀성능은 4.0 GTexels/s 이고, SGX554MP4의 텍스처 유닛수로 클럭을 추측하면 480~500MHz입니다.
68 Mtriangles/s에 효율을 반영하면 이론적인 지오메트리성능은 105 Mtriangles/s 이고, SGX554MP4의 사양으로 클럭을 추측하면 160MHz 정도입니다.
클럭차이가 너무 심하지요.
SGX554MP4의 가능성은 없다고 봐야겠습니다.

- SGX543MP4 일 가능성.
3.3 GTexels/s에 효율을 반영하면 이론적인 텍셀성능은 3.9 GTexels/s 이고, SGX543MP4의 텍스처 유닛수로 클럭을 추측하면 480MHz입니다.
68 Mtriangles/s에 효율을 반영하면 이론적인 지오메트리성능은 125 Mtriangles/s 이고, SGX554MP4의 사양으로 클럭을 추측하면 200MHz 정도입니다.
역시나 클럭차이가 너무 심합니다.
SGX543MP4의 가능성은 없다고 봐야겠습니다.

SGX5 계열일 가능성은 없습니다.
그렇다면 PowerVR6 계열이라는건데 다이 이미지에서 GPU 코어가 4개인 것으로 보아 클러스터가 4개인 G6430이나 G6400일듯 합니다.
이 둘의 차이는 프레임 압축 버퍼 로직의 유무입니다.
로직이 있는 G6430은 성능을 중시한 것이고, 없는 G6400은 다이 사이즈를 중시한 것이겠지요.



G6430의 사양을 보면 2개의 텍스처 유닛, 1개의
Tiling Coprocessor, 1개의 Pixel Coprocessor가 있습니다.
텍셀성능은 텍스처 유닛과 관계되어있고, 지오메트리성능은 Tiling Coprocessor와 관계되어 있습니다.

- G6430/G6400일 가능성.
텍스처 유닛은 2개이고 하나당 4 Texels/cycle 입니다.
3.3 GTexels/s에 이를 반영하면 클럭은 420MHz 입니다.
SGX5 계열과 효율이 비슷하다면 클럭은 450~500MHz입니다.

450MHz에 1개의
Tiling Coprocessor를 통해서 이론적인 지오메트리 성능을 계산할 수 있을면 좋을텐데 현재 정보가 부족합니다.
SGX5 계열은 클럭 x 유닛수의 1/12이었고, Mali-T604 등의 미드가르드 아키텍처 계열은 1/7입니다.
그냥 1/1이라고 가정하면 이론성능은 450 Mtriangles/s입니다.
벤치마크에서 나온 68 Mtriangles/s은
450 Mtriangles/s의 15%인데 이는 안드로이드에서의 통합쉐이더 GPU의 일반적인 효율입니다.
그런데 iOS에서 SGX5 계열이 보여준 효율은 55~65%입니다.
숫자를 끼워맞춰본다면 PowerVR6 계열의 이론적인 지오메트리 성능은 클럭 x 유닛수의 1/4 일지도 모르겠습니다.

-
정리해보면 A7의 GPU는 G6430 450MHz 정도로 보입니다.
-


- PowerVR6 계열 스펙 분석.
SGX5 계열은 4-wide 벡터 아키텍처입니다.
PowerVR6은 16-wide scalar SIMD입니다.
FP32 연산단위가 16개라는거지요.
각 유닛은 4 op/cycle (FP32)라고 합니다.
스칼라 방식인덕에 연산유닛의 이용률은 크게 올라갑니다. 엔비디아 GPU처럼 말이지요.

의문은...... 그래서 대체 전체 연산유닛 수가 얼마냐는겁니다.
16개 단위지만 1클러스터에 16개인지 32개인지 그 이상인지 알 수가 없습니다.


(
http://withimagination.imgtec.com/index.php/powervr/the-rise-of-gpu-compute)
이매지네이션의 자료를 보면 G64x0이 최대 600MHz이고 연산성능은 200 GFLOPS라고 나옵니다.

- 1클러스터 = 16유닛
4클러스터는 64개의 FP32 유닛이고 2 op/cycle 기준으로 200GFLOPS가 되기위한 클럭은 1.56GHz입니다.
너무 높지요.
4 op/cycle 기준으로해도 780MHz입니다.
최대 600MHz라는 정보와 맞지가 않습니다.
1클러스터 = 16유닛 은 가능성이 없어 보입니다.

- 1클러스터 = 32유닛
4클러스터는 128개의 FP32 유닛이고 2 op/cycle 기준으로 200GFLOPS가 되기위한 클럭은 780MHz입니다.
4 op/cycle 기준으로하면 390MHz입니다.
4 op/cycle 기준으로하면 최대 600MHz라는 정보에 들어 맞습니다.
이 가정이 맞다면 G6430 450MHz의 연산성능은 230.4 GFLOPS 입니다.
GPU의 그래픽 성능에 비하면 심하게 높네요.

- 1클러스터 = 48유닛
4클러스터는 192개의 FP32 유닛이고 2 op/cycle 기준으로 200GFLOPS가 되기위한 클럭은 520MHz입니다.
이 가정이 맞다면 G6430 450MHz의 연산성능은 172.8 GFLOPS 입니다.

- 정리.
1클러스터(USC)는 32개 혹은 48개의 FP32 유닛으로 이루어졌을 가능성이 있습니다.
이제까지 알려진 정보로 본다면 32개 쪽의 가능성이 더 높습니다.

다만 이 경우 어떻게 4op/cycle을 구현했느냐가 의문입니다.
엔비디아 GPU는 쉐이더클럭이 코어클럭의 2배였기때문에 가능했습니다.
PowerVR6 계열도 그런 스타일인지, 아니면 다른 기준에서 그렇게 표현한건지, 정보를 기다려봐야겠습니다.
-



 

반응형

댓글