728x90
인텔에서 출시한 새로운 CPU 아키텍쳐인 네할렘(Nehalem) 아키텍쳐의 간략한 설명이다. 네할렘 아키텍쳐에서 흥미로운건 Loop Stream Detector로 Loop를 판단하여 파이프라인의 Fetch Decode 과정을 건너뛰는 방식이다. Loop이 가장적은 노력으로 가장 많은 퍼포먼스 향상을 할 수 있는 타겟이기 때문에 Loop Stream Detector로 인한 실질적인 성능 향상이 얼마나 될지 크게 기대된다. 그리고 새로운 마이크로아키텍쳐를 뒷받쳐 줄 QuickPath Architecture 또한 흥미롭다. 사실 QPA는 AMD의 기술과 거의 동일하지만 신뢰성을 높이기 위해서 CRC 체크하는 방법 등은 꽤 흥미롭다.

QPA 구조의 설명은 다음의 데모에서 볼 수 있다.
http://www.intel.com/technology/quickpath/demo/demo.htm

AMD가 기술적 선점을 한 것이 새로운 아키텍쳐의 자극제가 된 듯하다. 이로서 다시 인텔이 기술적 우위를 확고히 하게 되었고 이에 AMD는 거의 파산직전으로 몰리고 있다. 한때 AMD가 PC CPU 시장의 2~30% 정도 점유했다가 한자리 수로 전락함으로써 인텔은 여러가지 독점에 따른 제약을 받게 될 가능성이 더 커져서 오히려 독이되고 있다. 아무튼 사용자의 입장에서 새로운 아키텍쳐는 매우 흥미롭고 매력적이지 않을 수 없다. 갖고싶다!!

<2009-11-23 추가>
실제 필드에서는 네할렘 프로세서로 바꾸었더니 기존의 CPU 보다 성능이 떨어진다고 토로하는 경우가 많다고 한다. 예를들어 메모리를 많이 사용하는 환경에서는 네할렘 프로세서가 오히려 성능 저하를 가져올 수 있다. 네할렘 아키텍쳐에서는 1333MHz 메모리 클럭을 사용하는 DDR3 메모리를 지원하기 위해서 (FSB는 1333Mhz를 극복할 수 없기때문에) 메모리 컨트롤러를 코어 옆으로 옮기는 방법을 채택했다. 이것이 QuickPath Architecture의 핵심인데, 문제는 이 QPA의 한계 때문이다.



왼쪽 그림은 현재 일반적인 멀티코어 프로세서의 메모리 컨트롤 방식이고 오른쪽은 QPA의 새로운(AMD가 먼저 사용) 메모리 컨트롤 방식이다. 위에서 말했듯이 여러 코어가 메모리 컨트롤러를 공유하다가 각각의 코어에 메모리 컨트롤러가 장착된 방식으로 변경되었다. 이 방식으로 FSB의 한계를 극복할 수 있었지만 각 코어는 연결된 메모리만을 직접 접근할 수 있고 이때문에 다른 코어에 종속된 메모리는 코어를 거쳐야만 메모리 값을 얻어올 수 있다. 즉, 기존에는 각 코어가 메인 메모리 전체를 접근할 수 있었으나 QPA에서는 종속된 메모리만 접근가능하여 한단계 더 거쳐야만 메모리에 접근이 가능하단 말이다. 때문에 코어간의 메모리 교환이 많아지면 당연히 성능이 저하될 수 밖에 없다. 게다가 설명에는 나와있지 않은데 메모리를 Full로 장착하는 경우 메모리 클럭이 1333Mhz로 동작하지 않고 800Mhz로 동작한다고 한다. 따라서 메모리를 많이 사용하는 시스템에서는 네할렘 아키텍쳐는 오히려 값은 비싸지만 성능은 오히려 나오지않는 상황이 발생한다. 또한 이러한 문제때문에 코어의 수가 늘어나 8개를 넘게되면 더 이상 QPA는 무용지물이 되어 버릴 것이다. 앞으로 이러한 문제를 어떻게 극복할 것인지 귀추가 주목된다.

728x90
복사했습니다!