Deathlife escribió:Alguien me puede explicar que diferencia hay entre el dual core, con un HT? (ah y supongo que sera de 64 bits no?)
Un dual-core tiene dos microprocesadores (casi) en un mismo encapsulado/chip. Un hyperthreading es capaz de tomar instrucciones de dos hilos de ejecución distintos para aprovechar mejor los recursos del micro. En los procesadores actuales (bueno, y ya hace tiempo de esto), las instrucciones no se ejecutan en orden. El pipeline coge todas las que puede y las lanza a ejecución, de forma que si tienes 3 instrucciones que dependen una de la otra de forma consecutiva pero la cuarta no, la primera de ese grupo de 3 y la cuarta se ejecutarán a la vez fuera de orden (luego el pipeline ordena los resultados) si hay suficientes unidades funcionales. Con hyperthreading esa cuarta instrucción se puede ir a buscar a otro hilo, donde seguro que no hay dependencia con el primer hilo.
"Para quien pueda aguantarlo" escribió:Por ejemplo, si tu microprocesador tiene 3 unidades para operaciones con enteros y quieres hacer: 1) A = B + C, 2) D = A + E, 3) F = G + H; 1) puede ser lanzada a ejecución, 2) se queda esperando a que 1) termine porque necesita el valor de A, y 3) también puede ser lanzada a ejecución. De esa forma 2 de las 3 unidades de enteros están ocupadas pero... ¿qué pasa con la tercera? Pues en hyperthreading, el procesador tomaría una instrucción de otro proceso (o de otro hilo del mismo proceso) y la lanzaría para terminar de llenar las unidades funcionales, ya que seguro que no tiene dependencias con el otro hilo. Tienes el mismo hardware (bueno, hay como 5% más de hardware para todo lo que supone añadir otro hilo de ejecución) pero consigues tener más instrucciones en ejecución a la vez. Esto es muy útil sobre todo en un Prescott, que tiene 31 etapas de ejecución, y un fallo en uno de los hilos (de cache o de predicción de saltos) hace que se te vacíe medio pipeline, con hyperthreading se pueden ocultar esos fallos con instrucciones de otro hilo. Y precisamente porque los AMD solo tienen 12-15 etapas, no les merece la pena poner HT (y por eso ni lo han puesto ni lo piensan poner de momento).
Con el dual-core simplemente tienes dos microprocesadores con el doble de recursos. De hecho, los dual-core de intel tienen también hyperthreading en los cores. En total un dual-core de intel tendría 4 microprocesadores lógicos. Dos físicos divididos en dos lógicos cada uno por el hyperthreading.