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

린팩으로 계산해보는 아이패드2, 아이폰4S 클럭

by gamma0burst 2012. 3. 13.
반응형


이 계산은 몇가지 가정을 전제로 이루어졌기때문에, 확실한 사실이 아닌 가능성의 하나로 받아들이면 되겠습니다.

애플측에서는 아이패드2 와 아이폰 4S 에 탑재된 A5 의 클럭에 대해 1GHz 라고 밝히고 있지만,
실제 클럭이 그러한지는 의문이 많습니다.
애플 제품에서 가장 많이 사용하는 벤치마크 앱이 Greekbench 인데,
최근의 버전 업 이전에는 테스트 이후 시스템 정보에서 1GHz 라는 클럭이 등장한 적이 단 한 차례도 없었습니다.
게다가 아이폰 4S 는 아이패드2 의 80% 수준의 성능을 보여, 다운클럭이 거의 확정적으로 받아들여지고 있습니다.
하지만, 정확한 클럭은 여전히 미궁입니다.
이번 포스팅에서는 그동안 축적된 린팩 결과를 통해서 아이패드2 와 아이폰 4S 에 탑재된 A5 의 클럭을 추측해보겠습니다. 

가정 (1)
S5PC100, A4, A5 는 삼성의 허밍버드(엑시노스3), 엑시노스4 와 멀티코어 효율 등 그 특성이 동일하다.

이 가정은 S5PC100, A4, A5, 허밍버드, 엑시노스 가 모두 삼성에서 설계, 생산되었기때문에 세울 수 있는겁니다.




위 그래프는 iOS 기반 제품들의 린팩 테스트 결과입니다.

(가장 공통적으로 나타나는 수치들로, 스탠다드 설정으로 추정)

iOS 기반 린팩은 안드로이드 기반 린팩보다 결과가 높게 나오는데, 이는 iOS 와 안드로이드의 가상 엔진의 특성 차이로 보입니다.
NEON 적용 여부가 이유일거란 추정도 가능하지만, iOS 기반 린팩에서도 NEON은 사용되지 않습니다.

린팩성능 차이가 있는건 아무래도 iOS와 안드로이드의 근본적인 차이가 원인인 것 같습니다.
안드로이드는 자바 기반의 Dalvik 가상머신 기반으로 돌아가는데, iOS는 가상머신 기반이 아니라고 하더군요.
덕분에 iOS는 성능을 뽑아내기 쉬운 반면, 하드웨어 호환성이 떨어집니다.
하드웨어 스펙이 바뀌면 탈옥툴이 호환되지 않는게 그런 이유라고 하더군요.
안드로이드는 가상머신으로 인해, 가상머신 성능에 따라 OS 성능이 좌지우지됩니다.
(이클레어 -> 프로요보면 확실히 그런면이 있지요.)
대신 하드웨어 호환성이 좋습니다.
안드로이드 기반 제품들 스펙이 다 제각각인데도 전부 안드로이드를 돌릴 수 있는건 이런 이유때문이라고 합니다.
(소프트웨어쪽으로는 잘 모르고, 들은 얘기이기때문에 틀린 부분있으면 지적바랍니다.)


가정(2)
동일 아키텍처 간에 iOS 기반 린팩과 안드로이드 기반 린팩의 성능 격차(비율)은 일정하다.


A4 와 S5PC100 은 둘 다 Cortex-A8 기반 입니다.
위 결과를 1GHz 로 정규화해서 평균을 내보면, 42.2 MFLOPS 가 나옵니다.
가장 근접한 제품인 삼성의 허밍버드 1GHz 의 안드로이드 린팩 평균값이 15.1 MFLOPS 입니다.
(동일 아키텍처임.)

Cortex-A9 기반 듀얼코어인 A5 의 성능을 분석하기위해서 이와 가장 근접한 제품인 엑시노스 4210 의 결과를 파악할 필요가 있습니다.
엑시노스 4210 은 1.2GHz, 1.4GHz 두가지가 있는데, 1GHz 쪽에 가까운 1.2GHz 의 결과값을 사용하겠습니다.

엑시노스 4210 1.2GHz 의 안드로이드 린팩 평균값은,
싱글스레드 50.1 MFLOPS
멀티스레드 81.5 MFLOPS
입니다.

1GHz 로 정규화시키면,
싱글스레드 41.8 MFLOPS
멀티스레드 68.0 MFLOPS
입니다.

