Arquitectura de computadores: IBM Cell processor

26
Autores: Miguel Ángel Botija Ortega. Víctor Téllez Motilla. Iván Durango Blanco

Transcript of Arquitectura de computadores: IBM Cell processor

Page 1: Arquitectura de computadores: IBM Cell processor

Autores:

Miguel Ángel Botija Ortega.

Víctor Téllez Motilla.

Iván Durango Blanco

Page 2: Arquitectura de computadores: IBM Cell processor

ÍNDICE:

1. Contexto histórico y evolución.

2. Características generales.

3. Arquitectura.

4. Organización interna y flujo de datos.

5. Soporte E/S.

6. Pipeline: Etapas y características.

7. Comparativa y rendimiento.

8. Posibles usos.

Page 3: Arquitectura de computadores: IBM Cell processor

CONTEXTO HISTÓRICO Y EVOLUCIÓN.

Tras la unión de Sony, Toshiba e IBM (STI) en el año

2000, se comienza a pensar la base del procesador Cell.

En el 2005 Sony incluye una unidad de propósito

general, Power procces element ( PPE ) en el núcleo, junto

con 8 unidades de propósito vectorial Synergistic Processing

Unit ( SPU ).

Marzo de 2007, sale al mercado la versión de 65 nm.

Febrero de 2008, se anuncia otra nueva versión de 45 nm.

Posteriormente en Marzo de 2008, surge una mejora en el

rendimiento, PowerXCell 8i que introduce cálculo de PF doble

precisión.

Page 4: Arquitectura de computadores: IBM Cell processor

CARACTERÍSTICAS GENERALES.

Procesadores Multinúcleo con 8 SPUs ( Basadas en RISC con organización SIMD y almacenamiento local ).

1 PPE de 64 bits capaz de manejar 2 hilos de ejecución.

Máxima frecuencia por encima 4GHz (Optimo).

Memoria en el chip: 2,5MB (512 KB L2 y 8 * 256KB).

234 millones de transistores.

Tamaño de la oblea de 221 mm²

Gestión automática de energía.

DMA para sostenimiento del ancho de banda.

Page 5: Arquitectura de computadores: IBM Cell processor

CARACTERÍSTICAS GENERALES.

Page 6: Arquitectura de computadores: IBM Cell processor

ARQUITECTURA.

Esquema general de Cell.

Page 7: Arquitectura de computadores: IBM Cell processor

ARQUITECTURA.

Power Processor Element ( PPE )

Similar a un Power PC de 64 bits

doble núcleo.

- Tiene el mismo juego de instrucciones.

- Contiene una Power Processing Unit ( PPU) y su propio

sistema de almacenamiento (PPSS)

La PPU es la encargada de ejecutar el SO, puesto que, como

la mayoría de procesadores modernos, soporta memoria

virtual.

RISC, capaz de ejecutar dos instrucciones a la vez.

Unidad predictora de saltos, Branch processor unit (BPU).

Carece por completo de ejecución fuera de orden.

Page 8: Arquitectura de computadores: IBM Cell processor

ARQUITECTURA.

Arquitectura PPE.

Page 9: Arquitectura de computadores: IBM Cell processor

ARQUITECTURA.Synergistic Processors Elements SPE (8)

Diseñados para mejorar el

rendimiento de cómputo intensivo.

Compuestos por el Synergistic Processor Unit ( SPU ) y

el Memory Flow Controler ( MFC ).

Tiene128 Registros de 128 bits cada uno (Permiten SIMD)

256 Kbytes de memoria local LS.

Arquitectura RISC superescalar.

Acceden a la memoria principal a través de DMA asíncrono.

No disponen de caché, ni de instrucciones ni de datos

Page 10: Arquitectura de computadores: IBM Cell processor

ARQUITECTURA.

Arquitectura SPE

Page 11: Arquitectura de computadores: IBM Cell processor

ORGANIZACIÓN INTERNA Y FLUJO DE DATOS.

Los elementos SPE y PPE están conectados al ElementInterconnect Bus ( EIB ).

Tiene un Anillo de 4 canales unidireccionales, de 16 bytescada uno.

Todos los elementos conectados a él. (PPE, SPE’s, I/O)

La comunicaión a través de modelo de paso de mensajes(MPI message-parsing interface standar, en el que losprocesos se comunican entre sí enviando mensajes).

Los elementos conectados al bus pueden leer o escribir 8bytes por ciclo de reloj.

Page 12: Arquitectura de computadores: IBM Cell processor

ORGANIZACIÓN INTERNA Y FLUJO DE DATOS.

