¿Qué es el acceso a memoria no uniforme (NUMA)?

Last Updated: 2022-08-02
4.3
(7)
Resumen: NUMA, abreviatura de Non-Unified Memory Access, es un diseño de memoria de computadora para multiprocesamiento. Busque aquí una introducción completa a NUMA.

Definición

NUMA es una arquitectura de multiprocesamiento en la que la memoria se divide en almacenamiento estrecho y distante, y el tiempo de acceso a la memoria depende de la ubicación de la memoria en relación con el procesador.

Bajo NUMA, los procesadores acceden a su memoria local más rápido que la memoria no local. Los beneficios de NUMA se limitan a cargas de trabajo específicas, especialmente en servidores donde los datos suelen estar fuertemente asociados con tareas o usuarios específicos.

Los sistemas de acceso a memoria no uniformes son plataformas de servidor avanzadas con múltiples buses de sistema. Estas plataformas pueden utilizar varios procesadores en una sola placa y todos los procesadores tienen acceso a toda la memoria de la placa base.

Las arquitecturas NUMA siguen lógicamente el escalado de una arquitectura SMP (multiprocesamiento simétrico). En comparación con SMP, la arquitectura NUMA escala a un mayor número de CPU.

Concepto basico

Modern CPUs run much faster than the main memory they use. In the early stages of computing and data processing, the CPU typically runs slower than its memory. The limiting memory access number is the key to extracting high performance from modern computers.

Sin embargo, el fuerte aumento en el tamaño del sistema operativo y las aplicaciones que se ejecutan en el sistema operativo a menudo abruma estas mejoras de procesamiento de caché. Un sistema multiprocesador sin NUMA empeora aún más el problema.

NUMA intenta abordar este problema proporcionando memoria separada para cada procesador, evitando un impacto en el rendimiento cuando varios procesadores resuelven la misma memoria.

Además, los sistemas NUMA incluyen otro hardware o software para mover datos entre bancos de memoria. Esto reduce la velocidad de los procesadores conectados a estos bancos. Por lo tanto, el aumento de velocidad general debido a NUMA depende principalmente de la naturaleza de la tarea en ejecución.

NUMA coherente en caché (ccNUMA)

Casi todas las arquitecturas de CPU aprovechan las ubicaciones de referencia en el acceso a la memoria con una pequeña cantidad de memoria no compartida de alta velocidad denominada almacenamiento en caché.

ccNUMA adopta la comunicación entre procesadores entre controladores de caché para mantener imágenes de memoria consistentes cuando varios cachés almacenan la misma ubicación de memoria. Como resultado, ccNUMA tiene un rendimiento deficiente cuando varios procesadores intentan acceder rápida y continuamente a la misma área de memoria.

Supporting NUMA in the operating system tries to reduce the frequency of such access by allocating processors and memory in a NUMA-friendly manner and preventing the scheduling and locking algorithms necessary to make NUMA unfriendly access.

Soporte de software

Debido a que NUMA influye en gran medida en el rendimiento del acceso a la memoria, se requiere cierta optimización de software para permitir que los subprocesos y procesos de programación accedan a sus datos de memoria.

  • Silicon Graphics IRIX admite la arquitectura ccNUMA sobre 1240 CPU y Origin Server Series.
  • Microsoft Windows 7, así como Windows Server 2008 R2, han aumentado la compatibilidad con más de 64 núcleos lógicos de la arquitectura NUMA.
  • Java 7 agrega soporte para asignadores de memoria y recolectores de basura compatibles con NUMA.
  • La versión 3.13 del kernel de Linux introdujo varias políticas para colocar procesos cerca de la memoria y manejar situaciones como el uso de grandes páginas transparentes o compartir páginas de memoria entre procesos. La nueva configuración de sysctl permite habilitar o deshabilitar el equilibrio NUMA y configurar varios parámetros de equilibrio de memoria NUMA.
  • OpenSolaris uses groups to model the NUMA architecture.
  • FreeBSD agrega la relevancia inicial de NUMA y la configuración de políticas a la versión 11.0

¡Línea de fondo!

In short, after going through this page, you will have a better understanding of the definition, basic concept, and work manner of Non-Unified Memory Access. You will also know that NUMA affects memory access performance so some software optimizes to support it.

¿Qué tan útil fue esta publicación?

¡Haz clic en una estrella para calificarla!

Puntuación media 4.3 / 5. Recuento de votos: 7

¡Hasta ahora no hay votos! Sea el primero en calificar esta publicación.

Artículo anterior

¿Cómo revertir el último icono de Google Chrome para Mac al original? Resumen: NUMA, abreviatura de Non-Unified Memory Access, es un diseño de memoria de computadora para multiprocesamiento. Busque aquí una introducción completa ...

Artículo siguiente

¿Cómo recuperar videos eliminados de Mac? Resumen: NUMA, abreviatura de Non-Unified Memory Access, es un diseño de memoria de computadora para multiprocesamiento. Busque aquí una introducción completa ...

Acerca de la recuperación de datos de Bitwar

3 pasos para recuperar más de 500 tipos de documentos, fotos, videos, audios y archivos de archivo eliminados, formateados o perdidos de varios escenarios de pérdida de datos.

Aprende más

Artículos calientes

    Artículos relacionados