¿Incluir dos procesadores aumenta la memoria RAM máxima?


16

Si E3-1285 v6 admite un máximo de 64 GB de RAM, ¿el uso de una placa base de doble socket aumenta la memoria máxima? Supongo que no, pero me gustaría saber la razón. Mi lógica dice que si se comparte RAM, ambos procesadores deberían poder abordar toda la RAM disponible y, por lo tanto, también se limitará a 64 GB. ¿Alguna explicación técnica para esto?

Respuestas:


32

En las CPU modernas, el controlador de memoria está integrado directamente en la CPU, mientras que en tiempos anteriores la CPU accedía a la memoria a través de un sistema de bus. El sistema de bus tenía la ventaja de que el acceso a la memoria era uniforme, lo que sigue siendo el caso en las CPU de un solo socket.
Ahora, al ingresar a los sistemas de doble socket, cada CPU tiene memoria local dedicada y se puede acceder indirectamente a la memoria de la otra CPU a través de QPI, que es, en palabras simples, un enlace entre las dos CPU. Esto se llama NUMA (acceso de memoria no uniforme).

Bueno, poner las cosas juntas. Si tiene una segunda CPU, puede aumentar la cantidad total de memoria de su sistema, pero también necesita una CPU que sea capaz de ejecutarse en modo de doble procesador. IIRC, la serie E3 no es compatible con socket dual, E5 es compatible con socket dual y E7 quad-socket.


Muchas gracias por su clara explicación ... mis estudios de ciencias de la computación van a la zaga del progreso del mercado en arquitectura de computadoras. Un compañero me dijo que intentara construir un sistema Xeon con GPU integrada (para medios OpenCL) y 128 GB ... y es simplemente imposible :-(.
kankamuso

44
Puede hacerlo, solo necesita una CPU con controladores de memoria para direccionar más memoria. Las máquinas Xeon E5 tienen 4 canales de memoria y puede instalar hasta 8 módulos de 32 GB cada uno por CPU.
Andreas Rogge

Esto a veces se escribe crípticamente como 1S solamente .
chrylis -on strike-

1
@kankamuso Sin embargo, una GPU discreta puede ser bastante útil.
JAB

2
@kankamuso Una GPU Intel integrada no será útil para OpenCL. Obtendrá un mejor rendimiento incluso de una GPU discreta de nivel de entrada.
duskwuff

10

En primer lugar, el E3-1285v6 no admite múltiples sockets, por lo que para aumentar la cantidad de CPU en el sistema necesitará una CPU diferente.

Mientras que las CPU AMD e Intel en modo largo usan punteros de 64 bits, las CPU disponibles en la actualidad están limitadas a 48 bits. Por lo tanto, es posible direccionar hasta 256 TB de memoria y cada CPU compatible con x86_64 puede direccionar esa cantidad de memoria.

Sin embargo, hay otra limitación: el controlador de memoria integrado en la CPU. Ese controlador de memoria tiene un número limitado de canales (en el caso de su CPU: 2), lo que significa que puede comunicarse con dos módulos de memoria simultáneamente. Los canales pueden alternar entre múltiples módulos (generalmente 2), por lo que generalmente puede conectar dos módulos por canal, que suman un total de 4 módulos en su caso.

Si tiene una placa de zócalo múltiple con múltiples CPU instaladas, tendrá un controlador de memoria por CPU, por lo que al final duplicará la memoria física instalable (que no está realmente relacionada con la memoria direccionable) instalando una segunda CPU.


¡Eso es mucho también! Muy interesante explicación para mí.
kankamuso

8
48 bits es el límite de espacio de dirección virtual, no físico. Es inconveniente para el núcleo, pero es posible admitir más memoria física de la que se puede asignar en un espacio de direcciones virtual plano (tuvimos esto con 32 bits + PAE por un tiempo). El formato de tabla de páginas x86-64 ya admite direcciones físicas de hasta 52 bits , aunque las CPU reales admiten menos. Los detalles del controlador de memoria suelen ser importantes aquí, no solo el ancho interno del controlador físico.
Peter Cordes

@PeterCordes: otoh varios procesadores no tienen implementadas todas las líneas de dirección, como el E5-1620v3 en el que estoy ejecutando actualmente, que tiene soporte de dirección física de 46 bits.
PlasmaHH

1

Si E3-1285 v6 admite un máximo de 64 GB de RAM, ¿el uso de una placa base de doble socket aumenta la memoria máxima?

Sí, el uso de múltiples CPU aumenta la memoria máxima, sin embargo, su CPU no admite placas base de múltiples sockets.

Un compañero me dijo que intentara construir un sistema Xeon con GPU integrada (para medios OpenCL) y 128 GB ... y es simplemente imposible :-(

De hecho, las partes de extremo bajo (socket 115x) tienen la opción de GPU integradas (presumiblemente porque se derivan de los mismos diseños básicos que las partes de escritorio convencionales) pero no tienen soporte multi-socket y tienen un controlador de memoria que solo admite cuatro módulos (dos canales con dos módulos cada uno) de memoria no registrada. Con tecnología actual que lo limita a 64 GB.

Las partes del extremo superior tienen mejores controladores de memoria con más canales y soporte para tipos de memoria que permiten más y más módulos por canal (512 GB por zócalo es factible) y en algunos casos son compatibles con configuraciones de múltiples zócalos, pero carecen de las GPU integradas.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.