벤치리뷰·뉴스·정보/리뷰·벤치·제품

[벤치리뷰] 컴파일러에 따른 CPU 성능

tware 2012. 9. 28. 10:15

 

2012년 9월 28일에 작성된 기사 입니다.

 

자세한 관심이 있는 분은 원문을 확인 하세요.

 

 

 

 

 

 

 

 

여기에 관심을 가지실 분들은 각자 알아서 다 보실테고...

 

간단히 설명하면, 그래프 위에 써 있는 CPU 이름대로 CPU별로  컴파일러별, 옵션별

성능차이를 보는 겁니다. 

 

C / C + + 컴파일러를 사용하는 컴파일러 환경은 마이크로 소프트 VS 2010 SP1, 인텔 C + + 컴파일러 XE 12.0u5 및 TDM-GCC (MinGW를 / GCC 4.6입니다 )

 

페넘 에서 그래프가 없는건 페넘은 해당 명령어를 지원하지 않기 때문 입니다.

(페넘1,2의 SSE4a는 인텔 SSE4 시리즈와 관계가 없습니다.)

 

 

 

페넘2의 명령어 셋. SSE4 시리즈는 없습니다.

 

 

인텔의 SSE4 (4.1/4.2) 시리즈를 모두 지원하기 시작한건 불도저 부터 입니다.

AMD의 SSE4A가 SSE4 시리즈 + AMD 추가 명령이라면불도저부터 따로 SSE4 시리즈를 지원할 필요가 없겠죠.그냥 SSE4A만 지원하면 되죠.

 

 

https://support.ubi.com/ko-KR/Article/000064198

AMD의 SSE4A를 인텔 SSE4.1(펜린,울프,요크필드 지원)과 SSE4.2 (네할렘 지원, 린필드, 클락데일 지원) 전부 지원을 하고 (최소 4.1 이라도 지원) 거기에 더해서 확장을 한 것이라고 착각하는 사람들이 많아서 인지.. 게임사도 이런 정보를 게시하고 있습니다. 내용은 역시 인텔의 SSE4 시리즈는 불도저 부터 지원한다는 겁니다. 이런 착각은 국내 하드웨어 커뮤니티에도 엄청나게 많고요. 왜 AMD 페넘2 에서는 지원 안되게 소프트를 만들었느냐 (인텔 돈받고 이런 것이다. 말이 안되죠 전세계 모든 프로그래머가 돈먹고 동조하는 것도 아니고, 그도 그것고 내 하드에 있는 고전 소프트는 왜 더 빨라지는가?) 이런 내용과 거기에 동조하는 댓글들..... 반박글은 댓글은 하나도 없구요.. 다 모른다는 거죠.. 뭔가 피해의식이 있다던가... (켄츠필드와 샌디브릿지의, 샌디브릿지와 하스웰의 성능차가 나는 것은 당연한 것이고 이해하지만, 인텔과 AMD의 CPU가 성능차가 나는 것은 이해를 안하고 인텔 최적화로 인해서 그런 것이다로 귀결.. 전자 후자 양쪽다 아키텍처가 다르니까, 기본 하드웨어 성능이 다르니까 성능차가 나는 것인데... 이건 x86명령뿐이 아닌 SIMD 명령도 (SSE 시리즈 , AVX 등) 마찬가지.. SIMD 시리즈 명령을 처리 할 수 있는 능력과  얼마나 더 빨리 처리 할 수 있는가는  서로 다른 문제. 인텔의 SIMD 명령 처리 능력이 훨씬 뛰어남.). SSE4A는 SSE4의 확장이 아닙니다. 그냥 AMD의 독자적 명령셋 입니다.

 


401.bzip2

Language: C, Type of load: Integers, Multithreaded: Yes

 

 

 

 

 

 

 

 

 

 

429.mcf
Language: C, Type of load: Integers, Multithreaded: No

 

 

 

 

 

 

 

 

