jueves, noviembre 13, 2008

Intel Core i7

Intel acaba de presentar la siguiente evolución de su microarquitectura, con nombre comercial Core i7 y conocida como Nahalem. Las novedades más importantes de los nuevos preocesadores son el abandono de la arquitectura de bus que ha usado Intel desde el Pentium-Pro , para pasar a una nueva denominada Intel QuickPath Interconnect, QPI y la inclusión de los controladores de memoria en la propia oblea (cosa que ya hizo AMD hace tiempo).

QPI y controladores de memoria en oblea

Intel tenía en su gama de microprocesadores un problema de ancho de banda: su arquitectura de bus (AGTL) no disponía del suficiente para alimentar a las unidades de ejecución de sus microprocesadores. Para compensar este efecto, incluía memorias cachés de gran tamaño en los chips. Los problemas se complicaban aún más en caso de varios microprocesadores. En el momento que se modificara memoria, había que escribirla a la caché y de ahí a la memoria principal para que todos los micros tuvieran una vista coherente de la misma. Este cambio de arquitectura supone pasar de un sistema de memoria unificada a una arquitectura NUMA. El ancho de banda del nuevo QPI es de 25.6 GB/s. Se pueden ver la mejora en ancho de banda respecto a Penryn en Bandwidth and cache latency (Sandra)

Ahora se podrá dedicar parte de esa ingente cantidad de transistores usados en la caché en aumentar el paralelismo de las unidades de ejecución , puesto que se la combinación de los controladores de memoria en la misma oblea y el nuevo bus permite disponer de la cantidad de ancho de banda necesaria para alimentarlas. En este chip se han puesto las bases para la evolución futura de estas novedades. Por ejemplo, se ha pasado de 820 millones de transistores del caché L2 del la arquitectura Penryn (12 MB combinado) a los 731 millones (8MB L3 combinado), mientras que el Caché L2 ha bajado a uno de 256 Kb por core. También se mejora de manera significativa la latencia de acceso a memoria.

La versión actual soporte DDR3-1066 y el controlador de memoria utiliza un reloj 3.2 Ghz o 2.13 Ghz, dependiendo del modelo.

Modularidad

Uno de los objetivos que persigue Intel es tener una microarquitectura que pueda ser adaptada a diferentes mercados: móviles, estaciones de trabajo de alto rendimiento, desktops y servidores. El número de componetes (cores de ejecución, enlaces QPI, tamaño de caché L3 y controladores de memoria), podrá escalarse en función del segmento de mercado al que vaya dirigido el micro.

Cores de ejecución

Core i7 es un microprocesador con un pipeline de ejecución de 14 etapas capaz de ejecutar instruciones fuera de orden. Las unidades de ejecución no han cambiado respecto a la actual arquitectura Core 2. Ha vuelto la tecnología de hyperthreading (SMT), de tal manera que un micro con dos cores físicos, el sistema verá ahora como cuatro lógicos, lo que sea por no tener hardware ocioso.

En la microarquitectura la unidad de deteción de bucles se colocado detrás de las etapas de decodificación de instrucciones. Ahora almacena hasta 28 micro-ops, lo que permite durante la ejecución del bucle ser más rápido y apagar las unidades de predición de saltos, obteción de instrucciones (fetch) y decodificación de las mismas (decode), ahorrando energía. Este elemento recibe el nombre de Loop Stream Detector (LSD) y en el caso del Core 2 estaba situado antes de la unidad de decodificación de instruciones.

El número de micro-ops que es capaz de ejecutar este Core de ejecución es 128. La técnica que debutó en los Core 2 Duo de macrofusión (agrupar ciertas instruciones de tal manera que dan lugar a una sola micro-ops para su ejecución, para incrementar el número de instrucciones procesadas por cilo), ahora se usa también en el modo de funcionamiento de 64 bits (se puede ver una pequeña descripción de la macro-fusión en EM64T in Core 2 Duo: What’s the Theory?)

Se ha modificado las tablas TLB ( Translation Lookaside Buffers), aquellas encargadas de traducir las direcciones de memoria virtual a física. En Core 2 Duo, el número de entradas no daba para mapear ni todo el caché de nivel 2. Ahora se aumenta para que sean capaces de mapear todo el caché L3 (y un poco más).