Page 13: Arquitectura de computadores: IBM Cell processor

SOPORTE E/S.

Contiene un macro XIO de la empresa Rambus condoble canal de nueva generación, que interconecta conmemoria XDR Rambus.

El enlace XIO-XDR funciona 3,2 GB/s en cada pin (Doscanales de 32 bits pueden proporcionar un máximoteórico de 25,6 GB/s).

El adaptador de sistema, también un diseñoRambus, es conocido como FlexIO.

Organizada en 12 buses( Cada bus es un canal de 8 bitspunto a punto).

Cinco caminos de 8 bits de entrada al Cell.

Y los siete restantes de salida

Page 14: Arquitectura de computadores: IBM Cell processor

PIPELINE: ETAPAS Y CARACTERÍSTICAS.

La PPU es un microprocesador multithreading con

dos threads en ejecución.

El pipeline de la PPU está formado por 21 etapas (

el mismo número de etapas de la tubería como el

Pentium 4 Northwood ).

Una característica a destacar es que ejecuta

instrucciones en orden.

Page 15: Arquitectura de computadores: IBM Cell processor

PIPELINE: ETAPAS Y CARACTERÍSTICAS.

Synergistic Processor Element(SPE).

Es un procesador de 32 bits y usa

instrucciones SIMD.

SPU es un procesador a medio camino entre los procesadores depropósito general y el hardware de propósito específico

Tiene su propia memoria local, llamada Local Store (LS).

Dispone de dos pipelines ( toman los nombres even o alineadas enposiciones de memoria pares y odd impares ) segmentados parapoder ejecutar idealmente dos instrucciones por ciclo.

Son de la misma longitud y están diferenciados en dos partes quefuncionan independientemente, el front end y el back end.

Page 16: Arquitectura de computadores: IBM Cell processor

PIPELINE: ETAPAS Y CARACTERÍSTICAS.

IC1-IC4: Estas etapas realizan la captación de instrucciones (Fetch), los

saltos se predicen después de la etapa IC4.

IB1-IB2: Buffer de instrucciones para ir introduciendo instrucciones a la cola

de instrucciones.

ID1-ID3: estas son las etapas principales para decodificar la instrucción.

MC1-MC8: este es el camino descifrar micro código, y es muy lento.

IS: después de haber sido descifrado, las instrucciones de pasar a la unidad

de control del PPE, donde son emitidas en el orden al núcleo de ejecución.

DLY: Esta etapa sirve únicamente para frenar la velocidad de reloj y esperar

a las cargas y almacenamientos.

RF1-RF2: Se accede al archivo de registro en Load / Store.

EX: La ejecución de la instrucción se lleva a cabo durante estas etapas, el

número de ciclos dependerá de la tubería y en la instrucción.

WB: Etapa write back.

Pipeline PPE

Page 17: Arquitectura de computadores: IBM Cell processor

PIPELINE: ETAPAS Y CARACTERÍSTICAS.

Pipeline PPE

Page 18: Arquitectura de computadores: IBM Cell processor

PIPELINE: ETAPAS Y CARACTERÍSTICAS.Front End

El front end comprende las etapas de decode e issue. Recibe las instrucciones de fetch y gestiona los

riesgos de datos. Si existen riesgos de datos, es el front end el que bloquea la ejecución y resuelve (o

espera a que se resuelvan) los problemas mencionados.

Fetch: Su función es gestionar dos buffers de instrucciones y un buffer llamado Predicted path buffer

(PPB), tienen una capacidad de 32 instrucciones cada uno, y por lo tanto, de 128 bytes. Las instrucciones

en estos buffers tienen PCs consecutivos (Se podría decir que no forma parte de cauce).

Decode: Se encarga de decodificar las instrucciones obtenidas de fetch. Su tarea es extraer de la

instrucción los datos necesarios para su ejecución.

Issue: Se encarga de eliminar los riesgos de datos y pasar las instrucciones al back end. Issue es el

encargado de bloquear la ejecución del front end si es necesario. Existen los siguientes escenarios

problemáticos posibles:

Una instrucción en issue quiere leer un registro bloqueado: la respuesta es bloquear el front end

hasta que el back end desbloquee el registro causante del conflicto.

La instrucción odd pretende leer un dato que escribirá la instrucción even: se pasa la instrucción even

al back end y se bloquea el front end hasta que el registro de destino se desbloquee; así, la

instrucción odd ya tendrá disponible el registro y podrá pasar a ejecutarse.

Al terminar su trabajo la etapa de issue, las instrucciones que han pasado al back end están situadas en el

