본문 바로가기
스마트폰/mobile GPU

이매지네이션 PowerVR 시리즈6 코어 구성. (Imagination, Rogue)

by gamma0burst 2014. 3. 17.
반응형

http://withimagination.imgtec.com/powervr/powervr-gx6650-redefining-performance-mobile-192-cores
http://withimagination.imgtec.com/powervr/graphics-cores-trying-compare-apples-apples
http://withimagination.imgtec.com/powervr/allwinner-ultraocta-a80-processor-packs-powervr-series6-gpu-64-cores

이매지네이션 블로그에서 PowerVR 시리즈6의 코어 구성에 관한 자세한 내용을 밝혔습니다.
기존 시리즈6은 물론 CES2014에서 공개한 시리즈6XE/6XT에 대한 내용도 있습니다.
(복잡한건 없고 간단합니다.)


기존 시리즈5는 벡터 아키텍처였으나 시리즈6은 스칼라 아키텍처로 그래픽 자원 활용 효율이 훨씬 높습니다.


1. PowerVR 시리즈6
애플 A7, 인텔 메리필드/무어필드, MT8135 등에 쓰였습니다.



- 구성
1 파이프라인 = FP32 ALU x2 + FP16 ALU x2 + SFU(Special Function Unit) x1
1 USC(클러스터) = 16 파이프라인 = FP32 ALU x32 + FP16 ALU x32 + SFU(Special Function Unit) x16
최대 6클러스터 구성.

FP32 ALU : FMAD, 5 op/cylce
FP16 ALU : FMAD/Integer, 최대 3 op/cycle

- 연산성능
FP32 ALU : 2 Flops/cycle
FP16 ALU : 3 Flops/cycle

500MHz 기준 1클러스터의 연산성능.
FP32 기준 32 GFLOPS
FP16 기준 48 GFLOPS

흔히 1코어는 FP32 유닛 기준이기때문에 1클러스터당 32코어라고 볼 수 있습니다.




(2클러스터인 G6230의 코어 구성.)



2. PowerVR 시리즈 6XE/6XT



- 구성
1 파이프라인 = FP32 ALU x2 + FP16 ALU x4 + SFU(Special Function Unit) x1
1 USC(클러스터) = 16 파이프라인 = FP32 ALU x32 + FP16 ALU x64 + SFU(Special Function Unit) x16
최대 6클러스터 구성.

- 연산성능
FP32 ALU : 2 Flops/cycle
FP16 ALU : 2 Flops/cycle

500MHz 기준 1클러스터의 연산성능.
FP32 기준 32 GFLOPS
FP16 기준 64 GFLOPS

1클러스터당 32코어라고 볼 수 있습니다.
FP16 성능이 강화되었는데 여전히 이미지 포맷으로 16bit를 사용하는 경우가 많아서 성능향상에 도움이 될 것으로 추측됩니다.


(6클러스터인 GX6650의 구성.)



3. 라인업



- PowerVR 시리즈6
G6x00 : 면적 최적화.
G6x30 : 성능 최적화.

- PowerVR 시리즈6XE
G60x0 : 1클러스터이나 내부 코어수는 절반으로 축소. G6050은 면적 최적화. G6060은 G6050에서 대역폭 확장.
G61x0 : G6100은 면적 최적화. G6110은 G6100에서 대역폭 확장.

- PowerVR 시리즈6XT
GX6x50
GX6240 : GX6x50 과의 차이점은 불명.


4. 여담
기존에 PowerVR 시리즈6 탑재 제품들의 발표 성능을 검증해보겠습니다.

- MT8135


G6200 탑재인 MT8135는 연산성능이 최대 80GFLOPS라고 밝혔는데,
FP32 기준이라면 625MHz, FP16기준이라면 417MHz

벤치마크에서 최대 텍셀 필레이트는 1744 MTex/s 로 계산상 클럭은 436MHz 입니다.
(링크 :
http://gfxbench.com/device.jsp?benchmark=gfx27&os=Android&api=gl&D=Alps+mt8135_mg2w_a2+%28PowerVR+Rogue+Han%29&testgroup=lowlevel)
417MHz일 가능성은 없다고 봐야겠고, 625MHz라면 효율이 70% 입니다.
미디어텍의 발표 성능은 FP32 기준일 가능성이 높습니다.

- 이매지네이션 블로그


G64x0이 600MHz에서 200GFLOPS에 육박한다는 그래프를 공개했습니다. (좀 됐습니다.)
G64x0 600MHz의 연산성능은 FP32 기준으로 153.6 GFLOPS, FP16 기준으로 230.4 GFLOPS
200 GFLOPS 에 비해 FP32 기준 성능은 턱없이 부족합니다.

200 GFLOPS라는 수치는 비교군인 SGX5 계열 성능을 FP32 기준으로 보고 해석했을 때 나온 수치였습니다.
사실 이 그래프가 FP16 기준 성능으로 나타낸 것이라면 SGX5 계열과 PowerVR 시리즈6 간의 성능 비례 관계가 달라지고 그래프 상에 나타난 G64x0의 성능이 230 GFLOPS 수준일지도 모르겠습니다.

결국 발표 자료가 다소 과장되었거나, FP16 기준의 연산성능을 나타낸 것일 가능성이 있습니다.


- 그 동안의 사양 예측
PowerVR 시리즈6 발표 초기.
위의 이매지네이션 그래프로 인해 1클러스터당 48ALU로 추정.
(링크 :
이매지네이션 PowerVR 시리즈6 (Rogue))

A7 발표.
텍셀필레이트 결과를 근거로 32ALU로 추정.
위 그래프로 인해 여전히 의문이 남은 상태.
(링크 :
APPLE A7 분석 (3) GPU 성능 및 G6430 사양 추정.)


GPU별 ALU 숫자와 GFX벤치마크 결과의 상관관계를 분석.
그 결과 1클러스터당 32ALU가 가장 유력한 것으로 봄.
(링크 :
모바일 GPU사양과 GFXBench(GLBenchmark) 성능 관계에 대하여.)



반응형

댓글