Se ha mejorado en la penalización que se incurría al intentar acceder un acceso a la memoria caché no alineada en los Core 2 Duo y se ha mejorado la ejecución de las instrucciones de sincronización (aquellas usadas para implementar primiticvas de sincronización como spinlocks)

Me encantaría saber más de microarquitectura, reconozco que la gente de Intel ha hecho un trabajo excelente para conseguir un gran micro y por las pruebas vistas en Ars Tecnica, deja en pañales a la arquitectura Core 2 Duo.

SSE 4.2

Vuelven instrucciones para gestionar cadenas - que habían quedado arrinconadas durante los últimos años -, cálculo de CRC e instrucciones como POPCNT (cuenta los "1" ...).

Consumo de energía

Se ha introducido un nuevo módulo en el microprocesador para controlar el consumo de manera más eficiente. Este módulo llamado PCU, es un microcontrolador que casi tiene el tamaño de un 486 en transistores, y a través de firmware permite implementar algoritmos inteligentes de control del consumo. Por ejemplo, puede detectar que hay cores que están ociosos y así aumentar ligeramente la frecuencia de los cores activos.

Referencias

Technorati Tags: ,

4 comentarios:

Anónimo dijo...

No estaria mal que se corrigieran errores en la redaccion de la entrada, que dicho ya de paso, es interesantisima. Un saludo.

jhuesos dijo...

Interesante. A ver si me leo el articulo de ArsTechnica correspondiente para empaparme mas.

Aunque estudio esto, no estoy muy puesto en arquitectura, asi que corrigeme si me equivoco:

El controlador de memoria y el abandono de la arquitectura bus no es mas que un giro de Intel para seguir el camino marcado por AMD con el controlador integrado y el HyperTransport, no?

La verdad que no se cual es el problema de AMD para sacar micros que igualen la potencia (digo sobre benchmark, todos sabemos que en un uso cotidiano, es mas o menos lo mismo), pero esta claro que en algunos campos lleva años de adelanto y que ha acertado mucho mas con las bases de las tecnologias a seguir por las CPUS: 64 bits, core monoliticos, ahorro de energia, arquitecturas multipunto, controladores de memoria integrados,...

Y todo esto lo consigue AMD con un departamento de I+D que es infimo comparado con el de la todopoderosa Intel.

Un saludo

Anónimo dijo...

muy bien dicho mi estimado Star Marvin. Intel como es de suponerse vuelve a la carga de la mercadotecnia a ofrecernos palabras y mas palabras.

Ya era hora de abandonar el FSB que desde los cavernarios Pentium Pro venia siendo un problema de cuellos de botella.

Sinceramente yo no soy un usuario que nesesite la potencia del mundo. Tengo juegos (no muy extremos), hago cosas de ofimatica, navego y descargo de internet. Todas aquellas cosas comunes que hace la gente. Y mi Phenom X3 8450 me basta y hasta me sobra en demasia.

Como tu lo comentas el departamento de I+D de AMD se centra mas que en la inovacion, en el beneficio de sus clientes. Para que vendo 5 micros de a 500 cuando puedo vender 100 de a 200.

No creo que la inmensa mayoria de usuarios nesesiten tal capacidad (o tengan el dinero del mundo para la cuenta de luz) que solo algunos cuantos Mhz menos o mas.

Tal vez Intel haya sacado un buen micro. Lo que no se vale es que te enseñen el mayor y luego te vendan SOLO el recortado.

Saul Escalante

Drizzt dijo...

@Anonimo
Oka, tomo nota.

@Starvin Marvin,@Saul Escalante

Muchas de las novedades de AMD en la época del K7 vinieron del equipo de ingenieros de DEC/Compaq que diseñaron el Alpha - lástima de micro -.

Intel tiene ahora ventaja en procesos (está en 32 nm de anchura de canal de transistor frente a los 45 nm de AMD). Tengo esperanzas que AMD consiga ponerse las pilas y siga manteniendo una competencia sana con intel, porque así, nosotros los usuarios, salimos beneficiados.