445.gombk
Language: C, Type of load: Integers, Multithreaded: Yes

gombk 주로 게임 AI에 사용되는 알고리즘.

 

 

 

 

 

 

 

 

456.hmmer
Language: C, Type of load: Integers, Multithreaded: Non

 

 

 

 

 

 

 

 

458.sjeng
Language: C, Type of load: Integers, Multithreaded: No

 

 

 

 

 

 

 

 

464.h264ref
Language: C, Type of load: Integers, Multithreaded: Yes

 

 

 

 

 

 

 

 

473.astar
Language: C++ , Type of load: Integers, Multithreaded: No

 

 

 

 

 

 

 

 

433.milc
Language : C , Type of load: Floating point , Multithreaded: Yes 

 

 

 

 

 

 

 

 

444.namd
Language: C++ , Type of load: Floating point , Multithreaded: Yes

 

 

 

 

 

 

 

 

470.lbm
Language: C , Type of load: Floating point , Multithreaded: Yes

 

 

 

 

 

 

 

 

482.sphinx3
Language: C , Type of load: Floating point , Multithreaded: Yes

 

 

 

 

 

 

 

 

C-Ray

 

 

 

 

 

 

 

 

TSCP
Language: C , Type of load: Integers , Multithreaded: No

 

 

 

 

 

 

 

 

 

7-Zip
Language: C , Type of load: Integers , Multithreaded: Yes

 

 

 

 

 

 

 

어셈블리 언어의 영향 : X264 테스트

 

 

 

 

 

 

성능 요약 : 인텔 컴파일러가 지배적

 

 

 

아래는 실제 CPU별 실행성능을 비교한게 아니라,

각 CPU가 컴파일러 별로 얼마나 차이가 나나 입니다.

(즉 페넘이 i7보다 숫자가 높다고 성능이 높은게 아니라..

그냥 페넘2 자체가 다른 기준 컴파일러 쓸때보다

이만큼 더 상승한다 이런 말입니다.

쉽게 설명하면.. 성능상 좋지 않은 GCC로 컴파일 된 프로그램 성능보다

인텔 컴파일러로 만들면  AMD CPU도 인텔 CPU도  저 만큼 더 많이

빨리진다 얘기 입니다. GCC로 만든것보다  40~50%정도 빠르죠.

인텔 CPU로 구동을 하던, AMD CPU로 구동을 하던)

각 CPU별로 차이는 위에 3 CPU별로 나온걸  각각 비교하면 됩니다.

 

 

 

 

 

 

 

 

 

 

 

 

인텔 컴파일러로 많은 상승을 보는건 보다시피 모든 CPU가 효과를 본다는 거죠.

인텔 컴파일러라고 해서 AMD는 상승이 안된다 이렇지 않습니다. 오히려 AMD CPU의 성능 향상이 더 큰지도.... .GCC는 성능이 많이 떨어지죠..;; 이런 루머 유포자는 뭔 생각인지..

페넘1,2가 SSE4 지원하지도 않는데 페넘에서는 안돌아가게 인텔이 각종 프로그렘에서 지원 안하도록 조작했다 라던가;;;; 페넘의 SSE4a는 SSE4가 아닙니다. SSE4 + AMD 확장도 아닙니다. 그냥 SSE4a 입니다. 그래서 불도저 CPU-z로 보면 SSE4가 있고, 별도로 SSE4.1,4.2가 있죠.

 

 

 

 

[벤치리뷰] 15종 인텔,AMD,엔비디아 GPU 리눅스 오픈소스 드라이버 성능

 

 

[벤치리뷰] 리눅스 하스웰 HD4600, 라데온 독점 드라이버 성능

 

 

[벤치리뷰] 인텔 하스웰 HD 4600 vs AMD 라데온 그래픽 리눅스

 

 

[벤치리뷰] 인텔 코어 i7 4770K 하스웰 우분투 리눅스 벤치마크