For 64-bit this is recommended if the system is Intel Core i7
(or later), AMD Opteron, or EM64T NUMA.
Primeiro, note que o Intel Core i7 é apenas uma designação de marketing, e a frase Intel Core i7 (ou posterior) é muito vaga. Então, o que isso poderia significar?
O kernel do Linux Kconfig
help text edits mencionando um Intel Core 7i , então corrigido para Intel Core i7 , foi feito em novembro de 2008. O log de confirmação diz:
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.
Pode razoavelmente referir-se apenas aos processadores Intel Core i7 lançados ou anunciados por especificação na altura. Esses seriam os processadores Bloomfield , baseados no Microarquitetura Nehalem , que moveu o controlador de memória do Northbridge para o processador (que a AMD havia feito em 2003 com o Opteron / AMD64) e introduziu QuickPath Interconnect / QPI (como pendente do HyperTransport da AMD) para interconexão de CPU / CPU e CPU / IOH (hub de IO, ex-Northbridge).
As CPUs Bloomdale i7 foram as primeiras entradas no novo esquema de nomenclatura Core i {3,5,7} . Então, quando o texto doc do Linux foi escrito, i7 não se referiu especificamente ao Core i7 em oposição ao i5 (primeiro em 09/2009) ou i3 (primeiro em 01/2010), mas em todos probabilidade para a nova microarquitetura Nehalem com seu controlador de memória integrado e QPI.
Há um press release da Intel de 11/2008 no i7 ( Intel lança processador mais rápido no Planeta que afirma que o processador Core i7 mais que dobra a largura de banda de memória das plataformas "Extreme" anteriores da Intel , mas não menciona NUMA.
A razão é, eu acho, que o NUMA não importa para PCs desktop, nem mesmo para PCs "extremos".
O NUMA é importante para servidores caros que possuem vários soquetes de CPU (não apenas vários núcleos em um soquete) com pistas de acesso de memória física dedicadas (não apenas um controlador de memória), para que cada CPU tenha sua memória local dedicada, que é "mais próxima "para isso do que a memória dos outros processadores. (Pense em 8 soquetes, 64 núcleos, 256 GB de RAM.) NUMA significa que uma CPU também pode acessar a memória remota (a memória local de outra CPU) além de sua própria memória local, embora a um custo maior. NUMA é a síntese de uma arquitetura de memória compartilhada como o SMP, onde toda a memória está igualmente disponível para todos os núcleos e uma arquitetura de memória distribuída como o MPP (Massively Parallel Processing), que dá a cada nó um bloco dedicado de memória. É MPP, mas parece o SMP para o aplicativo.
As motherboards de desktop não possuem soquetes duplos e as CPUs de desktop Intel, incluindo as edições i7 extremas, não possuem o link QPI adicional para a configuração de soquete duplo.
Verifique o artigo de QPI da Wikipédia para ver como o QPI é relevante para a NUMA:
In its simplest form on a single-processor motherboard, a single QPI
is used to connect the processor to the IO Hub (e.g., to connect an
Intel Core i7 to an X58). In more complex instances of the
architecture, separate QPI link pairs connect one or more processors
and one or more IO hubs or routing hubs in a network on the
motherboard, allowing all of the components to access other components
via the network. As with HyperTransport, the QuickPath Architecture
assumes that the processors will have integrated memory controllers,
and enables a non-uniform memory access (NUMA) architecture.
[…]
Although some high-end Core i7 processors expose QPI, other
"mainstream" Nehalem desktop and mobile processors intended for
single-socket boards (e.g. LGA 1156 Core i3, Core i5, and other Core
i7 processors from the Lynnfield/Clarksfield and successor families)
do not expose QPI externally, because these processors are not
intended to participate in multi-socket systems. However, QPI is used
internally on these chips […]
A maneira como uma CPU Intel Nehalem em uma placa para servidor com vários soquetes faz acesso não local à memória é via QPI. Também no artigo no NUMA :
Intel announced NUMA compatibility for its x86 and Itanium servers in
late 2007 with its Nehalem and Tukwila CPUs. Both CPU families share a
common chipset; the interconnection is called Intel Quick Path
Interconnect (QPI). AMD implemented NUMA with its Opteron processor
(2003), using HyperTransport.
Verifique este relatório de 11/2008 para ver que a Intel desativou um dos dois Links QPI no i7, desativando assim a configuração de dois soquetes, onde o NUMA se aplica:
This first, high-end desktop implementation of Nehalem is code-named
Bloomfield, and it's essentially the same silicon that should go into
two-socket servers eventually. As a result, Bloomfield chips come with
two QPI links onboard, as the die shot above indicates. However, the
second QPI link is unused. In 2P servers based on this architecture,
that second interconnect will link the two sockets, and over it, the
CPUs will share cache coherency messages (using a new protocol) and
data (since the memory subsystem will be NUMA)—again, very similar to
the Opteron.
Então, estou me desviando de sua pergunta sobre os resultados de pesquisa do Google ... Você está perguntando por que os documentos do Linux começaram a recomendá-lo no final de 2008? Não tenho certeza se esta pergunta tem uma resposta comprovadamente correta ... Nós teríamos que perguntar ao doc escritor. Ativar o NUMA não beneficia os usuários de CPU de desktop, mas também não os prejudica significativamente, ao mesmo tempo que ajuda os usuários com vários soquetes, então por que não? Este poderia ter sido o raciocínio. Encontrado que refletiu em uma discussão sobre a desativação do NUMA no rastreador do Arch Linux ( FS # 31187 - [linux] - desabilita o NUMA dos arquivos de configuração ).
O autor do documento também pode ter pensado no potencial do NUMA da arquitetura Nehalem, da qual, quando o documento foi escrito, os processadores Core i7 de 11/2008 (920, 940, 965) foram os únicos representantes; Os primeiros chips Nehalem para os quais a NUMA realmente faria sentido são provavelmente os processadores Q1 / 2009 Xeon com duplo link QPI, como o Xeon E5520 .