La Red de Conocimientos Pedagógicos - Conocimientos matemáticos - Rendimiento de la tecnología multiproceso

Rendimiento de la tecnología multiproceso

Aunque aumentar la frecuencia del reloj de la CPU y aumentar la capacidad de la caché pueden mejorar el rendimiento, dicha mejora en el rendimiento de la CPU es técnicamente difícil. De hecho, debido a muchas razones en las aplicaciones, las unidades de ejecución de la CPU no se utilizan por completo. Si la CPU no puede leer datos normalmente (cuello de botella de bus/memoria), la utilización de su unidad de ejecución disminuirá significativamente. Además, la mayoría de los subprocesos de ejecución actualmente carecen de soporte ILP (paralelismo a nivel de instrucción, paralelismo a nivel de instrucción). Todo esto ha provocado que el rendimiento actual de la CPU no se aproveche por completo. Por lo tanto, Intel utiliza otra idea para mejorar el rendimiento de la CPU, permitiendo que la CPU ejecute múltiples subprocesos al mismo tiempo, para que la CPU pueda lograr una mayor eficiencia, que es la llamada tecnología "Hyper-Threading (HT)". . La tecnología Hyper-Threading utiliza instrucciones de hardware especiales para simular dos núcleos lógicos en dos chips físicos, lo que permite que un solo procesador utilice computación paralela a nivel de subprocesos y es compatible con sistemas operativos y software de subprocesos múltiples, lo que reduce el tiempo de inactividad de la CPU. eficiencia.

La tecnología Hyper-Threading permite que una CPU ejecute múltiples programas al mismo tiempo y comparta los recursos en una CPU. En teoría, debería ejecutar dos subprocesos al mismo tiempo como dos CPU que necesita el procesador. para agregar un puntero de CPU lógico (unidad de procesamiento lógico) más. Por lo tanto, el área del troquel del P4 HT de nueva generación aumenta en un 5% en comparación con el P4 anterior. Las partes restantes, como ALU (unidad aritmética de enteros), FPU (unidad aritmética de punto flotante) y caché L2 (caché secundaria), permanecen sin cambios y estas partes se comparten.

Aunque la tecnología Hyper-Threading puede ejecutar dos subprocesos al mismo tiempo, no es como dos CPU reales, cada CPU tiene recursos independientes. Cuando dos subprocesos necesitan un recurso al mismo tiempo, uno de ellos debe detenerse temporalmente y abandonar el recurso hasta que estos recursos estén inactivos antes de continuar. Por lo tanto, el rendimiento de Hyper-Threading no es igual al rendimiento de dos CPU.

Intel P4 Hyper-Threading tiene dos modos de funcionamiento, Single Task Mode (modo de tarea única) y Multi Task Mode (modo multitarea) Cuando el programa no admite multiprocesamiento (operación multiprocesador). ), El sistema detendrá la operación de una de las CPU lógicas y concentrará los recursos en una sola CPU lógica, de modo que el rendimiento de los programas de un solo subproceso no se reducirá porque una de las CPU lógicas esté inactiva. Sin embargo, la lógica detenida. La CPU seguirá esperando trabajo y ocupará una cierta cantidad de tiempo, por lo que cuando la CPU Hyper-Threading ejecuta el modo de programa Modo de tarea única, es posible que no alcance el rendimiento de la CPU sin la función Hyper-Threading, pero sí el rendimiento. La brecha no será demasiado grande. En otras palabras, cuando se ejecuta software de aplicación de un solo subproceso, la tecnología de hiperproceso puede incluso reducir el rendimiento del sistema. Este problema es especialmente probable que ocurra cuando los sistemas operativos de múltiples subprocesos ejecutan software de un solo subproceso.

Cabe señalar que las CPU que contienen tecnología Hyper-Threading requieren soporte de chipset y software para aprovechar de manera óptima esta tecnología. Los conjuntos de chips que actualmente admiten la tecnología Hyper-Threading incluyen: Intel i845GE, PE y SiS iSR658 RDRAM, SiS645DX y SiS651 pueden admitir Hyper-Threading directamente; Intel i845E e i850E pueden admitirlo después de actualizar el BIOS; VIA P4X400 y P4X400A pueden admitirlo; pero aún no obtiene la autorización formal. Los sistemas operativos como Microsoft Windows XP, Microsoft Windows 2003 y el kernel de Linux 2.4.x y versiones posteriores también admiten la tecnología Hyper-Threading.