1.4GHz 엑시노스의 측정 결과를 사용하지 않은건, 1.4GHz 엑시노스와 1.2GHz 엑시노스의 평균 결과가 보여주는 특성이 약간 다르기때문입니다.
(1.4GHz 쪽이 멀티코어 효율이 약간 낮습니다.)

위에서 밝혔듯이,
허밍버드, 엑시노스의 성능 관계와 A4, A5 의 성능 관계가 동일하다고 가정하겠습니다.

안드로이드 린팩 싱글스레드에서, 엑시노스는 허밍버드의 2.76배 (=41.8/15.1)의 성능을 보입니다.
그리고 엑시노스의 듀얼코어 효율은 1.63 (=68/41.8)입니다.

이를 A4 와 A5 의 관계에 동일하게 적용시키겠습니다.
A4 1GHz 의 린팩 결과는 42.2 MFLOPS 입니다.
그렇다면 A5 1GHz 의 싱글스레드 결과는 116.5 MFLOPS 로 계산이 됩니다. (=42.2 x 2.76)

하지만, iOS 기반 린팩에는 싱글스레드, 멀티스레드 테스트가 따로 없습니다.
(iOS 라는 운영체제 자체가 싱글태스킹과 멀티태스킹의 구분이 없기때문인듯)
그런 점에서 본다면, iOS 기반 린팩 결과는 안드로이드 기반 린팩의 멀티스레드와 동일하게 봐야할 것입니다.
싱글스레드와 매치시킨다고 가정하면, 아이패드2 는 1.4GHz 가 넘는다는 해석이 가능한데, 이건 무리가 있는 해석이지요.

A5 1GHz 의 멀티스레드 결과는 189.6 MFLOPS 로 계산됩니다. (=116.5 x 1.63) 

아이패드2 의 린팩 결과는 165.9 MFLOPS 로 나왔습니다.
역산해보면 아이패드2 에서 A5 의 클럭은 875MHz 정도로 계산됩니다. (=165.9/189.6)
실제 성능이 클럭에 정확하게 들어맞는 경우는 드물기때문에 대략 900MHz 정도로 보입니다.

아이폰 4S 의 린팩 결과는 139.6 MFLOPS 로 나왔습니다.
역산해보면 아이폰 4S 에서 A5 의 클럭은 735MHz 정도로 계산됩니다. (=139.6/189.6)
역시나 실제 성능이 클럭에 정확하게 들어맞는 경우는 드물기때문에 대략 750MHz 정도로 보입니다.


-
하아...
이 글이 사라져서 대체 뭐가 어떻게 된건지 별의별 상상을 다 했는데, 문의 결과 스마트폰으로 보다가 실수로 지웠다고 하네요.
로그까지 보여주니 뭐 할 말이 없는 지경.
그래도 구글느님이 저장된 페이지를 남겨준 덕에 똑같이 복구할 수 있었네요.

닥치고 티스토리, 구글 찬양.

- 2012.03.15. 본문 일부 추가

- 2012.09.22. 최대값을 사용한 계산 추가.

A4 와 S5PC100 은 둘 다 Cortex-A8 기반
위 결과를 1GHz 로 정규화해서 평균을 내보면, 42.2 MFLOPS
가장 근접한 제품인 삼성의 허밍버드 1GHz 의 안드로이드 린팩 최대값이 18 MFLOPS

엑시노스 4210 1.2GHz 의 안드로이드 린팩 평균값대신 최대값을 사용하면,
싱글스레드 57 MFLOPS
멀티스레드 89 MFLOPS

1GHz 로 정규화시키면,
싱글스레드 47.5 MFLOPS
멀티스레드 74.2 MFLOPS

안드로이드 린팩 싱글스레드에서, 엑시노스는 허밍버드의 2.64배 (=47.5/18)의 성능.
엑시노스의 듀얼코어 효율은 1.56 (=89/57)

A5 1GHz 의 싱글스레드 결과는 125.4 MFLOPS (=47.5 x 2.64)
A5 1GHz 의 멀티스레드 결과는 195.6 MFLOPS (=125.4 x 1.56) 

아이패드2 의 린팩 결과는 165.9 MFLOPS
역산해보면 아이패드2 에서 A5 의 클럭은 850MHz 정도. (=165.9/195.6)
대략 900MHz 정도?

아이폰 4S 의 린팩 결과는 139.6 MFLOPS
역산해보면 아이폰 4S 에서 A5 의 클럭은 715MHz 정도. (=139.6/195.6)
대략 750MHz 정도?



반응형

댓글