Intel hyper threading - Nota: 10 PDF

Title Intel hyper threading - Nota: 10
Author Jesus Arturo Guzmán Marinez
Course Arquitectura De Computadoras
Institution Instituto Tecnológico de Tijuana
Pages 6
File Size 186.8 KB
File Type PDF
Total Downloads 9
Total Views 141

Summary

Intel hyper threading...


Description

ARQUITECTURA DE COMPUTADORAS

Instituto Tecnológico de Tijuana Departamento de Sistemas Y Computación SEMESTRE AGOSTO-DICIEMBRE 2019 ARQUITECTURA DE COMPUTADORAS Miguel Angel Lopez Rodriguez SCG-1009SC9A Integrantes Guzman Martinez Jesus A -15210525 Muños Garcia Mayra 15210539

INTRODUCCIÓN La tecnología Hyper-Threading Intel® utiliza los recursos del procesador de manera más eficaz, posibilitando que se ejecuten múltiples subprocesos en cada núcleo. Como característica del desempeño, también aumenta la capacidad de procesamiento, lo que a su vez se traduce en un aumento del desempeño general del software de varios subprocesos.

Hyper Threading La tecnología HyperThreading consiste en ‘simular’ dos procesadores (o núcleos) en uno solo, dividiendo la carga de trabajo entre ambas y por tanto mejorando la velocidad de procesamiento. Aquí se aplica perfectamente el dicho ‘dos cabezas piensan más que una’ una lógica que Intel ha implementado desde hace tiempo en sus procesadores. En la actualidad podemos ver procesadores de 2, 4 , 6 u 8 núcleos físicos de Intel, que gracias a la tecnología HyperThreading, pueden simular el doble de núcleos de procesamiento. Por ejemplo, los procesadores Intel Core i3 poseen sólo dos núcleos físicos pero se comporta como si tuviese 4 núcleos (realmente son HILOS) gracias a esta tecnología. Estos núcleos adicionales que simula el HyperThreading se les suele llamar ‘núcleos lógicos’. El HyperThreading de Intel es una tecnología que está basada en el concepto de Simultaneous MultiThreading desarrollado por Sun Microsystems hace ya bastantes años (la patente es del año 1994). Su primera iteración salió al mercado, primero con los procesadores Xeon para servidores de esta marca y, luego, con la versión del núcleo Northwood C de los Pentium 4 en el año 2002, para luego empezar a emplearse en los procesadores Atom, Core i3, Core i5 y Core i7 a medida que pasaban los años, dándoles un boost de rendimiento bastante importante, siempre y cuando el sistema operativo y las cargas de trabajo fueran compatibles con ella, claro.

Cómo funciona el HyperThreading La tecnología del HyperThreading se basa en duplicar las unidades lógicas de cada núcleo del procesador, de manera que cada una de ellas pueda acceder a operaciones diferentes en la cola de instrucciones, pero manteniendo un único cuerpo de proceso. Un ejemplo

sencillo sería estar sentado en una mesa y disponer de dos brazos para coger cosas que tengáis encima de ella. Con vuestros dos brazos podréis acceder a ellas mucho más rápido que si solo dispusierais de un solo brazo, eso es lógico. Si en vez de estar vosotros solos en la mesa cogiendo cosas, fuerais varios amigos en la mesa, la analogía sería más del estilo a lo que sería un procesador con varios núcleos.

Continuando con la analogía, dado que con esta tecnología se comparte el cuerpo de proceso, sería como si estuvierais cogiendo cosas para limpiarlas y meterlas en una caja. Dado que solo tu puedes realizar la acción (tu serías el cuerpo de proceso del procesador), este es el factor limitante de la tecnología. Aun así, siempre es mucho mejor tener dos brazos para realizar la tarea que uno solo.

Uno de los inconvenientes de esta tecnología es que su efectividad depende en gran medida de si el sistema operativo es capaz de soportarla (es decir, que es capaz de tratar los hilos de proceso no como si fueran múltiples procesadores completos si no como múltiples unidades lógicas) y, especialmente, si las aplicaciones son más o menos paralelizables en las instrucciones que necesitan para funcionar. Si una aplicación solo puede procesar una instrucción a la vez, por mucho procesador con HyperThreading que tengas en tu equipo, no vas a notar ninguna diferencia que con un procesador que no disponga de él. Si, por el contrario, la aplicación es muy paralelizable (la mayoría de aplicaciones de diseño y edición, por ejemplo, lo suelen ser), entonces sí es bastante probable que veas un incremento en el rendimiento del sistema al emplearla. Y, mucho cuidado, también de la temperatura de funcionamiento.

USO DIARIO Un ordenador o un móvil actualmente es un dispositivo multi-tarea que realiza varias operaciones al mismo tiempo. Podemos ver una película y hacer un escaneo del sistema en busca de virus o jugar a un videojuego y descargarse la serie completa de Black Mirror. Esto es solo lo que el usuario puede ver pero un ordenador realiza muchas más tareas en segundo plano sin darnos cuenta. Son tareas habituales que hacemos todos los días, con mayor cantidad de núcleos de procesamiento un ordenador puede hacer todo esto y más sin que pierda rendimiento.