pipeline que les corresponde y no se producirá ningún riesgo de datos.

Pipeline SPE

Page 19: Arquitectura de computadores: IBM Cell processor

PIPELINE: ETAPAS Y CARACTERÍSTICAS.

Back End

En el back end se encuentran las unidades funcionales de la SPU, donde se

ejecutan las operaciones.

El último ciclo de todas las unidades funcionales es siempre de escritura en el

banco de registros (excepto en el caso de instrucciones de store o salto, que no

escriben en el banco de registros).

Las instrucciones en el back end nunca verán alterado su camino de ejecución ni

serán bloqueadas.

Las unidades funcionales en el back end son suficientes para ejecutar siempre las

dos instrucciones por ciclo.

Cada unidad funcional corresponde al pipeline even u odd. Gracias a esta

restricción, nunca tendremos, por ejemplo dos instrucciones FP ejecutándose en el

mismo ciclo, y por lo tanto, en esta arquitectura no hay riesgos estructurales.

Page 20: Arquitectura de computadores: IBM Cell processor

PIPELINE: ETAPAS Y CARACTERÍSTICAS.

Pipeline SPE

Page 21: Arquitectura de computadores: IBM Cell processor

COMPARATIVA XENON VS CELL

Xenon Xbox 360 Cell PS3

1 Mb de caché L2 compartida entre los 3 cores. El núcleo madre de la PS3 (PPE), tiene 512 KB

de memoria L2.

Rendimiento total de punto flotante = 1 Tflops. Rendimiento total de punto flotante = 2,8 Tflops.

3 Procesadores de propósito general para

cualquier tipo de cálculo.

Solo cuenta con 1 procesador de propósito

general para ello.

Mejores números en el cálculo de enteros. Mejores números en el cálculo de puntos

flotantes.

Entre un 80% y 90% se puede alternar la

programación de un juego.

Entre un 10% y 20% se puede alternar la

programación de un juego.

Page 22: Arquitectura de computadores: IBM Cell processor

COMPARATIVA XENON VS CELL

Para simplificar la gran diferencia entreambos procesadores, el cell (PS3) es comoun cirujano que está dotado de todos losconocimientos y que tiene a su disposicióna 8 residentes. Y el Xenon (360) es como 3médicos generales trabajando al mismonivel.

Page 23: Arquitectura de computadores: IBM Cell processor

COMPARATIVA DE RENDIMIENTO.

Number of SPUs 1 2 3 4 5 6 7 8

SPEsim (GFLOPS) 1.46 2.84 4.15 5.39 6.56 7.66 8.67 9.71

Hardware (GFLOPS) 1.45 2.81 4.11 5.32 6.46 7.52 8.51 9.46

Model Accuracy 99.14% 98.82% 99.12% 98.79% 98.52% 98.12% 98.21% 97.45%

Efficiency 79.23% 76.78% 74.86% 72.68% 70.60% 68.49% 66.43% 64.62%

Comparison of SPE and hardware performance results with 1kx1k matrix.

Page 24: Arquitectura de computadores: IBM Cell processor

COMPARATIVA DE RENDIMIENTO.

Performance of parallelized matrix multiplication for different sized matrices.

Page 25: Arquitectura de computadores: IBM Cell processor

POSIBLES USOS Servidor Blade :

BladeCenter QS21. Generando unos 1,05 GFLOPS medidos por vatio, con unrendimiento máximo de aproximadamente 460 GFLOPS, es una de lasplataformas de computación más eficientes en consumo hasta el día de hoy. Unchasis de BladeCenter puede alcanzar 6,4 TFLOPS y alrededor de 25,8 TFLOPSen un armario 42U estándar.

Consolas de videojuegos

Cine en casa

Posibilidad de producir televisores de alta definición (HDTV’s) haciendo uso delCell ).

Supercomputación (IBM Roadrunner ).

Un híbrido entre procesadores de propósito general CISC y procesadores Cell.Esta combinación producirá el primer computador capaz de operar a la velocidaddel pentaflop. Usará una versión actualizada del procesador Cell, fabricada contecnología de 65 nm y con SPU’s mejoradas que puedan manejar cálculos endoble precisión en los registros de 128 bits, alcanzando los 100 GFLOPS en dobleprecisión.

Computación en clúster

Los clústeres de consolas PlayStation 3 son una atractiva alternativa a lossistemas de gama alta basados en Blades Cell. clústeres de PlayStation 3 de 8 o32 nodos, con Yellow Dog Linux preinstalado.

Page 26: Arquitectura de computadores: IBM Cell processor

PREGUNTAS, DUDAS O INQUIETUDES…