For 64-bit this is recommended if the system is Intel Core i7
(or later), AMD Opteron, or EM64T NUMA.
첫째, 인텔 코어 i7 은 마케팅 명칭 일 뿐이며 인텔 코어 i7 (또는 그 이후 버전) 이라는 문구 는 매우 모호합니다. 무엇을 의미할까요?
Intel Core 7i를Kconfig
언급 한 다음 Intel Core i7 로 수정 된 Linux 커널 도움말 텍스트 편집 은 2008 년 11 월에 수행되었습니다. 커밋 로그는 다음과 같습니다.
x86: update CONFIG_NUMA description
Impact: clarify/update CONFIG_NUMA text
CONFIG_NUMA description talk about a bit old thing.
So, following changes are better.
o CONFIG_NUMA is no longer EXPERIMENTAL
o Opteron is not the only processor of NUMA topology on x86_64 no longer,
but also Intel Core7i has it.
해당 시점까지 사양에 따라 발표되거나 발표 된 Intel Core i7 CPU 만 합리적으로 언급 할 수 있습니다. 즉 것 블룸필드 에 기초 프로세서, 네 할렘 마이크로 아키텍처 (AMD는 옵테론 / AMD64와 함께 2003 년에했던)가 CPU에 노스 브릿지의 메모리 컨트롤러를 이동, 도입 퀵 패스 인터커넥트 / QPI (AMD의 하이퍼 트랜스 포트에 펜던트 등) CPU / CPU 및 CPU / IOH (IO 허브, ex-Northbridge) 상호 연결 용.
Bloomdale i7 CPU는 새로운 Core i {3,5,7} 이름 지정 체계 의 첫 번째 항목이었습니다 . 따라서 Linux 문서 텍스트가 작성되었을 때 i7 은 i5 (2009 년 1 월 1 일) 또는 i3 (2010 년 1 월 1 일)과 달리 Core i7을 구체적으로 언급하지 않았지만 새로운 Nehalem 마이크로 아키텍처를 사용할 가능성이 있습니다. 통합 메모리 컨트롤러 및 QPI
i7 (2008 년 11 월 11 일부터 Intel에서 가장 빠른 프로세서 출시) 에 Intel 보도 자료가 있습니다 . Core i7 프로세서는 이전 Intel "Extreme"플랫폼의 메모리 대역폭을 두 배 이상 늘 렸지만 NUMA는 언급하지 않았습니다. .
그 이유는 NUMA가 데스크톱 PC에는 중요하지 않으며 심지어 "최고의"PC에는 중요하지 않기 때문입니다.
NUMA는 하나의 메모리 컨트롤러가 아닌 전용 물리적 메모리 액세스 레인이있는 여러 개의 CPU 소켓 (하나의 소켓에 여러 개의 코어가 아닌)이있는 고가의 서버에 중요하므로 각 CPU에는 전용 로컬 메모리가 있습니다. 다른 CPU의 메모리보다. (8 개의 소켓, 64 개의 코어, 256GB RAM을 생각하십시오.) NUMA는 CPU가 자체 로컬 메모리 외에 원격 메모리 (다른 CPU의 로컬 메모리)에 더 많은 비용이 들지만 액세스 할 수 있음을 의미합니다. NUMA는 SMP와 같은 공유 메모리 아키텍처와 모든 코어에서 모든 메모리를 동일하게 사용할 수있는 MPP (Massively Parallel Processing)와 같은 분산 메모리 아키텍처를 통합하여 각 노드에 전용 메모리 블록을 제공합니다. MPP이지만 응용 프로그램의 SMP처럼 보입니다.
데스크탑 마더 보드에는 듀얼 소켓이 없으며 익스트림 i7 에디션을 포함한 인텔 데스크탑 CPU에는 듀얼 소켓 구성을위한 추가 QPI 링크가 없습니다.
체크 위키 백과 QPI의 QPI는 NUMA 관련이 방식을 볼 수 기사 :
단일 프로세서 마더 보드에서 가장 간단한 형태로 단일 QPI를 사용하여 프로세서를 IO Hub에 연결합니다 (예 : Intel Core i7을 X58에 연결). 보다 복잡한 아키텍처 인스턴스에서 별도의 QPI 링크 쌍은 마더 보드의 네트워크에서 하나 이상의 프로세서와 하나 이상의 IO 허브 또는 라우팅 허브를 연결하여 모든 구성 요소가 네트워크를 통해 다른 구성 요소에 액세스 할 수 있습니다. HyperTransport와 마찬가지로 QuickPath 아키텍처는 프로세서에 통합 메모리 컨트롤러가 있다고 가정하고 NUMA (Non-Uniform Memory Access) 아키텍처를 활성화합니다.
[…]
일부 고급 Core i7 프로세서는 QPI를 노출하지만 단일 소켓 보드 용으로 설계된 다른 "주류"Nehalem 데스크탑 및 모바일 프로세서 (예 : Lynnfield / Clarksfield 및 후속 제품군의 LGA 1156 Core i3, Core i5 및 기타 Core i7 프로세서) 이러한 프로세서는 다중 소켓 시스템에 참여하지 않기 때문에 QPI를 외부에 노출시키지 마십시오. 그러나 QPI는 이러한 칩에서 내부적으로 사용됩니다 […]
다중 소켓 서버 보드의 Intel Nehalem CPU가 로컬 메모리에 액세스하지 못하는 방식은 QPI를 통해 이루어집니다. 또한 NUMA 의 기사에서 :
인텔은 2007 년 말 Nehalem 및 Tukwila CPU와의 x86 및 Itanium 서버에 대한 NUMA 호환성을 발표했습니다. 두 CPU 제품군 모두 공통 칩셋을 공유합니다. 상호 연결을 Intel QPI (Quick Path Interconnect)라고합니다. AMD는 HyperTransport를 사용하여 Opteron 프로세서 (2003)로 NUMA를 구현했습니다.
인텔이 i7에서 두 개의 QPI 링크 중 하나를 비활성화하여 NUMA가 적용되는 이중 소켓 구성을 비활성화 한 것을 확인하려면 2008 년 11 월 부터이 보고서를 확인하십시오 .
Nehalem의 첫 번째 하이 엔드 데스크탑 구현은 코드 명 블룸필드 (Bloomfield)이며, 결국 2 소켓 서버로 들어가야하는 실리콘과 본질적으로 동일합니다. 결과적으로, 블룸필드 칩에는 위의 다이 샷이 나타내는 것처럼 2 개의 QPI 링크가 내장되어 있습니다. 그러나 두 번째 QPI 링크는 사용되지 않습니다. 이 아키텍처를 기반으로하는 2P 서버에서 두 번째 상호 연결은 두 개의 소켓을 연결하고 그 위에 CPU는 캐시 일관성 메시지 (새 프로토콜을 사용)와 데이터 (메모리 하위 시스템이 NUMA이므로)를 공유합니다. 옵테론에게.
Google 연구 결과와 관련하여 귀하의 질문을 피하고 있습니다 ... 2008 년 말에 Linux 문서에서 왜이 기능을 켜야하는지 묻고 있습니까? 이 질문에 정답이 있는지 확실하지 않습니다… 문서 작성자에게 문의해야합니다. NUMA를 켜도 데스크톱 CPU 사용자에게는 도움이되지 않지만 멀티 소켓 사용자를 지원하면서 크게 해를 입히지는 않습니다. 이것은 이론적 근거 일 수 있습니다. Arch Linux 트래커에서 NUMA 비활성화에 대한 토론에 반영된 것으로 나타났습니다 ( FS # 31187-[linux]-구성 파일에서 NUMA 비활성화 ).
문서 작성자는 또한 문서 작성 당시 11/2008 Core i7 프로세서 (920, 940, 965)가 유일한 대표 인 Nehalem 아키텍처의 NUMA 잠재력에 대해 생각했을 것입니다. NUMA가 실제로 이해 한 최초의 Nehalem 칩은 아마도 Xeon E5520 과 같은 이중 QPI 링크가있는 2009 년 1 분기 Xeon 프로세서 일 것입니다 .
CONFIG_NUMA
위해core i7
?