Roca (o ROCA ) fue un multi-hilo , multi-núcleo , SPARC microprocesador en desarrollo en Sun Microsystems . Cancelado en 2010, era un proyecto independiente de la familia de procesadores SPARC T-Series (CoolThreads / Niagara).
Información general | |
---|---|
Diseñada por | Microsistemas solares |
Arquitectura y clasificación | |
Conjunto de instrucciones | SPARC V9 |
Especificaciones físicas | |
Núcleos |
|
Rock tenía como objetivo un mayor rendimiento por subproceso, un mayor rendimiento de punto flotante y una mayor escalabilidad SMP que la familia Niagara. El procesador Rock se enfocó en cargas de trabajo tradicionales de alta gama orientadas a datos, como servidores de bases de datos back-end, así como cargas de trabajo informáticas de alto rendimiento intensivas en punto flotante , mientras que la familia Niagara se enfoca en cargas de trabajo orientadas a la red, como servidores web.
Núcleo del procesador
El procesador Rock implementa el conjunto de instrucciones SPARC V9 de 64 bits y la extensión del conjunto de instrucciones multimedia VIS 3.0 SIMD . [1] Cada procesador Rock tiene 16 núcleos, y cada núcleo es capaz de ejecutar dos subprocesos simultáneamente, produciendo 32 subprocesos por chip. Los servidores construidos con Rock utilizan FB-DIMM para aumentar la confiabilidad, la velocidad y la densidad de los sistemas de memoria. El procesador Rock utiliza un proceso de fabricación de 65 nm para una frecuencia de diseño de 2,3 GHz. [2] El consumo máximo de energía del chip del procesador Rock es de aproximadamente 250 W. [3]
Clúster principal
Los 16 núcleos de Rock están organizados en cuatro grupos de núcleos . Los núcleos de un clúster comparten una caché de instrucciones de 32 KB, dos cachés de datos de 32 KB y dos unidades de punto flotante . Sun diseñó el chip de esta manera porque las cargas de trabajo del servidor generalmente tienen una alta reutilización de datos e instrucciones en los procesos y subprocesos, pero un número bajo de operaciones de punto flotante en general. Por lo tanto, compartir recursos de hardware entre los cuatro núcleos de un clúster genera ahorros significativos en área y energía, pero un impacto bajo en el rendimiento. [4]
Características poco convencionales
En 2005, Sun reveló públicamente una función en el procesador Rock llamada explorador de hardware . El explorador de hardware utiliza recursos de ejecución de chip que de otro modo estarían inactivos para realizar la captación previa durante las pérdidas de caché. [5]
En marzo de 2006, Marc Tremblay , vicepresidente y arquitecto jefe del grupo de sistemas escalables de Sun, hizo una presentación en el Centro de investigación de Xerox Palo Alto (PARC) sobre paralelismo a nivel de subprocesos , exploración de hardware y especulación a nivel de subprocesos . [6] Se esperaba que estas tecnologías de subprocesos múltiples se incluyeran en el procesador Rock.
En agosto de 2007, Sun confirmó que Rock sería el primer procesador de producción en admitir memoria transaccional . [7] Para proporcionar la funcionalidad, se introdujeron dos nuevas instrucciones ( chkpt
, commit
) con un nuevo registro de estado ( cps
). La instrucción chkpt
se usa para comenzar una transacción y commit
para confirmar la transacción. Si se detecta una condición de cancelación de transacción,
se emite un salto a y cps
se puede utilizar para determinar el motivo. El soporte se basa en el mejor esfuerzo, ya que además de los conflictos de datos, las transacciones pueden cancelarse por otras razones. Estos incluyen errores de TLB, interrupciones, ciertas secuencias de llamadas a funciones de uso común e instrucciones "difíciles" (por ejemplo, división). [8] Sin embargo, muchos bloques de código (posiblemente de grano fino) que requieren sincronización podrían haberse beneficiado del soporte de memoria transaccional del procesador Rock. [9]
En febrero de 2008, Marc Tremblay anunció una característica única llamada "retiro fuera de servicio" en la ISSCC . Los beneficios incluyen la sustitución de la "ventana de instrucciones tradicional con esta cola diferida mucho más pequeña". [10]
En abril de 2008, los ingenieros de Sun presentaron la interfaz de memoria transaccional en Transact 2008 , y poco después se anunció que el simulador de plataforma de prueba de memoria transaccional adaptable estaría disponible para el público en general. [8] [11]
Plataformas de servidor
El procesador Rock estaba destinado a ser utilizado en la línea de servidores "Supernova" propuesta por Sun. Los detalles de las especificaciones del servidor se publicaron en el caso de revisión de arquitectura de OpenSolaris FWARC / 2008/761. [12] [13]
Recursos físicos
La especificación del Inventario de recursos físicos (PRI) de ARC 2008/761 indica que las plataformas Supernova admitirían: IEEE 1275 OpenFirmware , virtualización de plataforma a través de dominios lógicos (LDOM), controlador de sistema independiente (SC) y servicios de dominio de arquitectura de gestión de fallos (FMA). [14] La función FMA se referenciaba originalmente a FWARC / 2006/141, pero se cerró y amplió en FWARC / 2008/455 "para diagnosticar correctamente los errores de la estructura PCI que se producen en los dominios raíz". [15]
De entrada y salida
ARC 2008/761 indicó soporte planificado para ranuras de conexión en caliente PCI Express (PCIe), así como un puente a PCI eXtended ( PCI-X ) más antiguo . [dieciséis]
Capacidad de expansión
Los servidores "Bronze" admitirían las ranuras PCIe 0-5. Los servidores "Silver" admitirían placas de E / S 0-1 y ranuras PCIe 0-7 para cada placa. Los servidores "Platinum" admitirían placas de E / S 0-3 y ranuras PCIe 0-7 para cada placa. Los servidores "Silver-II" admitirían las ranuras PCIe 00-19. Los servidores "Platinum-II" admitirían placas 0-7 y ranuras 0-3 para cada placa. [17]
Sistemas
- AT7180 ("Bronce-II")
- Se especuló que el SPARC Enterprise AT7180 era un modelo de un solo socket que manejaba hasta 32 subprocesos de hardware. [18]
- AT7280 ("Bronce-II")
- Se especuló que el SPARC Enterprise AT7280 era un modelo de doble socket que manejaba hasta 64 subprocesos de hardware. [19]
- AT7480 ("Silver-II")
- Se especuló que el SPARC Enterprise AT7480 era un modelo de socket cuádruple que podía manejar hasta 128 subprocesos de hardware, [20] basado en la arquitectura de bus PCI Express con firmware Open Boot .
- AT7880 ("Platinum-II")
- Se especuló que el SPARC Enterprise AT7880 era un modelo de ocho sockets que podía manejar hasta 256 subprocesos de hardware, [21] basado en la arquitectura de bus PCI Express con firmware Open Boot. El AT7880 tendría ocho placas de CPU individuales, cada una con un chip Ethernet de 10 Gigabit multiproceso Sun Neptune . [17]
Historia del producto
En febrero de 2005, el director ejecutivo de Sun Microsystems, Scott McNealy , declaró que la " grabación " de Rock estaría programada para finales de ese año. [22] Sin embargo, esta grabación se retrasó en última instancia hasta enero de 2007. [23]
En abril de 2007, el director ejecutivo de Sun, Jonathan I. Schwartz, publicó en su blog una imagen de un chip Rock empaquetado con BGA , etiquetado como UltraSPARC RK , y reveló que podría abordar 256 terabytes de memoria virtual en un solo sistema que ejecute Solaris . [24] El mes siguiente, Sun anunció que habían creado un chip Rock que podía arrancar su sistema operativo, Solaris, con éxito. [25] En agosto del mismo año, Sun dio a conocer detalles sobre el uso de memoria transaccional en la arquitectura Rock. [26] Sin embargo, como resultado de "un diseño completamente nuevo y dada su singularidad y complejidad", el lanzamiento de Rock se retrasó hasta 2008 o 2009. [27]
En 2008, Mark Moir presentó "Rock's Transactional Memory y cómo explotarla" en Sun Labs Open House 2008, discutiendo la memoria transaccional, así como la exploración de subprocesos y cómo estos mitigaron los problemas informáticos no resueltos por el uso innovador de un número masivo de subprocesos de procesadores más lentos . [28] En septiembre de ese año, el proyecto OpenSolaris comenzó a integrar código compatible con el programa SuperNova basado en Rock. [29]
En enero de 2009, el director ejecutivo de Sun, Jonathan Schwartz, anunció que Rock todavía estaba en camino de su lanzamiento en 2009. [30] El 10 de marzo de 2009, Dave Dice, Yossi Lev, Mark Moir y Dan Nussbaum presentaron "Experiencia inicial con una implementación de memoria transaccional de hardware comercial" en la Decimocuarta Conferencia Internacional sobre Soporte Arquitectónico para Lenguajes de Programación y Sistemas Operativos (ASPLOS '09). Publicaron su "experiencia con la función de memoria transaccional de hardware (HTM) de dos revisiones de preproducción de un nuevo procesador multinúcleo comercial" en 2009. [31] [32] [33]
Cancelación
El 20 de abril de 2009, Sun y Oracle Corporation anunció que habían llegado a un acuerdo definitivo bajo el cual Oracle adquirirá dom . Una publicación del 12 de junio en un blog de Sun anunció una presentación técnica exclusiva de NDA sobre ROCK el 14 de julio de 2009 en la Reunión del Grupo de Usuarios de OpenSolaris de Hamburgo . [34]
El 15 de junio de 2009, el New York Times informó que "dos personas informadas sobre los planes de Sun" dijeron que el proyecto Rock fue cancelado. Sun no hizo ningún comentario. [35] [36] Dos días después, el EE Times informó que "Sun no presentó un documento sobre Rock [a Hot Chips 21], lo que llevó a especular que la compañía pudo haber cancelado el chip". [37] El 24 de junio de 2009, una presentación sobre "Enhebrado especulativo y paralelización" presentó "Una nueva arquitectura de canalización implementada en el procesador ROCK de Sun" en el 36º Simposio Internacional sobre Arquitectura de Computadoras . [38]
El 6 de agosto de 2009, se eliminó el soporte para Rock del Proyecto OpenSolaris. [39] El 13 de agosto de 2009, se presentó una presentación sobre "NZTM: Memoria transaccional de direccionamiento indirecto cero sin bloqueo" escrita por Fuad Tabba, Mark Moir, James Goodman , Andrew Hay y Cong Wang, en el 21º Simposio de ACM sobre paralelismo en algoritmos. y arquitecturas en Calgary, Canadá. El rendimiento del algoritmo NZSTM se evaluó en el próximo procesador Rock de Sun. [40] [41] El 11 de septiembre de 2009, The Register informó que el procesador Rock quedó fuera de la hoja de ruta del procesador SPARC y luego se mostró a los clientes y socios de Sun. [42] El 15 de septiembre de 2009, el documento tm_db: A Generic Debugging Library for Transactional Programs , escrito por Yossi Lev y Maurice Herlihy, se presentó en la Decimoctava Conferencia Internacional sobre Arquitecturas Paralelas y Técnicas de Compilación (PACT) Raleigh, Carolina del Norte. [43] [44]
El 26 de octubre de 2009, Dave Dice, Yossi Lev, Mark Moir y Dan Nussbaum ampliaron un artículo publicado anteriormente "Experiencia temprana con una implementación de memoria transaccional de hardware comercial" que se presentó en la decimocuarta Conferencia Internacional sobre Soporte Arquitectónico para Lenguajes de Programación y Sistemas Operativos ( ASPLOS '09). [45]
El 27 de enero de 2010, Oracle anunció que había completado su adquisición de Sun. El 5 de abril de 2010, Dave Dice, Yossi Lev, Virendra Marathe, Mark Moir, Marek Olszewski y Dan Nussbaum publicaron un artículo "Simplificación de algoritmos concurrentes mediante la explotación de memoria transaccional de hardware" que se presentará en el 22º Simposio de ACM sobre paralelismo en algoritmos y arquitecturas ( SPAA 2010). [46] [47]
El 5 de abril de 2010, Dave Dice y Nir Shavit publicaron un documento "TLRW: Return of the Read-Write Lock" que se presentará en SPAA 2010. [46] [48] El 12 de mayo de 2010, Reuters informó que el CEO de Oracle, Larry Ellison, cerró el proyecto Rock cuando Oracle adquirió Sun, y lo citó diciendo: "Este procesador tenía dos virtudes increíbles: era increíblemente lento y consumía grandes cantidades de energía. Hacía tanto calor que tuvieron que poner alrededor de 12 pulgadas de ventiladores de enfriamiento en para enfriar el procesador. Fue una locura continuar con ese proyecto ". [49]
Referencias
- ^ Liang He; Harlan McGhan (mayo de 2005). "MT mediaLib para procesadores Chip MultiThreaded (CMT)" (PDF) . Sun Microsystems, Inc . Consultado el 3 de diciembre de 2007 .
- ^ Neal, Brian (24 de marzo de 2003). "Arquitectura del futuro: Dr. Marc Tremblay" . Hardware de Ace. Archivado desde el original el 13 de septiembre de 2006.
- ^ "Rock: un procesador SPARC CMT" (PDF) . Sun Microsystems. 2008-08-26.
- ^ "Un procesador CMT SPARC (R) de tercera generación, 65 nm, 16 núcleos, 32 subprocesos y 32 subprocesos exploradores" (PDF) . Sun Microsystems. 2008-02-13.
- ^ Chaudhry, S .; Yip, S .; Caprioli, P; Tremblay, Marc (2005). "Computación de alto rendimiento" . IEEE Micro . 25 (3): 32. doi : 10.1109 / MM.2005.49 .
- ^ Tremblay, M. (2 de marzo de 2006). "Computación de alto rendimiento" . Foro PARC . Palo Alto, CA.
- ^ "Memoria transaccional" . Sun Microsystems. 2007-08-13.
- ^ a b Moir, Mark; Moore, Kevin; Nussbaum, Dan (22 de febrero de 2008). "La plataforma de prueba de memoria transaccional adaptable: una herramienta para experimentar con código transaccional para Rock" (PDF) . TRANSACT 2008 . Consultado el 20 de febrero de 2009 .
- ^ "Aplicaciones de la plataforma de prueba de memoria transaccional adaptativa" (PDF) . Sun Microsystems. 2008-02-13.
- ^ "Sun: ¿Puedes oler lo que está cocinando The Rock?" . Arstechnica. 2008-02-04.
- ^ "Memoria transaccional de Rock" . Sun Microsystems. 2008-04-25.
- ^ Asa Romberger (4 de marzo de 2010). "Open Solaris: ¿Qué es una revisión ARC?" . OpenSolaris.org. Archivado desde el original el 27 de abril de 2011 . Consultado el 19 de diciembre de 2016 .
- ^ "FWARC / 2008/761" . OpenSolaris.org . Archivado desde el original el 11 de agosto de 2011.
- ^ "Especificación PRI 1.6" . acclinet. 2008-12-15. Archivado desde el original el 11 de agosto de 2011 . Consultado el 19 de diciembre de 2016 .
- ^ "Servicio de dominio FMA IO" . OpenSolaris.org. 2008-07-17.
- ^ "Especificación del nodo MD iodevice" . OpenSolaris.org. 2008. Archivado desde el original el 11 de agosto de 2011 . Consultado el 19 de diciembre de 2016 .
- ^ a b "vía rápida: 2008/761 - Enlace de plataforma Supernova" . OpenSolaris.org. 2008-12-09. Archivado desde el original el 11 de agosto de 2011 . Consultado el 19 de diciembre de 2016 .
- ^ "Servidores Sun Sun AT7180" . Acclinet. Archivado desde el original el 12 de febrero de 2011 . Consultado el 19 de diciembre de 2016 .
- ^ "Servidores Sun Sun AT7280" . acclinet. Archivado desde el original el 12 de febrero de 2011 . Consultado el 19 de diciembre de 2016 .
- ^ "Servidores Sun Sun AT7480" . acclinet. Archivado desde el original el 12 de febrero de 2011 . Consultado el 19 de diciembre de 2016 .
- ^ "Servidores Sun Sun AT7880" . Acclinet. Archivado desde el original el 12 de febrero de 2011 . Consultado el 19 de diciembre de 2016 .
- ^ "El sol pule los chips Sparc de próxima generación" . cnet. 2005-05-03.
- ^ "Sun amplía el liderazgo en innovación de Solaris / SPARC CMT" . Sun Microsystems. 2007-01-18.
- ^ "Rock Arrived" . Sun Microsystems. 2007-04-10.
- ^ "Sun Microelectronics alcanza un hito clave en el desarrollo de UltraSPARC de gama alta" . Sun Microsystems. 2007-05-02.
- ^ "Sun coloca la memoria transaccional en Rock" . El registro . 2007-08-21.
- ^ "El chip Sun's Rock se despide de la fecha de envío de 2008; Shaky silicon eyes 2009" . El registro . 2007-12-27.
- ^ "Mark Moir presenta en Sun Labs Open House 2008: memoria transaccional de Rock y cómo explotarlo" . Sol.
- ^ "Aviso: soporte Solaris para procesador Rock" . Proyecto OpenSolaris. Archivado desde el original el 2 de octubre de 2008.
- ^ "Sun rockeará en 2009: Esperanza de UltraSparc" . El registro .
- ^ "Programa ASPLOS 2009" . 2009-03-10.
- ^ "Experiencia inicial con una implementación de memoria transaccional de hardware comercial" (PDF) . Marzo de 2009.
- ^ "Experiencia inicial con una implementación de memoria transaccional de hardware comercial (diapositivas)" (PDF) . Marzo de 2009.
- ^ "pre-HHOSUG: ROCK NDA gift". 2009-06-12.
- ^ Vance, Ashlee (15 de junio de 2009). "Se dice que Sun cancelará el proyecto Big Chip" . The New York Times . Consultado el 22 de mayo de 2010 .
- ^ "Sun's Rock condenado desde el principio, dicen los analistas" . PC World . 2009-06-18.
- ^ "Las CPU se preparan para, y algunos evitan, los Hot Chips" . EETimes. 2009-06-17.
- ^ "El 36º Simposio Internacional de Arquitectura de Computadores" . 2009-06-20.
- ^ "6858457 Elimina el soporte de Solaris para el procesador UltraSPARC-AT10" . 2009-08-09.
- ^ "NZTM: Memoria transaccional de direccionamiento indirecto cero sin bloqueo" (PDF) . Septiembre de 2009.
- ^ "Programa SPAA 2009" (PDF) . 2009-08-13.
- ^ "Se revela la hoja de ruta del servidor Sparc de Sun" . El registro . 2009-09-11.
- ^ "tm_db: una biblioteca de depuración genérica para programas transaccionales" . 2009-09-15.
- ^ "tm_db: una biblioteca de depuración genérica para programas transaccionales" (PDF) . 2009-09-15.
- ^ "Experiencia inicial con una implementación de memoria transaccional de hardware comercial" . 2009-10-26.
- ^ a b "Programa de conferencias SPAA 2010" . 2010.
- ^ "Simplificación de algoritmos concurrentes mediante la explotación de memoria transaccional de hardware" . 2010-04-05.
- ^ "LRW: Retorno del bloqueo de lectura-escritura" . 2010-04-05.
- ^ "Informe especial: ¿Puede ese tipo en Ironman 2 derrotar a IBM en la vida real?" . Reuters . 2010-05-12.
Otras lecturas
- "La CPU de Sun's Rock podría ser una joya para Oracle" . Espectro IEEE. 2009-06-01.