뉴스

멀티코어 칩이 사용자에게 유리할 까 ?

sungtg 2009. 1. 27. 13:25
   
 

최근 샌디아 국립연구소의 한 연구팀이 시뮬레이션 테스트를 통해 코어가 너무 많으면
오히려 성능이 떨어질 수 있다는 연구 결과를 발표했다. 


연구팀은 대규모 데이터 셋을 분석하는 핵심 알고리즘을 사용해 듀얼코어에서 쿼드코어로 바뀌면
상당한 성능 향상이 이뤄진다는 사실을 발견했다.
하지만 8 코어의 경우, 쿼드코어와 별 다른 성능 차이가 나지 않았으며, 16 코어의 경우,
오히려 듀얼코어 수준으로 성능이 떨어졌다. 
연구팀은 “이후 코어를 추가할수록 성능이 더욱 떨어졌다”고 강조했다.  

병목을 일으키는 부분은 메모리 버스로 밝혀졌다.

데이터가 이들 코어로, 또는 코어로부터 충분한 속도로 흐르지 못하는 것.
샌디아 연구소의 제임스 피어리는 “문제는 각 모듈 간에 메모리를 두고 경합이 벌어지는 것”이라며,
“모든 코어가 동일한 경로를 통해 메모리를 요구한다.
이는 여러 사람이 동시에 한 사람에게 정보를 요청하는 것과 마찬가지다”라고 설명했다. 

테스트를 진행한 아룬 로드리게스는 “사실 많은 애플리케이션이 싱글 코어 상에서도
메모리 대역폭의 제한을 받고 있다”며, “업계가 해결책을 가지고 있는 문제가 아니다”라고 덧붙였다. 

인텔의 연구원인 클레이 브레시어스는
자신의 블로그에서 “나는 이미 2년 전에 그 문제를 지적했다.
더구나 싱글 버스 시스템에서 메모리 경합 문제는 이미 80년 대에
공유 메모리 컴퓨터가 32 프로세서에서 한계에 봉착한 이유이기도 하다”고 설명했다. 

브레시어스는 “이 문제는 한두 해 사이에 발생한 것이 아니며,
멀티코어 칩에 대한 수요가 높아지고 있는 지금, 이를 해결하기 위한 방법을
다시 한 번 고민해야 할 시기이다”라고 덧붙였다.  
Lincoln_Spector@pcworld.com





인텔 i7의 메모리버스

지금까지 인텔은 CPU와 메모리의 I/O 포트 사이에 MCH를 사이에 두었다.
이는 메모리를 컨트롤 할 수 있는 메모리 컨트롤러가 MCH에 있었기 때문으로 CPU와 MCH는 FSB(Front Side Bus)라는 연결 통로를 사용했다. 인텔의 프로세서는 FSB의 속도에 따라 프로세서의 전체적인 성능이 크게 차이를 보일 만큼 FSB의 비중이 매우 높았다. 

하지만 FSB의 고질적인 문제인 병목현상의 한계성은 언제나 존재했다. 인텔은 이를 위해 새로운 아키텍처에서는 프로세서에 메모리를 직접 컨트롤 할 수 있는 메모리 컨트롤러를 내장해 메모리 사이의 데이터 교환을 담당하고 프로세서와 I/O 디바이스 사이의 데이터 교환을 QPI(QuickPath Interconnect) 라는
새로운 버스 아키텍처를 사용한다

QPI의 기능은 FSB와 비슷하다. 하지만 구조자체가 매우 다르다.
FSB 버스의 경우 하나의 단독 레인(Lane)을 통해 읽고/쓰기가 이루어지기 때문에 동시에 진행이 되지 못한다.
하지만 QPI의 경우 두 개의 독립된 레인이 있기 때문에 한쪽에는 읽기가 진행되며,
다른 한쪽에서는 쓰기가 진행되는 전송방식이다. 인텔에서는 이를 ‘양방향 전송’이라고 불리는 이 방식은 언밀히 따지면 ‘이중 단방향 전송’에 가깝다고 할 수 있다.

네할렘 프로세서의 QPI는 프로세서 버전별도 다르게 적용된다.
인텔이 가장 먼저 발표한 인텔 코어 i7 965 익스트림의 경우 QPI 링크는 3.2GHz로 동작한다.
하지만 단순히 숫자로 봐서는 얼마나 대단한지를 가늠하기 힘들 것이다. 그렇다면 예를 들어보자.
현재 펜린(Penryn)의 최대 FSB 값은 1,600MHz다.

하지만 이 값은 어디까지나 QDR 기술을 적용한 값으로 실제 프로세서의 버스 값은 400MHz에 불과하다.
다시 말해 3.2GHz로 동작하는 QPI와 8배의 차이를 보인다는 것을 알 수 있다.
AMD 역시 과거 이와 비슷한 기술인 하이퍼트랜스포트(HyperTransport)을 토대로 프로세서 시장에서 한 몫을 하는데 발판이 될 만큼 높은 성능향상을 이끌어 낸바 있다.

인텔의 i7 모델을 보니까 메모리버스 부분에 상당히 고려를 많이 했더군요..

과거에 north bridge 즉 MCH의 성능이 어떻게 되느냐가 인텔 칩셋에서는 중요한 요소 였지요
메모리와 CPU 사이에 대역폭이 얼마냐가 인텔 칩셋을 고르는데 중요한 요소 였고
AMD의  비아칩셋에서는 사우스브리지에에 강점이 있어서 얼마나 많은 주변장치를 붙이느냐 였거든요..
펜티엄4 출시 때 였던가... 하이퍼스레딩, 하이퍼트랜스포트가지고 FSB 영역의 대역폭 싸움이 치열했었는데..

그런데 일반사용자가 사용하는 어플리케이션은 이런 것을 많이 따지지를 않지요..
당연히 최소사양에도 돌아가게끔 개발자들이 설계를 하기 때문에 일반 사용자는 잘 몰라도 되는 부분이기도 합니다. 단지 동영상, 멀티미디어, 대용량의 데이타를 처리할 필요가 있을 경우에는
CPU, 메모리, 메인보드, 하드디스크 RPM을 모두 따지게 됩니다.

제가 볼때는 현재 운영체제게가 아직은 디스크 부분을 많이 사용하는 로직을 가지고 있습니다.
그리고 사용자가 주로 많이 작업하게 되는 부분이
설치, 삭제, 복사, 파일 삭제등을 볼 수 있습니다.

게임이야 말이 필요없이 사양이 좋으면 되는 것이지만..

인터넷, 워드를 한다면 
듀얼코어 7000시리즈 이상의 CPU
메모리가 싸니까 4G 정도의 메모리,
메인보드는 돈을 아낄 생각하지 말고 좋은 것으로 구입하고
그래픽카드도 512M정도
하드디스크를 좀 RPM이 빠른 7200 이상으로 구입하면 무난할 것으로 보입니다.

하드디스크도 SSD 때문에 언제 사라질지 모르니까
많이 구입하지 말고 가지고 있는 것을 활용하는 방법을 찾아 보는 것도 좋겠네요