올라온지 좀 된 자료인데 린팩보다 훨씬 더 정확한 것 같아서 올립니다.
(
http://wlog.flatlib.jp/item/1620)
원본의 내용을 다수 참고하고 있으며 일부 저의 해석이 들어갔습니다.



테스트 원본입니다.

(물론 테스트 자료 여러 개 취합해서 정리한건 저...)
결과 단위는 초(sec) 입니다.
값이 작을수록 빠릅니다.



각 제품마다 클럭이 다르기때문에 1.0GHz 기준으로 정규화한 결과입니다.
이래야 제대로 된 비교가 되겠지요.

- 공통내용
m44 : NEON을 사용한 4 x 4 매트릭스 연산.
A : 파이프라인 최적화 없음, 인/아웃이 완전히 다른 레지스터.
B : 4명령마다 인터리브(Interleave, 동시참조), 레이턴시가 커질 경우 A보다 스톨(stall)이 발생할 가능성 높음.
아무표시 없는 것(A, B만 있는 것) : VFP 스칼라. 32bit (Single precision)
D : NEON, 64bit (Double precision) 명령.
Q : NEON, 128bit (Quadruple precision) 명령.
단일 코어 간 성능비교임.



(ADD : 더하기)
뒤에 나올 다른 명령어도 그렇지만 같은 아키텍처끼리는 결과가 동일합니다. (A9, Swift)
당연한 결과.

A9 : 64bit까지는 1사이클에 가능하지만 128bit부터는 2사이클 이상이기때문에 Q에서 시간이 두 배로 늘어납니다.
스콜피온 : 128bit 지원이기때문에 D, Q 간에 시간차이가 없습니다.
Swift : 128bit 지원이기때문에 D, Q 간에 시간차이가 없습니다.
크레이트 : 특성은 스콜피온과 비슷하지만 약간 느려졌습니다. 스콜피온에 비해 A와 B의 차이가 줄었습니다.
A15 : D,Q 사이에 차이가 있는 것으로 보아 A15는 64bit x2 구조로 보입니다.(i,l)


(MUL : 곱하기)
대부분 ADD 특성과 비슷.


(MLA : 곱하기 덧셈.)

A9 : ADD 특성과 유사.
스콜피온 : ADD 특성과 유사. B 방식에서 효율이 매우 좋지 않음.
Swift : ADD 특성과 유사. B 방식에서 효율이 매우 좋지 않음.
크레이트 : 스콜피온보다 느립니다.
A15 : ADD 특성과 유사.


(FMAC : 곱하기 덧셈.)

A9 : ADD 특성과 유사.
스콜피온 : MLA 특성과 유사.
Swift : A9보다 느립니다.
크레이트 : A9, 스콜피온보다 느립니다.
A15 : 크레이트, Swift 보다는 낫지만, A9, 스콜피온보다는 느립니다.


(FMA : Fused Multiply Add)
FMA는 VFPv4에서 추가된 명령어이기때문에 VFPv3인 A9, 스콜피온은 지원하지 않습니다.

Swift : FMAC 특성과 유사. 스칼라 연산에서 약세.
크레이트 : 최적화에 따라 결과가 크게 향상됩니다.(A,B) 그 조건에서 다른 아키텍처는 결과가 오히려 안 좋습니다.
A15 : 평균적으로 가장 우수합니다.


- 정리.

성능순위.
A15 (100%) - Swift (74%) - Krait (69%) - Scorpion (66%) - A9 (57%)

(1) Cortex-A15
테스트 결과로 보아 64bit x2 구조.
스칼라 연산에 취약한 모습을 보이는데 Swift나 크레이트도 그런 것으로 보아 VFPv4의 특성인듯.
그 외에는 전반적으로 매우 빠른 편.

(2) Swift
전반적으로 A15와 크레이트의 중간 정도를 보이나, 스칼라 연산에서 매우 취약한 모습을 보임.
구조적인 원인이 있는 것으로 추측됨.
(스칼라 유닛을 축소하거나 배제하는 커스텀이 이루어졌다든가...)
FMA, FMAC에서 A15 보다 40% 가까이 낮은 성능을 보임.
하드웨어에서 네이티브로 지원하지 않는듯. (커스텀의 결과겠지요.)


(3) Krait
스콜피온에 비해 개선되었으나 크게 달라진 점은 없음.
MLA 연산이 크게 떨어지는데 하드웨어는 FMA만 지원하고 MLA은 Mul + Add의 2명령으로 처리했을 가능성이 있음. (호환성때문?)


(4) Scorpion
128bit 폭의 VFP/NEON 덕에 A9 대비 우수한 성능을 보이나, 큰 차이를 보이지 못 함.
최적화의 영향을 많이 받음.
A9와 성능 차이가 크지 않은건 파이프라인 스테이지가 깊어 레이턴시가 증가하였고, Out-of-Order가 부분적으로 적용되어 효율이 떨어졌기때문인 것으로 보임.



Posted by gamma0burst Trackback 0 : Comment 6

댓글을 달아 주세요

  1. addr | edit/del | reply 플리즈 2013.06.05 22:08

    확실히 세대가 올라갈 수록 좋아지긴 하네요. 다만 A15는 전력관리부터 어떻게 빨리 해결이 되어야 할 텐데요.
    ARM의 초기 계획은 A15가 A9 위치를 차지하고 A9가 중급기 정도의 자리를 차지하는 걸로 들었는데, 이번에 A12가 소개된 걸 보면 성능은 그렇다 쳐도 A15의 전력문제는 어쩔 수 없나봅니다.

    빅리틀이 접목된 5410의 경우 배터리면에서 더 낫다는 얘기가 없어서 이 부분도 아직 계획되로 되고 있지 않은 듯 합니다. 갤놋3나 그 이후 칩에서 해결이 좀 될 것 같아요.

    • addr | edit/del Favicon of https://gamma0burst.tistory.com BlogIcon gamma0burst 2013.06.06 17:33 신고

      A12가 나온다는 것 자체가 A15의 소비전력이 메인스트림급에서는 부담된다는 반증이 되겠지요.
      문제가 없었으면 A57, A15, A53 으로 차기 라인업이 구축되었을텐데 A15 대신 A12가 들어가버렸으니까요.
      A15의 많은 부분을 따오는데도 불구하고 3명령발행에서 2명령발행으로 축소된걸보면 과잉 스펙이라고 해석할 수도 있을듯 합니다.
      축소되었음에도 ARM 설명대로면 A15와 동급이기도 하고요.

    • addr | edit/del 플리즈 2013.06.07 12:10

      A12가 등장하면 A15는 붕 뜬 라인업이 될 것 같아요. A12는 스마트폰 A15는 태블릿에 주력하면 될 것 같으면서도, 전력 때문에라도 제조업체에서 A15를 쓰진 않을 것 같거든요.

      A57이 나올 시점엔 어떻게 될 지 좀 궁금해집니다. 전력을 잡을 수 없다면 마찬가지로 A57과 A53사이에 A55 정도 쯤 되는 칩이 나올지도 모르겠어요.

      빅리틀을 그렇게 홍보하고 이렇게 나오면 빅 리틀은 어떻게 되려는 건지...;;

    • addr | edit/del Favicon of https://gamma0burst.tistory.com BlogIcon gamma0burst 2013.06.07 13:39 신고

      A53이 성능에서 A9보다 약간 나은 수준이기때문에 A15급 성능인 A12면 A57과 A53 중간에 배치되기에 충분하지요.

      빅리틀 자체는 문제없습니다.
      A57-A53 도 가능하고, A12-A7 도 가능합니다.

  2. addr | edit/del | reply 라온 2013.09.05 19:00

    ALU 성능도 알고 싶네요~