Este artículo necesita ser actualizado . ( Mayo de 2014 ) |
información general | |
---|---|
Lanzado | 14 de noviembre de 2005 ( 14 de noviembre de 2005 ) |
Diseñado por | Microsistemas solares |
Fabricante común | |
Actuación | |
Frecuencia máxima de reloj de la CPU | De 1,0 GHz a 1,4 GHz |
Arquitectura y clasificación | |
Conjunto de instrucciones | SPARC V9 |
Especificaciones físicas | |
Núcleos |
|
Productos, modelos, variantes | |
Nombre del núcleo |
|
Historia | |
Sucesor | UltraSPARC T2 |
UltraSPARC T1 ( nombre en código " Niagara ") es una CPU multihilo y multinúcleo lanzada por Sun Microsystems en 2005. Diseñada para reducir el consumo de energía de los servidores , la CPU normalmente utiliza 72 W de potencia a 1,4 GHz.
El T1 es una implementación de microprocesador SPARC completamente nueva que cumple con la especificación UltraSPARC Architecture 2005 [1] y ejecuta el conjunto completo de instrucciones SPARC V9 . Sun ha producido dos procesadores multinúcleo anteriores ( UltraSPARC IV y IV+), pero UltraSPARC T1 fue su primer microprocesador que es multinúcleo y multiproceso. La seguridad se incorporó desde la primera versión en silicio, con unidades criptográficas de hardware en el T1, a diferencia de los procesadores de propósito general de los proveedores de la competencia de la época. El procesador está disponible con cuatro, seis u ocho núcleos de CPU, cada núcleo capaz de manejar cuatro subprocesos simultáneamente. Por lo tanto, el procesador es capaz de procesar hasta 32 subprocesos simultáneamente.
El UltraSPARC T1 se puede particionar de forma similar a los sistemas Sun SMP de gama alta . De esta forma, se pueden particionar varios núcleos para ejecutar un único proceso o un grupo de procesos y/o subprocesos, mientras que los demás núcleos se encargan del resto de los procesos del sistema.
Afara Websystems fue pionera en el diseño de un procesador SPARC radicalmente basado en subprocesos. Sun adquirió la empresa y la propiedad intelectual se convirtió en la base de la línea de procesadores CoolThreads, que comenzó con el T1.
El UltraSPARC T1 fue diseñado desde cero como un procesador multiproceso para propósitos especiales, y por lo tanto introdujo una arquitectura completamente nueva para obtener rendimiento. En lugar de intentar que cada núcleo fuera lo más inteligente y optimizado posible, el objetivo de Sun era ejecutar tantos subprocesos concurrentes como fuera posible y maximizar la utilización de la secuencia de cada núcleo. Los núcleos del T1 son menos complejos que los de los procesadores de la competencia para permitir que 8 núcleos quepan en el mismo chip. Los núcleos no cuentan con ejecución fuera de orden ni una cantidad considerable de caché .
Los procesadores de un solo subproceso dependen en gran medida de grandes cachés para su rendimiento, ya que los errores de caché dan lugar a una espera mientras se obtienen los datos de la memoria principal. Al aumentar el tamaño de la caché, se reduce la probabilidad de un error de caché, pero el impacto de un error sigue siendo el mismo.
Los núcleos T1 evitan en gran medida el problema de los fallos de caché mediante subprocesos múltiples. Cada núcleo es un procesador de barril , lo que significa que cambia entre subprocesos disponibles en cada ciclo. Cuando ocurre un evento de latencia prolongada, como un fallo de caché, el subproceso se saca de rotación mientras los datos se recuperan en caché en segundo plano. Una vez que se completa el evento de latencia prolongada, el subproceso vuelve a estar disponible para su ejecución. El hecho de que varios subprocesos compartan la canalización puede hacer que cada subproceso sea más lento, pero el rendimiento general (y la utilización) de cada núcleo es mucho mayor. También significa que el impacto de los fallos de caché se reduce en gran medida y el T1 puede mantener un alto rendimiento con una cantidad menor de caché. El caché ya no necesita ser lo suficientemente grande como para contener todo o la mayor parte del "conjunto de trabajo", solo los fallos de caché recientes de cada subproceso.
Los puntos de referencia demuestran que este enfoque ha funcionado muy bien en cargas de trabajo comerciales (enteros) y multiproceso, como servidores de aplicaciones Java , servidores de aplicaciones de planificación de recursos empresariales (ERP), servidores de correo electrónico (como Lotus Domino ) y servidores web. Estos puntos de referencia sugieren que cada núcleo del UltraSPARC T1 es más potente que el UltraSPARC III de un solo núcleo y un solo subproceso de alrededor de 2001 y, en una comparación de chip a chip, supera significativamente a otros procesadores en cargas de trabajo de enteros multiproceso. [ cita requerida ]
El UltraSPARC T1 contiene 279 millones de transistores y tiene un área de 378 mm2 . Fue fabricado por Texas Instruments (TI) en su proceso de metal-óxido-semiconductor complementario (CMOS) de 90 nm con nueve niveles de interconexión de cobre . [2] Cada núcleo tiene una caché de instrucciones L1 de 16 KB y una caché de datos de 8 KB. La caché L2 es de 3 MB y no hay caché L3.
El procesador T1 se puede encontrar en los siguientes productos de Sun y Fujitsu Computer Systems :
El microprocesador UltraSPARC T1 es único en sus puntos fuertes y débiles, y como tal está dirigido a mercados específicos. En lugar de ser utilizado para aplicaciones de procesamiento numérico de alta gama y rendimiento ultra alto, el chip está destinado a servidores de alta demanda que enfrentan la red, como servidores web de alto tráfico y servidores de aplicaciones Java, ERP y CRM de nivel medio, que a menudo utilizan una gran cantidad de subprocesos separados. Una de las limitaciones del diseño T1 es que una sola unidad de punto flotante (FPU) se comparte entre los 8 núcleos, lo que hace que el T1 no sea adecuado para aplicaciones que realicen una gran cantidad de matemáticas de punto flotante. Sin embargo, dado que los mercados a los que se dirige el procesador no suelen hacer mucho uso de operaciones de punto flotante, Sun no esperaba que esto fuera un problema. Sun proporciona una herramienta para analizar el nivel de paralelismo de una aplicación y el uso de instrucciones de punto flotante para determinar si es adecuada para su uso en una plataforma T1 o T2. [3]
Además del procesamiento de la capa web y de la aplicación, el UltraSPARC T1 puede ser adecuado para aplicaciones de bases de datos más pequeñas que tengan una gran cantidad de usuarios. Un cliente ha publicado resultados que muestran que una aplicación MySQL que se ejecuta en un servidor UltraSPARC T1 funciona 13,5 veces más rápido que en un servidor AMD Opteron. [4]
T1 es el primer procesador SPARC que admite el modo de ejecución hiperprivilegiado. El hipervisor SPARC se ejecuta en este modo y puede dividir un sistema T1 en 32 dominios lógicos , cada uno de los cuales puede ejecutar una instancia del sistema operativo.
Actualmente [¿ cuándo? ] , se admiten Solaris , Linux , NetBSD y OpenBSD .
Tradicionalmente, las suites de software comerciales como Oracle Database cobran a sus clientes en función de la cantidad de procesadores en los que se ejecuta el software. A principios de 2006, Oracle cambió el modelo de licencias al introducir el factor de procesador . Con un factor de procesador de 0,25 para el T1, un T2000 de 8 núcleos requiere solo una licencia de 2 CPU. [5]
La "Tabla de factores de núcleo de procesador Oracle" [6] se ha actualizado periódicamente a medida que nuevas CPU llegan al mercado.
En el tercer trimestre de 2006, IBM introdujo el concepto de fijación de precios por unidad de valor (VU). Cada núcleo del T1 equivale a 30 PVU (cada núcleo del T2 equivale a 50 PVU y el del T3 a 70 PVU) en lugar del valor predeterminado de 100 PVU por núcleo. [7]
El T1 solo ofrecía una única unidad de punto flotante para compartir entre los 8 núcleos, lo que limitaba su uso en entornos HPC. Esta debilidad se mitigó con el siguiente procesador UltraSPARC T2 , que incluía 8 unidades de punto flotante, así como otras funciones adicionales.
Además, el T1 solo estaba disponible en sistemas monoprocesador, lo que limitaba la escalabilidad vertical en entornos empresariales de gran tamaño. Esta debilidad se mitigó con el siguiente UltraSPARC T2 Plus , [8] así como con la próxima generación de SPARC T3 y SPARC T4 . El UltraSPARC T2+, SPARC T3 y SPARC T4 ofrecen configuraciones de uno, dos y cuatro zócalos.
El T1 tenía un rendimiento excepcional con una cantidad masiva de subprocesos soportados por el procesador, pero las aplicaciones más antiguas cargadas con cuellos de botella de un solo subproceso ocasionalmente exhibían un rendimiento general deficiente. La debilidad de la aplicación de un solo subproceso se mitigó con el siguiente procesador SPARC T4 . El recuento de núcleos T4 se redujo a 8 (de 16 en el T3), los núcleos se hicieron más complejos, la velocidad de reloj casi se duplicó, todo lo cual contribuyó a un rendimiento más rápido de un solo subproceso (un aumento del 300% al 500% con respecto a las generaciones anteriores). [9] Se hizo un esfuerzo adicional para agregar la "API de subproceso crítico", donde el sistema operativo detectaría un cuello de botella y asignaría temporalmente los recursos de un núcleo completo, en lugar de 1 (de 8) subprocesos, a los procesos de aplicación específicos que exhibieran un comportamiento limitado a la CPU de un solo subproceso. [10] Esto permitió que el T4 mitigara de manera única los cuellos de botella de un solo subproceso, sin tener que comprometer la arquitectura general para lograr un rendimiento masivo de múltiples subprocesos.
Aprovechar la enorme cantidad de paralelismo a nivel de subproceso (TLP) disponible en la plataforma CoolThreads puede requerir técnicas de desarrollo de aplicaciones diferentes a las de las plataformas de servidor tradicionales. El uso de TLP en aplicaciones es clave para obtener un buen rendimiento. Sun ha publicado una serie de Sun BluePrints para ayudar a los programadores de aplicaciones a desarrollar e implementar software en servidores CoolThreads basados en T1 o T2. El artículo principal, Tuning Applications on UltraSPARC T1 Chip Multithreading Systems , [11] aborda cuestiones para programadores de aplicaciones generales. También hay un artículo de BluePrints sobre el uso de las unidades aceleradoras criptográficas en los procesadores T1 y T2. [12]
Se ha optimizado una amplia gama de aplicaciones en la plataforma CoolThreads, incluyendo Symantec Brightmail AntiSpam, [13] las aplicaciones Siebel de Oracle , [14] y el servidor proxy web Sun Java System . [15] Sun también documentó su experiencia al trasladar su propia tienda en línea a un clúster de servidores T2000, [16] y ha publicado dos artículos sobre la consolidación web en CoolThreads utilizando Solaris Containers . [17] [18]
Sun tenía una página de ajuste del rendimiento de aplicaciones para una variedad de aplicaciones de código abierto , incluidas MySQL , PHP , gzip e ImageMagick . [19] La optimización adecuada para los sistemas CoolThreads puede generar ganancias significativas: cuando se utiliza el compilador Sun Studio con las configuraciones de optimización recomendadas, el rendimiento de MySQL mejora en un 268% en comparación con el uso solo del indicador -O3 .
La arquitectura "Coolthreads(TM)", que comenzó con el UltraSPARC T1 (con sus aspectos positivos y negativos), ciertamente influyó en los diseños simultáneos y futuros de los procesadores SPARC.
El UltraSPARC T1 original fue diseñado únicamente para sistemas de una sola CPU y no es capaz de SMP. "Rock" fue un proyecto más ambicioso, destinado a soportar arquitecturas de servidores de múltiples chips, dirigido a cargas de trabajo tradicionales orientadas a datos, como bases de datos. Fue visto más como una continuación de los procesadores SMP de Sun, como UltraSPARC IV , en lugar de un reemplazo para UltraSPARC T1 o T2, pero fue cancelado en el marco temporal de la adquisición de Sun por parte de Oracle .
Anteriormente conocido con el nombre en código Niagara 2 , el sucesor del UltraSPARC T1, el T2 ofrece ocho núcleos. A diferencia del T1, cada núcleo admite ocho subprocesos por núcleo, una FPU por núcleo, una unidad criptográfica mejorada por núcleo y controladores de red Ethernet de 10 Gigabit integrados en la CPU.
En febrero de 2007, Sun anunció en su cumbre anual de analistas que su diseño de subprocesos múltiples simultáneos de tercera generación , cuyo nombre en código era Victoria Falls , se lanzaría en octubre de 2006. Un servidor de dos sockets (2 RU ) tendrá 128 subprocesos, 16 núcleos y una mejora de rendimiento de 65x sobre UltraSPARC III. [8]
En la conferencia Hot Chips 19, Sun anunció que Victoria Falls estará disponible en servidores de dos y cuatro vías. Por lo tanto, un único servidor SMP de cuatro vías admitirá 256 subprocesos de hardware simultáneos. [20]
En abril de 2008, Sun lanzó los servidores UltraSPARC T2 Plus bidireccionales: SPARC Enterprise T5140 y T5240.
En octubre de 2008, Sun lanzó el servidor UltraSPARC T2 Plus SPARC Enterprise T5440 de 4 vías. [21]
En octubre de 2006, Sun reveló que el Niagara 3 se construiría con un proceso de 45 nm. [ cita requerida ] The Register informó en junio de 2008 que el microprocesador tendrá 16 núcleos, sugiriendo incorrectamente que cada núcleo tendría 16 subprocesos. Durante la conferencia Hot Chips 21, Sun reveló que el chip tiene un total de 16 núcleos y 128 subprocesos. [22] [23] Según la presentación de ISSCC 2010:
"Un procesador SoC SPARC de 16 núcleos permite hasta 512 subprocesos en un sistema sin pegamento de 4 vías para maximizar el rendimiento. La caché L2 de 6 MB de 461 GB/s y la E/S SerDes de 308 pines de 2,4 Tb/s admiten el ancho de banda requerido. Seis dominios de reloj y cuatro dominios de voltaje, así como técnicas de gestión de energía y circuitos, optimizan el rendimiento, la potencia, la variabilidad y las compensaciones de rendimiento en toda la matriz de 377 mm2 " . [24]
La CPU T4 se lanzó a fines de 2011. La nueva CPU T4 pasará de tener 16 núcleos (en la T3) a tener 8 núcleos (como los que se usan en la T1, T2 y T2+). El nuevo diseño de núcleo T4 (llamado "S3") presenta un rendimiento por subproceso mejorado, debido a la introducción de la ejecución fuera de orden, además de tener un rendimiento mejorado adicional para programas de un solo subproceso. [25] [26]
En 2010, Larry Ellison anunció que Oracle ofrecería Oracle Linux en la plataforma UltraSPARC y que el puerto estaba previsto que estuviera disponible en el período T4 y T5. [27]
John Fowler, vicepresidente ejecutivo de sistemas de Oracle, dijo en Openworld 2014 que Linux podrá ejecutarse en Sparc en algún momento. [28] [29] [30] [31]
La nueva CPU T5 cuenta con 128 subprocesos en 16 núcleos y está fabricada con una tecnología de 28 nanómetros.
El 21 de marzo de 2006, Sun puso a disposición el diseño del procesador UltraSPARC T1 bajo la Licencia Pública General GNU a través del proyecto OpenSPARC . [32] La información publicada incluye:
{{cite web}}
: CS1 maint: URL no apta ( enlace )