Fw: HT o no HT, he aquí el dilema

23/01/2004 - 01:24 por Diego Calleja García | Informe spam
El Thu, 22 Jan 2004 11:11:05 -0800 "SemiP" <anonymous@discussions.microsoft.com> escribió:


¿Que pasa cuando se ponen muchas etapas en el pipeline de un procesador?(Procesadores Intel)
Que si hay un error, pues se tienen que recargar todas las etapas y entonces se crean
tiempos muertos. La solucion Intel a ese problema es el Hyperthreading. Tapar los huecos.




(NOTA: El proposito de la respuesta no es responder al evidente intento
de flame/desinformación -me parece realmente triste que haya gente capaz
de sobreponer el dinero sobre algunos principios morales- sino tener una
(agradable) discusión técnica con cierta gente con la que se puede discutir
de las cosas por aquí. Tengo muchas dudas sobre este tema, y despues del
desinformado post original me veia "obligado" a comentar mas en detalle de que
va todo esto para ver si alguien me puede clarificar y corregir algunos aspectos
de toda esta historia. Esta es mi visión del asunto)

AMD no puede hacer la memoria mas rápida. Traer un dato de la memoria RAM que
no estén en los caches del procesador puede tardar el tiempo equivalente a 400
instrucciones o mas en un sistema moderno. Ese es uno de los principales
problemas de los ordenadores de hoy en dia, a pesar de ser "mas rapidos",
en realidad es que con el tiempo se han ido haciendo mas _lentos_ (para poner
un ejemplo, los Amiga podían llevar un dato a la cpu DOS veces en el mismo
ciclo de reloj, y por lo visto utilizaban el truco para manejar una peticion
tanto de los buses del sistema, pci, o lo que llevara aquello) como del
procesador en un solo ciclo de reloj. Para mas inri, mientras la frecuencia
a la que trabajan los procesadores se ha duplicado varias veces a lo largo
de los años, el tamaño de las caches no ha aumentado mucho...

El hypertreading, al menos como yo lo entiendo (que no es mucho)
es ponerse a hacer algo en ese laaargo espacio de tiempo en el que la CPU no
hace nada (en realidad no es asi, pero creo que es el resultado mas
beneficioso que se le puede sacar)

El hypertreading, que en realidad se llama SMT y creo que fue
inventado por Digital a finales de los años 70, no es una mala idea,
ni es un parche para nada, y de hecho otros fabricantes de cpus (Sun,
IBM) tienen planes para incorporar esto a sus micros. De hecho para el G5
he oido rumores que iban a incorporar SMT "real, no como el de Intel". Si el
SMT de Intel es bueno o no no lo se, eso depende de que partes del procesador
se duplican, cuales se comparten y como se comporten. AMD, frente al problema
de la latencia, ha hecho, en mi opinion dos cosas: una, el integrar el
controlador de memoria en el x86-64, que ha mejorado el rendimiento
considerablemente (y que es, en mi opinion, LA razon por la que
el opteron tiene tan buenos resultados en muchos benchmarks y no otra,
aunque no soluciona el problema porque el ritmo actual tiene a seguir
aumentando la latencia) y 2) los rumores de cpus multi-core (varias cpus
reales "enfrascadas" en una sola. Que no es ni de lejos lo mismo que el SMT.

En un ordenador SMP se tiene el mismo problema que en un procesador
normal: No se pueden mantener al núcleo de ejecución de instrucciones
del procesador al 100% continuamente, asique aunque con SMP se pueden
hacer "mas cosas a la vez", en realidad lo que se hace desde un punto
de vista global es "mantener al núcleo de ejecución desocupado a ratos
DOS veces". SMT lo que trata es de mantener la ocupación tanto
como sea posible. Es por ello por lo que afirmo, que el SMT NO es
un simple parche. Es una buena idea. Si el SMT de Intel es el mejor
del mundo no lo sé, pero estoy convencido de que es una buena idea,
y no tengo ninguna duda en que los principales fabricantes de CPUs
van a empezar a implementar SMT en sus procesadores...y tambien estoy
seguro de que las futuras versiones del HT de Intel serán mucho mas
completas que las actuales.

* Articulo muy bueno sobre el hypertreading:
http://arstechnica.com/paedia/h/hyp...ing-1.html

Preguntas similare

Leer las respuestas

#6 Diego Calleja García
23/01/2004 - 14:23 | Informe spam
El Fri, 23 Jan 2004 13:46:29 +0100 "SemiP" escribió:

Pero del controlador de memoria a la memoria hay Hypertransport y la latencia del bus se mide por los ciclos
de reloj del bus.



Pues todos los documentos que he encontrado hasta el momento indican que no
hay ningun enlace hypertransport entre la cpu y la memoria...simplemente
el controlador de memoria integrado...

http://www.amd.com/us-en/assets/con...FINAL2.pdf
http://www.amd.com/us-en/Processors...03,00.html
http://www.amd.com/us-en/assets/con...25012A.pdf
Respuesta Responder a este mensaje
#7 Diego Calleja García
23/01/2004 - 22:26 | Informe spam
El Fri, 23 Jan 2004 06:46:06 -0800 "SemiP" escribió:

Bueno pues la verdad es que tienes razon y donde dije Hypertransport deveria haber dicho
Controlador de memoria Integrado es el que minimiza la latencia de antes de llegar a la cache.



Que nos devuelve a la cuestion del principio: El controlador de memoria
integrado está efectivamente integrado en la CPU. Lo cual da muy buenos
resultados hoy, pero habrá que ver que tal aguanta ese controlador integrado
cuando AMD vaya sacando versiones funcionando a mas Mhz (no creo que integrar
el controlador de memoria fomente precisamente la estabilidad),
cuando empieze a salir la DDR II: el controlador integrado del opteron
solamente soporta DDR normal, AMD tendrá que sacar versiones nuevas si no
quiere que la gente se vea forzada a usar el controlador de la placa base y de
peores resultados en los benchmarks (el controlador integrado del opteron
funciona a la misma velocidad que el core). Un aspecto MUY positivo del
controlador integrado del opteron es que tiene buses de memoria independientes
para cada cpu (no compartido entre todas las CPUs, que es lo que suele haber,
y que es un verdadero problema cuando unas varias CPUs intentan acceder al
bus simultaneamente)


Mas que nada, es por eso por lo que pienso que el Hypertreading no es un
"parche", me parece una técnica muy interesante y muy correcta...
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida