The Cell es un procesador diseñado conjuntamente por IBM , Sony y Toshiba , revelado enFebrero de 2005. Se utiliza en particular en la consola de videojuegos PlayStation 3 de Sony. También está previsto fabricar ordenadores basados en células en IBM , Mercury Computer Systems (en) y Toshiba (Qosmio F50 / 55 y G50 / 55).
Sus campos preferidos, aplicados a cálculos vectoriales de punto flotante, son:
Este procesador está diseñado en un modelo arquitectónico diferente al de los procesadores CISC de propósito general que actualmente se encuentran en la mayoría de las computadoras personales de consumo.
De hecho, en los últimos años, los procesadores tradicionales han desarrollado, antes de las unidades de ejecución reales, unidades para optimizar el código informático que compone los programas . Esto hace que sea mucho más fácil para los programadores y el código no optimizado puede funcionar bien. Por ejemplo, los procesadores tradicionales reorganizan el código internamente antes de la ejecución, se les llama " OoO " ( fuera de servicio ). Las instrucciones se pueden ejecutar en un orden diferente al dado por el programa. Después de la ejecución, el procesador vuelve a colocar las instrucciones en el orden correcto para garantizar un funcionamiento adecuado. Esto también implica un material de seguimiento (trazabilidad) para las instrucciones a medida que avanzan en la tubería . Todo este trabajo consume mucho espacio (de transistores ) en el procesador.
Finalmente, los procesadores tradicionales no han cambiado fundamentalmente durante años. Básicamente, se contentaron con utilizar nuevos procesos de grabado para aumentar la frecuencia. Esta era se acabó desde los 90 nm , que ya no permite aumentar tanto en frecuencia como en el pasado. Es por ello que estamos asistiendo al surgimiento de los procesadores de doble núcleo : aprovechamos la nueva delicadeza del grabado para poner más transistores y desarrollar el SMP dentro del procesador, sin mucho aumento de frecuencia.
IBM for the Cell ha elegido un enfoque original. El Cell, como los procesadores del pasado, no reorganiza el código, se dice que está " en orden ". Esto libera mucho espacio para agregar nuevos hilos. La desventaja es que el trabajo de optimización es responsabilidad del programador y del compilador y, por lo tanto, interfiere con la interoperabilidad. Mover un trabajo fuera del procesador ya había prevalecido para RISC .
Otra originalidad del Cell es que está optimizado para la computación en paralelo : varios procesadores pueden comunicarse entre sí y compartir su carga de trabajo. Por tanto, cuantos más procesadores Cells tengamos, más potencia de cálculo tendremos disponible.
El rendimiento máximo teórico ( pico ) del procesador Cell a 3,2 GHz con 8 SPEs, alcanzado durante los cálculos vectoriales, es:
En lugar de duplicar el mismo núcleo idéntico varias veces, como en los procesadores multinúcleo clásicos, los diseñadores han optado por un enfoque completamente diferente: un núcleo principal y ocho núcleos específicos.
El núcleo principal, llamado PowerPC Processing Element o PPE , permanece relativamente cerca de un núcleo clásico: incluso si, como hemos visto, su diseño se simplifica, en particular con la ausencia de un módulo de optimización, el conjunto de instrucciones El conocido IBM POWER permite el acceso a la RAM a través de un sistema de caché L1 y L2 de dos niveles. Por tanto, el PPE es la parte menos exótica de la Célula.
Cada uno de los ocho núcleos específicos, conocidos como Synergystic Processing Elements o SPE , se compone de 2 partes: una memoria local ( Local Storage o LS) de 256 kb y una unidad de computación vectorial llamada Streaming Processor Unit o SPU. Equipadas con un conjunto de instrucciones SIMD específico pero similar a AltiVec , las SPU tienen acceso directo y extremadamente rápido a su memoria local. Por otro lado, para acceder a la memoria principal deben realizar una solicitud de transferencia asíncrona a un bus de interconexión .
Este bus de interconexión llamado Element Interconnect Bus o Bus EIB es el último elemento muy importante de la celda. Su función es establecer la conexión entre el PPE, los SPEs, la memoria RAM principal y los dispositivos de E / S.
Para resumir y simplificar:
Tiene 234 millones de transistores grabados en una superficie de 235 mm 2 en 90 nm SOI ( Silicon On Insulator ). La versión final funciona a 3,2 GHz a 0,9 V y está formada por ocho capas de cobre interconectadas. El control de temperatura es dinámico: diez sensores térmicos digitales y un sensor lineal.
Un procesador CBE (Cell Broadband Engine) se compone de:
La palabra celda significa celda en inglés. De hecho, el procesador está dividido en varias celdas. Una celda es un conjunto formado por el PPE y una SPE. Esta unidad de hardware independiente se puede asignar a un hilo . La distribución de tareas según las celdas es lo que está en juego para el programador que desee hacer el mejor uso de este procesador.
El núcleo (PPE) utiliza conjuntos de instrucciones PowerPC y AltiVec , números enteros y la división del trabajo entre las SPE. Es un procesador SMT bidireccional de 64 bits " En orden " . Tiene una caché integrada Nivel 1 32 kb .
Están destinados a cálculos SIMD . Un SPE es un procesador vectorial independiente con 128 registros de 128 bits, 4 unidades de cálculo de coma flotante de doble precisión y 4 unidades de cálculo de números enteros. Realiza dos instrucciones por ciclo de reloj. Incluye memoria SRAM local de alta velocidad de 256 kB . Un procesador Cell contiene 8 SPEs.
El de la PS3 solo contará con 7 unidades funcionales, incluida una utilizada para gestionar DRM y seguridad (lo que hace que 6 unidades sean utilizables por juegos y aplicaciones). Las diferentes hipótesis sobre este tema son:
Cuenta con 4 bucles de 128 bits que admiten múltiples transferencias. Vincula todos los componentes de CELL: PPE, SPEs, caché L2 y controladores de memoria y entrada / salida.
El MIC es un controlador de memoria dual XDR (XDRAM) que ofrece un rendimiento de 25,6 GB por segundo. Hay dos interfaces de E / S configurables (76,8 Gb / s , 6,4 Gbit / s ) (E / S flexible)
Anunciado el 29 de junio de 2005, el kernel del sistema operativo Linux admitirá este procesador CELL: Anuncio del puerto Linux en el procesador CELL -29 de junio de 2005
Puede ver en el ChangeLog , los cambios realizados para la versión 2.6.16 con la anterior -20 de marzo de 2006permitiendo que Linux se ejecute desde esta versión del kernel.
A partir de la versión 2.6.16 del kernel de Linux , puede ver y utilizar la documentación del sistema de archivos virtual de control de SPU en inglés.
Desde el 14 de julio de 2006, está disponible en inglés, en SDK versión 1.1 y parcialmente bajo la distribución Fedora core 5, todo el software y documentación necesarios para el desarrollo y compilación del procesador CELL bajo Linux , cf. Información sobre cómo habilitar Linux en sistemas basados en Cell Broadband Engine ™ por Barcelona Supercomputing Center (BSC) .
La aceleración 3D gratuita para el procesador CELL se agregó en enero de 2008 con una primera versión rudimentaria de un controlador para Gallium 3D, el futuro reemplazo de Mesa 3D , una implementación gratuita de OpenGL . .
Máquina / procesador (es) | #proc | #centro
por proc |
(GFlop / s) | (GFlop / s) |
(GFlop / s)
por proc |
(GFlop / s)
por proc |
---|---|---|---|---|---|---|
IBM Cell BE (3,2 GHz ) ¹¹¹ en 2006 | 1 | 9 | 98.05 | 14,6 (64 bits)
204,8 (32 bits) |
98.05 | 14,6 (64 bits)
204,8 (32 bits) |
Itanium 2 Montecito (2 × Itanium 2 a 1,6 GHz ) | 1 | 2 | (~ 12) ¹ | 12,8 | (~ 12) ¹ | 12,8 |
IBM Cell BE (3,2 GHz ) en 2005 | 1 | 9 | (10 ~ 13) ¹ | 14,6 | (10 ~ 13) ¹ | 14,6 |
Pentium 4 + SSE3 (3,6 GHz ) | 1 | 1 | 14,4 | 14,4 | ||
IBM IntelliStation POWER 285 (2 × POWER5 + a 1,9 GHz ) | 2 | 1 | 14.35 | 15,2 | 7.18 | 7,6 |
HP Integrity rx1620-2 (2 × Itanium 2 a 1,6 GHz ) | 2 | 1 | 12.05 | 12,8 | 6.03 | 6.4 |
Pentium 4 (3,2 GHz ) | 1 | 1 | 6.4 | 6.4 | ||
HP ProLiant BL25p (2 × AMD 254 Opteron a 2,8 GHz ) | 2 | 1 | 11,2 | 5,6 |
Fuentes: benchmark LINPACK en muchas máquinas en el20 de julio de 2006en formato de rendimiento ps - e - IBM - Tabla 9 de29 de noviembre de 2005
¹ valores estimados
¹¹¹ El algoritmo utilizado para lograr este rendimiento se basa en un enfoque de refinamiento iterativo en el que se utilizan un par de coma flotante de 32 y 64 bits. Este método calcula una factorización LU de 32 bits y utiliza un enfoque de refinamiento iterativo en el que la solución se selecciona con precisión de 64 bits. La precisión obtenida es equivalente a una implementación de 64 bits. En nuestro caso, el Rpeak se indica con un par de 32 y 64 bits en coma flotante.
Tenga en cuenta que algunos de los procesadores que se utilizan para la informática de alto rendimiento en la actualidad demuestran un rendimiento superior en cálculos de 32 bits en comparación con los cálculos realizados directamente en 64 bits, como AMD Opteron , Intel Pentium , IBM PowerPC y Cray X1.
Aplicando lo más conocido, la consola de videojuegos PlayStation 3 de Sony está diseñada en torno al procesador CELL.
Por razones de costes de producción, una de las ocho SPE no se utiliza para obtener una mayor eficiencia de producción (Sony puede utilizar procesadores con 1 o 0 SPE defectuosos). Por tanto, el procesador PS3 CELL tendrá 7 SPE a diferencia de la versión estándar de 8 SPE de IBM.
Mercury e IBM han colaborado para desarrollar soluciones basadas en el procesador CELL.
Mercury ofrece a 1 er de julio de de 2006cuatro soluciones basadas en procesadores CELL, más una solución de evaluación ( rendimiento máximo de precisión simple ):
IBM anuncia una nueva generación de servidores blade y la formación oficial de la comunidad Blade que reúne a los actores que colaboran en el desarrollo de soluciones BladeCenter.
Este servidor blade (utilizado para el nuevo BladeCenter H) agrupa 9 procesadores CELL, constituyendo la primera oferta de este tipo de IBM. Diseñado para aplicaciones de procesamiento intensivo de cómputo y multimedia con alta demanda de ancho de banda, puede aumentar significativamente el ancho de banda de pequeños servidores blade y, por lo tanto, ofrece a las empresas la posibilidad de hacer circular 10 veces más datos en su red. Este avance tecnológico supera los límites del rendimiento interno de los nuevos sistemas al proporcionar más de 40 Gbps (Gb) de ancho de banda de E / S por blade.
Anunciado en Septiembre de 2006, Roadrunner es el primer superordenador para utilizar este procesador (16.000 tales procesadores). Está construido por IBM.
Si el procesador CELL se diseñó inicialmente para consolas de juegos, su altísima potencia informática lo hace muy atractivo en muchas áreas, como la informática de alto rendimiento (HPC), el procesamiento de imágenes (TI) y la visión artificial (VI). Su complejidad hace que la portabilidad de aplicaciones sea muy compleja porque es necesario optimizar los cálculos y transferencias. Optimizar las transferencias significa optimizar dos tipos de transferencias: las de la memoria externa a una SPE y las entre las SPE. Esto equivale a implementar modelos de transferencia para los llamados cálculos SIMD o pipeline . Por lo tanto, optimizar un código SPE no es más complicado que optimizar un código en un procesador Altivec. El conjunto de instrucciones es muy parecido y admite cálculos tanto de números enteros como flotantes. A finales de 2007 , sólo dos equipos de I + D en el mundo lo habían conseguido, la empresa Rapidmind comprada en agosto de 2009 por Intel y el equipo AXIS del IEF (Institut d'Électronique Fondamentale) ( Universidad de París Sud ). Rapidmind tiene la ventaja de poder implementar código en GPU (tarjetas NVidia y AMD-ATI 3D).
Sony ha entregado más información sobre la nueva revisión de 65 nm del procesador Cell Broadband Engine, actualmente en producción en masa para reemplazar la primera versión del procesador grabada a 90 nm .
El Cell de 65 nm incluirá reemplazar a su antecesor en la PlayStation 3 de Sony , tendrá la ventaja de ser un 40% más pequeño que la versión de 90 nm , y sobre todo menos calor. La versión actual del procesador de 90 nm tiene una matriz tan grande (222 mm 2 ) que esto es un problema de rendimiento real, porque Sony puede poner menos en la misma oblea de silicio ( oblea ). Con una reducción del 40% en el área de la matriz de la CPU, la producción podrá lograr rendimientos mucho más rentables.
Esta mejora de rendimiento será al menos tan importante durante la transición de 65 nm a 45 nm , que Sony espera para el primer semestre de 2009. Todos estos procesadores están grabados con tecnología SOI (Silicon On Insulator), utilizada por IBM y AMD .
Al calentar menos, la celda en 65 nm también podrá alcanzar frecuencias más altas. Sony anuncia hasta 6 GHz bajo un voltaje de 1.3 V, donde el Cell de 90 nm solo podría llegar a 5.2 GHz , al límite de sus capacidades. Con un voltaje de 1 V, el Cell 65 nm alcanza los 4 GHz sin problema.
Este aumento de frecuencia también se debe a la separación de la fuente de alimentación de la SRAM (memoria caché del procesador) y el resto del chip. Dos líneas de voltaje independientes para mejorar el rendimiento y el consumo del procesador.
Tenga en cuenta que IBM tiene la intención de utilizar su último descubrimiento, eDRAM , en una próxima generación de procesadores Cell.
Archivos de presentación CELL:
Artículos de estudio en profundidad de CELL:
Documentación técnica para fabricantes de CELL:
Documentación de desarrollo de software técnico para CELL:
Paralelización automática en la celda
<img src="https://fr.wikipedia.org/wiki/Special:CentralAutoLogin/start?type=1x1" alt="" title="" width="1" height="1" style="border: none; position: absolute;">