LA EVOLUCIÓN DE ESTA TECNOLOGÍA La primera vez que Intel implementó esta tecnología fue con los recordados procesadores Intel Pentium IV (Northwood), que en aquella época prometía una mejora en el rendimiento de entre el 15 y el 30% si lo teníamos activado consumiendo solo un 5% más. Este primer acercamiento a la tecnología HyperThreading fue un tanto agridulce, ya que el software de aquella época (hablamos del año 2001) no estaba demasiado preparado para este tipo de característica, así que en los sistemas operativos Windows 2000 o anteriores podíamos sufrir de una caída del rendimiento, por lo que teníamos que desactivarla mediante la BIOS de nuestra placa base. Luego de una pausa de varios años, la tecnología HyperThreading regreso con los Intel Core i3, i5 e i7 de la arquitectura Westmere (2010) y lo hizo para quedarse con unos excelentes resultados en tareas multi-hilo que pulverizó en rendimiento a las propuestas de AMD. La tecnología de HyperThreading, o Hyper-Threading lleva acompañándonos ya muchos años y se ha hecho, este término, sinónimo de los procesadores de Intel, que son las que la emplean. AMD ha comenzado a emplear una variación propia, denominada Simultaneous MultiThreading (o SMT), en sus procesadores con núcleo Zen con bastantes buenos resultados. Pero, cuáles son los orígenes de esta tecnología.

Aunque Intel fue pionera con su tecnología HyperThreading, AMD también ha implementado algo similar en sus procesadores a partir de la arquitectura Bulldozer. AMD lo llamo por su parte CMT (Cluster Based Multithreading) que hace exactamente lo mismo pero que no funciona de forma similar a la propuesta de Intel.

La tecnología CMT lo que hace es integrar dos núcleos en un solo bloque, pero no replica la unidad de punto flotante, que es compartida por los dos núcleos. Es decir, ese nuevo superbloque tendrá dos unidades para realizar operaciones con números enteros y sólo uno para las operaciones en coma flotante. La tecnología CMT de los procesadores AMD (serie FX y demás) pronto va a ser reemplazado por SMT (Simultaneous Multi-Threading) que será incluida en los nuevos Ryzen. La diferencia con CMT introducido en Bulldozer es que este podía ejecutar dos subprocesos que fueran idénticos, con SMT podrán ser ejecutados dos subprocesos por núcleo pero totalmente independientes. Lo cual veremos una gran evolución respecto a la ya mismo “obsoleta” de Intel.

VENTAJAS Bueno aunque intel proclama que la mejora es de 30% , se estima que suele variar entre 15 y 30 % dependerá el sistema operativo, de aplicación a usar y de como esté programada, pero si efectivamente si hay mejoría con respecto al mismo modelo sin HT como siempre puedes acudir a los chart de tio toms hardware. Para poder realizar el HT aumentan un poco el consumo de recursos entorno al 5%

DESVENTAJAS Debido a diversos estudios de ARM sobre intel, los procesadores con hT consumen hasta un 42% de energía, incluso intel retiro esta tecnología durante un tiempo. Incluso se puede crear un hilo malintencionado para poder monitorizar el acceso a memoria(timing atack)

El beneficio de Hyper-Threading Muy bien, basta ya de tantos términos técnicos. Ahora vamos a la parte más importante: cómo Hyper-Threading afectará el rendimiento de la computadora que estás pensando construir o comprar. En términos de tareas diarias como navegación web, correo electrónico y procesamiento de textos, Hyper-Threading no tendrá mucho impacto. Sí, Hyper-Threading es teóricamente mejor en tareas múltiples. Sin embargo, los procesadores de hoy son tan rápidos que los programas básicos rara vez están limitados por la velocidad de su procesador. La forma en que se codifican los programas también puede ser una limitación. Es posible que a veces descubra que tienes numerosos programas abiertos, pero solo uno de los núcleos de su procesador está siendo utilizado. Eso es porque los programas, por cualquier razón, no tienen su trabajo dividido entre los diferentes núcleos disponibles.

Sin embargo, cuando intentas hacer un trabajo pesado, Hyper-Threading puede ser más útil. Las aplicaciones que tienen más probabilidades de beneficiarse son los programas de renderizado 3D, las aplicaciones de transcodificación de audio / video de alta resistencia y las aplicaciones científicas creadas para el máximo rendimiento de múltiples subprocesos. Pero también puede disfrutar de un aumento en el rendimiento al codificar archivos de audio en iTunes, jugar juegos en 3D y comprimir / descomprimir carpetas. El aumento en el rendimiento puede ser de hasta el 30%, aunque también habrá situaciones en las que Hyper-Threading no ofrece ningún aumento en absoluto.

Conclusión Como lo indica la mejora del rendimiento de solo un 30%, Hyper-Threading no es lo mismo que duplicar el número de núcleos en un procesador. Si un representante de ventas le dice eso, tenga cuidado, porque son ignorantes o están felices de mentirle si creen que eso ayudará a impulsar el hardware. Dicho esto, Hyper-Threading es una característica genial, y vale la pena tenerla. Es particularmente bueno si te gusta editar medios a menudo o si usas tu computadora como una estación de trabajo para programas profesionales como Photoshop o Maya....


Similar Free PDFs