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

모바일 GPU사양과 GFXBench(GLBenchmark) 성능 관계에 대하여.

by gamma0burst 2014. 1. 18.
반응형

GFX벤치(GFXBench, GLBenchmark) 2.7 결과와 GPU 성능 간에 어떤 관계성이 있는지 분석해봤습니다.
테스트 결과는 GFXBench 2.7 T-Rex offscreen를 기준으로 하며, 각 GPU 사양은 인터넷에서 최대한 정보를 긁어모아서 가장 적합한 사양을 선택했습니다. (특히 클럭)

연산부와 출력부가 명확히 분리되는 통합쉐이더 방식 GPU만을 대상으로 했습니다.
Mali-400, 테그라처럼 버텍스 쉐이더, 픽셀 쉐이더가 따로 존재하는 구조에서는 명확한 관계성을
(쉽게) 발견하기 어렵습니다.

통합쉐이더 방식을 선택했기때문에 퀄컴 Adreno, 이매지네이션 PowerVR 계열을 다루었습니다.
Mali-T600도 통합쉐이더이지만 아직 출시 제품의 사양이 다양하지 않기때문에 명확한 관계성을 찾기가
어려워서 대상으로 삼지 않았습니다.

향후 T700 계열 등 다양한 제품이 나온다면 다룰 수 있을지도 모르겠습니다.

사양 지표는 ALU, TMU, ROP.
성능 지표는 Frame/Clock (클럭당성능) - 클럭이라는 변수를 제거해야 합니다.


- Qualcomm Adreno


TMU 기준에서보면 관계성이 전혀 없습니다.
같은 TMU 사양에서 성능 사이의 분포가 너무 넓습니다.


ROP도 크게 다르지 않습니다.


ALU수를 기준으로 보면 ALU수와 성능 사이에 거의 선형에 가까운 결과가 나타납니다.
TMU, ROP수는 같은데 ALU수만 다른 GPU도 있는데 ALU수에 비례하는 경향을 보이는건 의미가 있겠지요.


우측 상단의 빨간점은 기존에 제가 추정한 Adreno420의 사양과 성능을 기준으로 표시한겁니다.
성능 관계 경향에 어느정도 들어맞습니다.

이 그래프에서 가장 이질적인 부분은 64ALU Adreno320 (Snapdragon S4 pro)입니다.
성능지표는 96ALU Adreno320 (Snapdragon 600)과 동일한 수준입니다.
그러면 스냅드래곤S4프로도 96ALU라고 생각하는게 맞는데,
그러자면 스냅드래곤S4프로와 스냅드래곤600 사이의 그래픽 성능 차이를 설명할 수 있는 방법이 없습니다.

(혹시 아시면 귀뜸 좀......)


- Imagination PowerVR


PowerVR 계열 역시 TMU 기준으로는 이렇다 할 관계성을 찾기 어렵습니다.
SGX544 까지는 어느 정도 비례하는 관계를 보이는듯하지만 우측 상단의 SGX554MP4 결과가
혼자서 크게 뜁니다.

다음에 볼 ALU 기준의 결과에서 SGX554도 잘 들어맞는걸 생각하면 TMU 기준으로는 관계성을
찾을 수 없다고 보는게 맞을듯 합니다.



ALU수 기준입니다.
SGX554MP4 결과까지 포함하여 선형 관계를 잘 보여주고 있습니다.


빨간점은 G6430, G6200의 추정 결과입니다.
G6430 : 애플A7, 4클러스터, 450MHz 추정.
G6200 : MT8135, 2클러스터, 600MHz 추정.
현재 G6000 계열에서 1클러스터당 ALU수가 불명인데 16, 32, 48 ALU/클러스터를 각각 표기했습니다.


PowerVR 시리즈6이 SGX5 에서 개선이 되었다면 최소한 SGX5와 비슷한 ALU당 성능을 보여야 합니다.
그렇다면 성능 경향상 1클러스터당 ALU수는 16개 혹은 32개입니다.
48개로 가정하면 성능효율이 너무 떨어집니다.
16 ALU/Cluster 기준으로 G6430의 성능지표를 보면 SGX543MP4에 비해 너무 높습니다.
거의 두 배 수준이지요.

가장 유력한건 32 ALU/Cluster가 아닐까 싶습니다.


- MT8135 GPU 클럭 추정.
여담으로 MT8135의 GPU, G6200의 클럭이 왜 600MHz로 추정되는지 말하겠습니다.
GFX벤치의 텍셀 필레이트 결과를 보겠습니다.

iOS
G6430 450MHz - 이론치 : 3600 Mtex/s - 실제 : 3464 Mtex/s - 효율 : 96%
SGX554MP4 300MHz - 이론치 : 2400 Mtex/s - 실제 : 2074 Mtex/s - 효율 : 86%

안드로이드
SGX544MP3 533MHz - 이론치 : 3198 Mtex/s - 실제 : 2090 Mtex/s - 효율 : 65%
MT8135 ???MHz - 이론치 : ??? Mtex/s - 실제 : 1744 Mtex/s - 효율 : ???%
(
http://gfxbench.com/device.jsp?benchmark=gfx27&os=Android&api=gl&D=Alps+mt8135_mg2w_a2+%28PowerVR+Rogue+Han%29&testgroup=lowlevel)

iOS 기반 결과를 보면 SGX5에서 시리즈6으로 넘어가면서 효율이 올랐습니다.
86 -> 96 : 11% up
물론 iOS 기반 SGX5 결과 중에서 96% 수준의 결과가 있긴합니다만 저사양에서의 결과이기때문에
고사양 결과에 적용하기 힘들다고 봅니다.

이 효율 향상이 시리즈6에 적용된 개선점이라고 가정하고 안드로이드에 적용해보면......
안드로이드 기반에서 시리즈6의 텍셀 효율은 65%에서 11% 올라간 73% 정도입니다.
이 효율을 MT8135의 테스트 결과에 적용시켜보면 MT8135 G6200의 이론텍셀성능은 2397 Mtex/s
G6200의 사양(4 tex/cycle)을 통해 클럭을 역산하면 599.2 MHz가 나옵니다.
대충 600MHz라는거지요.


- 정리.
Adreno, PowerVR GPU는 ALU수와 GFX벤치 결과가 비례하는 경향을 보임.
PowerVR 시리즈6은 32ALU/Cluster로 추정.
MT8135 G6200 클럭은 600MHz로 추정.



반응형

댓글