Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

254
Vistas
¿Un sistema operativo elige un controlador de memoria cuando asigna memoria en un servidor con varios controladores? ¿Cómo?

Muchos servidores multinúcleo más nuevos de Intel y AMD vienen con varios controladores de memoria DRAM en cada zócalo. (En comparación con computadoras de escritorio/portátiles con un controlador de dos canales).

Cuando un sistema operativo (por ejemplo, Linux) necesita memoria para atender la solicitud de una aplicación, ¿cómo se elige un controlador DRAM para atender la solicitud? Veo tres posibilidades:

  1. Linux lo elige usando algún algoritmo.
  2. El hardware está cableado de tal manera que un núcleo particular utilizará un controlador de memoria particular.
  3. Hay un tercer componente que toma esta decisión.

No he encontrado ninguna respuesta definitiva.

over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

Bastante seguro de que la memoria física contigua se intercala entre los controladores dentro de un socket/paquete, por lo que un único flujo de lectura secuencial se distribuirá entre todos ellos.

(La falta de L3 es cuando se toma la decisión de enviar una solicitud a un controlador de memoria, por lo que presumiblemente la lógica en un segmento L3 sabe cómo dirigir el tráfico al controlador de memoria apropiado a través del bus de anillo o malla (Intel) o cualquier interconexión que AMD use en estos días Probablemente basado en alguna función de la dirección de la línea de caché, aunque con un número de controladores que no es potencia de 2, ¿una distribución por turnos de líneas de caché a los controladores podría requerir un divisor? Eso sería sorprendente).

BIOS/firmware puede configurar eso, tal vez con opciones de menú para controlar cómo.

Solo en un servidor de múltiples zócalos donde cada zócalo físico tiene algunos controladores de memoria, el sistema operativo está involucrado/es consciente de en qué zócalo está asignando memoria. ( NUMA local frente a remoto, por lo que la memoria será más rápida para los núcleos en el socket local).

over 4 years ago · Santiago Trujillo Denunciar

0

De forma predeterminada, Linux utiliza una política de asignación de "primer toque" para la memoria: una página recién instanciada se ubicará en el mismo dominio NUMA que el núcleo que realizó el acceso. Si no hay memoria libre disponible en el nodo NUMA deseado, se asignará desde otro nodo NUMA.

El BIOS configura la asignación de los controladores de memoria a los nodos NUMA (que luego el sistema operativo lee de las tablas proporcionadas por el BIOS).

La política de asignación predeterminada se puede modificar o anular mediante las API de asignación de NUMA o más fácilmente mediante el ejecutable "numactl". Las políticas disponibles incluyen "membind" (forzar la asignación de memoria en un nodo NUMA específico o anularla), "preferida" (principalmente la misma que la predeterminada, pero bloquea la migración automática de páginas NUMA) e "intercalar" (intercalar páginas en un determinado conjunto de números de nodo NUMA).

Los núcleos de Linux recientes admiten la migración automática de páginas NUMA. Cuando está habilitado, el sistema operativo supervisa los accesos a las páginas de los usuarios y, si los núcleos acceden predominantemente a ellas desde un nodo NUMA diferente, las páginas se moverán a ese nodo. Esto realmente funciona sorprendentemente bien.

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda