NUMA (acceso a memoria no uniforme)

NUMA (acceso a memoria no uniforme) es un método de configuración de un clúster de microprocesadores en un sistema multiprocesamiento para que puedan compartir memoria localmente, mejorando el rendimiento y la capacidad del sistema para expandirse. NUMA se utiliza en un sistema multiprocesamiento simétrico (SMP). Un sistema SMP es un sistema» estrechamente acoplado «de» compartir todo «en el que varios procesadores que trabajan bajo un solo sistema operativo acceden a la memoria del otro a través de un bus común o ruta de» interconexión». Normalmente, una limitación de SMP es que a medida que se agregan microprocesadores, el bus compartido o la ruta de datos se sobrecargan y se convierten en un cuello de botella de rendimiento. NUMA agrega un nivel intermedio de memoria compartida entre unos pocos microprocesadores para que todos los accesos a datos no tengan que viajar en el bus principal.

NUMA puede considerarse como un «clúster en una caja».»El clúster típicamente consiste en cuatro microprocesadores (por ejemplo, cuatro microprocesadores Pentium) interconectados en un bus local (por ejemplo, un bus de Interconexión de Componentes periféricos) a una memoria compartida (llamada «caché L3 «) en una sola placa base (probablemente también podría denominarse tarjeta ). Esta unidad se puede agregar a unidades similares para formar un sistema multiprocesamiento simétrico en el que un bus SMP común interconecta todos los clústeres. Este sistema normalmente contiene de 16 a 256 microprocesadores. Para un programa de aplicación que se ejecuta en un sistema SMP, todas las memorias de procesador individuales parecen una sola memoria.

Cuando un procesador busca datos en una determinada dirección de memoria, primero busca en la caché L1 en el propio microprocesador, luego en un chip de caché L1 y L2 algo más grande cercano, y luego en un tercer nivel de caché que proporciona la configuración NUMA antes de buscar los datos en la «memoria remota» ubicada cerca de los otros microprocesadores. Cada uno de estos clústeres es visto por NUMA como un «nodo» en la red de interconexión. NUMA mantiene una vista jerárquica de los datos en todos los nodos.

Los datos se mueven en el bus entre los clústeres de un sistema SMP NUMA utilizando la tecnología de interfaz coherente escalable (SCI). SCI coordina lo que se llama «coherencia de caché» o consistencia a través de los nodos de los clústeres múltiples.

Los sistemas SMP y NUMA se utilizan normalmente para aplicaciones como la minería de datos y el sistema de soporte de decisiones en el que el procesamiento se puede dividir en varios procesadores que trabajan colectivamente en una base de datos común. Sequent, Data General y NCR se encuentran entre las empresas que producen sistemas NUMA SMP.