2. 멀티코어/ 멀티스레드 지원에도 차이가 있다?

멀티코어 CPU는 멀티코어 CPU에서 최대의 성능을 발휘하지만, 현재 사용되는 대다수의 프로그램들은 싱글스레드 환경에 최적화되어 멀티코어 CPU의 성능 향상을 체감하기는 힘들다.
또한, 멀티코어/ 멀티스레드 지원되는 프로그램들 사이에도 지원되는 코어의 수가 서로 다르기 때문에 어떤 프로그램은 코어 수가 증가될수록 성능이 증가되는 반면, 어떤 프로그램은 일정 수의 코어를 넘어서도 성능이 크게 증가되지는 못한다.
대다수는 싱글스레드 지원 프로그램

[싱글스레드 지원 SuperPI]
싱글스레드에 최적화된 프로그램으로 알려진 SuperPI는 싱글스레드에 최적화된 만큼 CPU의 연산 성능 및 고클럭 CPU가 연산성능이 더 우수하게 나타난다. SuperPI 등과 같은 싱글스레드 프로그램들은 멀티코어 CPU를 사용해도 멀티코어 CPU의 성능을 제대로 활용하기 어렵다.
멀티코어 CPU 일부만 사용하는 프로그램

[WinRAR 3.92, 멀티스레딩 비활성]

[WinRAR 3.92, 멀티스레딩 활성]
이와 반대로 멀티스레딩을 지원하고 있는 WinRAR과 같은 프로그램에서는 멀티스레딩 유무를 결정할 수 있는데 실제 멀티스레딩을 켜고 끔에 따라 벤치마크를 비롯하여 실제 압축 및 해제 과정에서 그 차이를 구분할 수 있다. WinRAR과 같은 프로그램은 멀티코어 CPU 사용여부에 따라 차이를 비교할 수 있을만큼 멀티코어 CPU의 활용이 가능하다.

[페넘2 X4 955BE, H.264 (1080 MPEG2, 320 x 240 H.264 트랜스코딩]

[멀티코어 CPU를 일부만 사용하는 경우도 있다]
하지만, 멀티코어 CPU를 지원하는 프로그램이라고 하더라도 멀티코어 CPU의 모든 코어를 완벽하게 지원하지 않는 경우도 있다.
다음 팟인코더만 하더라도 페넘2 X4 955BE와 같은 쿼드코어 CPU로 H.264 (320 x 240) 포맷으로 트랜스코딩을 진행하는 환경 하에서는 90%를 넘어서 4개의 코어를 거의 최대로 끌어쓰고 있지만, 페넘2 X6 시리즈와 같은 6코어 (헥사코어, Hexa-Core)의 경우 70% 수준으로 모든 코어가 최대로 활용되지 않고 여유가 남아있어 다른 작업들을 병행할 수 있게 된다.
즉, 인코더 프로그램들 역시 쿼드코어 CPU까지 지원되면 그 이상의 코어를 제공하는 CPU는 그만큼의 CPU 자원에 여유가 있게 되는 것이며, 반대로 말하면 프로그램이 멀티코어에 최적화되었더라도 지원하는 이상의 멀티코어 CPU가 장착되면 나머지 코어는 사용되지 않고 그만큼의 여유 자원으로 남게되는 것이다.
WinRAR 역시 6코어 사용시는 쿼드코어 CPU와 달리 여유 자원이 꽤 남아있으며, 대다수의 게임들 역시 듀얼코어 CPU 지원에 그치는 경우도 있고 일부는 쿼드코어 CPU 지원 또는 그 이상의 CPU를 지원하는 게임들도 일부 등장하고 있다.
멀티코어 CPU를 완벽히 지원하는 프로그램


[멀티코어를 제대로 활용하는 렌더링, CineBench R10/ R11.5]
MAXON사의 Cinema 4D 기반으로 만들어진 렌더링 테스트 프로그램인 CineBench R10/ R11.5와 같은 렌더링 프로그램의 경우 6개의 코어를 모두 100%로 활용하기 때문에 멀티코어 CPU가 지원하는 최대의 성능을 얻어낼 수 있다. 참고로 CineBench R10/ R11.5는 최대 64 프로세서 스레드를 인식하고 사용할 수 있는 프로그램이다.
이렇듯 멀티코어 CPU를 완벽하게 지원하고 있는 경우 해당 멀티코어 CPU를 완벽하게 사용할 수 있는 환경이 구성되면 쿼드코어 CPU와의 처리 성능 및 시간에 차이가 나타난다.
하지만, 실질적으로 렌더링 프로그램 일부를 제외하면 쿼드코어 CPU 이상을 지원하는 프로그램은 그리 많지 않은 편이므로 쿼드코어 이상의 코어 수를 가진 CPU라도 이들을 모두 사용하는 상황은 찾아보기 쉽지 않다.
다중실행 환경, 멀티코어 CPU가 유리


[다중실행 환경, 멀티코어 CPU의 활용도가 높아진다]
멀티코어 CPU를 활용하는 또 다른 환경은 바로 다중실행 환경이다. 다중실행 환경은 사용자들이 한 가지 이상의 작업을 동시에 실행하는 환경으로 웹 브라우저로 인터넷을 검색하면서 채팅을 하거나 창모드로 온라인 게임을 하는 등이 그 예가 된다. 또한, 여러 개의 영상을 휴대기기 등에 맞게 트랜스코딩을 진행하면서 영상을 동시에 감상하거나 온라인 게임을 창모드로 2개 이상을 진행하는 경우도 다중실행 환경의 예이다.
다중실행 환경은 하나의 코어를 제공하는 경우보다 많은 수의 코어를 제공할수록 사용되는 코어를 제외하고 남는 코어의 여유 자원을 활용할 수 있기 때문에 멀티코어 CPU가 유리한 부분 중 하나다.