Author : Daeguen Lee

(Any action violating either copyright laws or CCL policy of the original source is strictly prohibited)


 

 

이번 장에서는 CPU의 성능에 관한 여러 테스트 중, 산술 연산(Arithmetic)에 관련된 테스트를 모아 보았습니다.

CPU 내부에는 여러 가지 연산 장치가 있지만, 크게 정수 연산과 부동소수점 연산을 하는 것으로 구분할 수 있고

또 다시 각각은 주로 SISD 방식의 스칼라 연산장치와 SIMD 방식의 벡터 연산장치로 구분할 수 있습니다.

CPU 구조에 관하여 더 자세한 설명은 이 블로그의 예전 글들을 찾아 보도록 하시고...^^

 

 

유서 깊은 정수 성능 측정 프로그램이죠. Sandra 2012에 포함되어 있는 Dhrystone 입니다.

보시다시피 기본 클럭에선 (당연히) 8350이 8150보다 좋고, 8150도 투반 1100T를 큰 차로 앞서고 있습니다.

기존 아키텍처에서 불도저로 넘어올 때 확충된 자원(트랜지스터)이 주로 정수 성능에 투입된 것을 생각하면

이 정도는 '당연히' 나와 줘야 하는 거라고 생각할 수도 있겠군요ㅋㅋ

아무튼. 8150과 8350을 동클럭으로 오버클럭해서 비교해 보니 거의 차이가 없어졌습니다.

아키텍처상 큰 변화가 없어서일까요. 그럼 다른 벤치마킹 툴을 통한 정수 성능 측정 결과는 어떨까요?

 

 

 

위의 둘은 '에버레스트'란 이름으로 더 유명한, AIDA64란 유틸리티에 포함된 벤치마킹 툴입니다.

맨 처음 살펴본 Dhrystone의 결과와 크게 다르지 않은 양상을 보여주고 있습니다.

 

 

반면 이 테스트 결과를 보면, 같은 클럭의 8150을 8350이 멀찍이 따돌리는 모습도 볼 수 있습니다.

 

 

 

하지만 나머지 테스트 툴에서는 다시 아까와 비슷한 결과를 보이고 있습니다.

 

 

 

위의 두 테스트 툴은 정수 벡터 연산 유닛의 성능을 측정해 줍니다.

보시다시피, Double이 아닌 정수 벡터 연산에 있어서 투반에 비해 FX 시리즈가 압도적인 성능을 보이는데

이것은 (투반에는 없는) AVX 명령어 세트가 불도저부터 탑재된 것에 기인합니다.

지금까지의 결과를 종합해, 파일드라이버가 불도저로부터 얼마나 나아졌는지를 살펴 보도록 하겠습니다.

 

 

지금까지 정수 연산 성능을 살펴본 결과, CPU ZLib 항목을 제외한 모든 테스트에서

기존 불도저와의 차별성을 찾아보기 힘든 결과가 나왔습니다. 이게 파일드라이버의 실체인 걸까요?

...일단, 부동소수점 성능 결과를 살펴봅시다.

 

 

Sandra 2012에 포함된 부동소수점 성능 측정 프로그램인 Whetstone 입니다. 얘도 꽤나 유서깊은 프로그램이죠.

 

 

 

 

위의 두 결과로 미뤄볼 때, 부동소수점 벡터 성능은 불도저로부터 '눈에 띌 만큼' 개선된 것으로 보입니다.

 

 

 

 

 

위의 4개 테스트는 AIDA64에 포함된 FPU 벤치마킹 툴로 진행되었는데, FPU SinJulia를 제외한

나머지 세 항목에서 파일드라이버가 불도저에 비해 확연한 성능 향상을 보인 것이 눈에 띕니다.

 

부동소수점 성능 결과 종합입니다.

파일드라이버의 아키텍처상 이점이 그리 커 보이지는 않지만, 어쨌든 분명 '어딘가가' 변하긴 변했습니다.

그리고 그 변화는 정수 파트보다는 부동소수점 파트에 집중되어 있다는 해석이 가능할 것 같습니다.

이번에 살펴볼 부분은 메모리 대역폭입니다. 혹시나, 내장 메모리 컨트롤러가 개선되진 않았을까요?

 

 

Sandra 2012의 메모리 대역폭 측정 툴입니다. 투반에 비해서는 확연히 낫지만, 불도저에 비해선... 글쎄요.

사실상 거의 차이가 없다고 봐야 할 듯 합니다. 혹시나 하여 다른 툴로도 대역폭을 측정해 보았는데...

 

 

...역시나, 거의 차이가 없는 결과입니다. (그나마 Read & Write가 꾸준히 앞서 보이기는 합니다만)

 

 

레이턴시 역시 거의 차이가 없습니다. 아니, 약간 짧아졌다고 할 수는 있을까요 -_-a

아래 테스트 결과는 다중코어 효율성(Multi-core Efficiency)을 알아보기 위한 것들입니다.

 

 

 

코어간 대역폭(Inter-core Bandwidth)에 있어서 불도저/파일드라이버는 투반에 비해 압도적입니다.

하지만 코어간 레이턴시 역시 투반에 비해 압도적으로 긴 수치를 보이고 있습니다.

여기서도 불도저/파일드라이버 사이의 차이는 거의 찾아볼 수 없습니다.

 

다음 장에서는 응용프로그램 실행 성능을 알아보도록 하겠습니다.

저작자 표시 비영리 동일 조건 변경 허락
신고