Red de conocimiento informático - Problemas con los teléfonos móviles - ¿Qué es SMP?

¿Qué es SMP?

El nombre completo de SMP es tecnología "Symmetrical Multi-Processing" (multiprocesamiento simétrico), que se refiere a un grupo de procesadores (múltiples CPU) ensamblados en una computadora y la memoria se comparte entre cada CPU. Subsistemas y estructuras de autobuses.

Es una tecnología paralela muy utilizada en relación con la tecnología de multiprocesamiento asimétrico. En esta arquitectura, una computadora ya no consta de una sola CPU, sino de varios procesadores que ejecutan una única copia del sistema operativo al mismo tiempo y comparten la memoria y otros recursos de una computadora. Aunque se utilizan varias CPU simultáneamente, desde una perspectiva de gestión, se comportan como una sola máquina. El sistema distribuye simétricamente las colas de tareas entre múltiples CPU, lo que mejora en gran medida las capacidades de procesamiento de datos de todo el sistema. Todos los procesadores tienen igual acceso a la memoria, E/S e interrupciones externas. En un sistema multiprocesamiento simétrico, los recursos del sistema son compartidos por todas las CPU del sistema y la carga de trabajo se puede distribuir uniformemente entre todos los procesadores disponibles.

Lo que normalmente llamamos un sistema de CPU dual es en realidad el tipo más común de sistema de multiprocesamiento simétrico, generalmente llamado "multiprocesamiento simétrico de 2 vías". Se utiliza en aplicaciones comerciales y domésticas ordinarias. No tiene muchos usos prácticos, pero ha logrado muy buen rendimiento en producción profesional, como 3DMax Studio, Photoshop y otras aplicaciones de software. Es un buen compañero para configurar estaciones de trabajo económicas. Con la mejora del nivel de las aplicaciones de usuario, es realmente difícil satisfacer las necesidades de las aplicaciones prácticas utilizando un solo procesador. Por lo tanto, varios fabricantes de servidores han adoptado sistemas de multiprocesamiento simétricos para resolver esta contradicción. En el mercado interno, estos modelos generalmente tienen 4 u 8 procesadores, y algunos tienen 16 procesadores. Pero en general, la escalabilidad de las máquinas con estructura SMP es pobre y es difícil lograr más de 100 multiprocesadores. Los convencionales generalmente tienen entre 8 y 16, pero esto es suficiente para la mayoría de los usuarios. La ventaja de este tipo de máquina es que su uso no es muy diferente del de una microcomputadora o una estación de trabajo. Los cambios de programación son relativamente pequeños. Si un programa escrito originalmente en una microcomputadora se va a trasplantar a una máquina SMP. fácil de cambiar. Los modelos con estructura SMP tienen poca disponibilidad. Debido a que 4 u 8 procesadores comparten un sistema operativo y una memoria, una vez que hay un problema con el sistema operativo, toda la máquina quedará completamente paralizada. Y debido a que la escalabilidad de esta máquina es pobre, no es fácil proteger la inversión del usuario. Sin embargo, la tecnología de este tipo de máquinas es relativamente madura y el software correspondiente es relativamente abundante, por lo que una gran cantidad de máquinas paralelas lanzadas actualmente en el mercado nacional son de este tipo. Los sistemas multiprocesamiento simétrico más comunes en servidores de PC suelen utilizar procesadores de 2, 4, 6 u 8 vías. Actualmente, los servidores UNIX pueden admitir sistemas con hasta 64 CPU, como el producto Enterprise 10000 de Sun. La tecnología más crítica en el sistema SMP es cómo resolver mejor los problemas de comunicación y coordinación mutua de múltiples procesadores.

Para construir un sistema SMP, el primer y más crítico punto es la necesidad de una CPU adecuada. Las CPU que vemos habitualmente son todas de un solo núcleo, por lo que no podemos ver ninguna diferencia entre ellas. Sin embargo, de hecho, la compatibilidad con la función SMP no es incondicional. Puede construir un sistema multiprocesamiento con solo unas pocas CPU. Es simplemente hablar de noche. Para realizar la función SMP, la CPU que utilicemos debe tener los siguientes requisitos:

1. La unidad APIC (Controladores de interrupción programables avanzados) debe estar integrada dentro de la CPU. El núcleo de la especificación de multiprocesamiento de Intel es el uso de controladores de interrupción programables avanzados (APIC). Las CPU se comunican entre ellas enviándose interrupciones entre sí. Al adjuntar acciones a las interrupciones, diferentes CPU pueden controlarse entre sí hasta cierto punto.

Cada CPU tiene su propio APIC (se convierte en el APIC local de esa CPU), y también hay un APIC de E/S para manejar las interrupciones causadas por los dispositivos de E/S. Este APIC de E/S está instalado en la placa base, pero cada APIC. en la CPU es indispensable; de ​​lo contrario, no podrá manejar la coordinación de interrupciones entre varias CPU.

2. El mismo modelo de producto y el mismo tipo de núcleo de CPU. Por ejemplo, aunque Athlon y Pentium III tienen unidades APIC integradas, les resulta imposible construir un sistema SMP juntos. Por supuesto, incluso para Celeron y Pentium III, la posibilidad de que eso sea 0, e incluso para Coppermine-. Core Pentium III También es imposible construir un sistema SMP con el Pentium III de Tualatin; esto se debe a que sus instrucciones de ejecución no son exactamente las mismas y la coordinación de interrupciones APIC también es muy diferente.

3. Exactamente la misma frecuencia de funcionamiento. Si desea construir un sistema Pentium III dual, debe tener dos procesadores de 866 MHz o dos de 1000 MHz. No puede usar uno de 866 MHz y el otro de 1000 MHz, de lo contrario el sistema no se encenderá normalmente.

4. Mantenga el mismo número de serie del producto tanto como sea posible. Incluso los procesadores con el mismo núcleo y la misma frecuencia causarán problemas increíbles debido a los diferentes lotes de producción. Cuando dos lotes de CPU de producción se ejecutan como procesadores duales, puede suceder que una CPU esté sobrecargada y la otra esté muy poco cargada, y no se pueda alcanzar el rendimiento máximo. Peor aún, puede provocar una falla en los procesadores producidos. Se debe seleccionar el mismo lote tanto como sea posible para construir un sistema SMP.