Nota del editor: Marvell ha anunciado la próxima generación de Thunderx3 y Trueno x4. Esperemos que causen más sensación que el x2.
A todo el mundo le gustan las historias de perdedores.
Con el prolongado dominio de los chips Xeon de Intel en el servidor mercado, cualquier competidor potencial atraerá el interés del mercado.
El nuevo procesador ARM de Cavium, Thunderx2, ha despertado un gran interés.
Al igual que con Memoria 3D XpointEn los últimos años, se ha anunciado en varios artículos de relaciones públicas, revistas de tecnología y blogs como la próxima gran novedad.
Como ocurre con muchas cosas, el bombo está justificado en algunos lugares y no tanto en otros.
El precio de Cavium ThunderX2 es muy competitivo.
Tiene suficientes referencias para ofrecer una gama flexible y sus plataformas parecen rivalizar con los estándares.
Incluso vendedores como HPE y Cray están dando un paso al frente.
Sin embargo, como ocurre con cualquier historia de desvalidos, el Cavium ThunderX2 todavía tiene que superar muchos obstáculos.
Es posible que pase algún tiempo antes de que pueda reclamar una verdadera presencia en el mercado tras su lanzamiento oficial.
En este artículo repasaremos lo que se sabe hasta ahora y las métricas importantes que hay que tener en cuenta al evaluar el ThunderX2.
Precio de Cavium ThunderX2
Cavium es ciertamente impresionante desde el punto de vista del precio, con chips que van del $800 al $1795.
Cavium núcleo 9980, tiene un rendimiento comparable al del Intel Xeon Gold 6148 a un precio 70% inferior.
En cuanto al rendimiento por dólar, Cavium ofrece un rendimiento similar en toda la gama de SKU.
Dicho esto, Intel está fijando el precio de su producto como líder indiscutible del mercado.
Podrían bajar fácilmente el precio para rivalizar con la gama Thunder X2 en rendimiento por dólar si la cuota de mercado se redujera alguna vez.
Consumo de energía de Cavium Thunderx2
Aunque no se han dado a conocer referencias oficiales de consumo energético como el TDP, las pruebas iniciales de la comunidad Cavium ThunderX2 han demostrado que tanto el consumo en reposo como el TDP superan a los de Procesadores Intel.
En algunos casos, este exceso es bastante significativo.
Una de las personas que lo probó registró un consumo de la plataforma de 300 W en ralentí, y otra afirmó que superaba los 800 W en carga máxima.
Aunque esto ha suscitado críticas, es muy común en las fases previas al lanzamiento para hardware tener que solucionar problemas de eficiencia o de funciones.
Queda por ver cómo serán los puntos de referencia oficiales una vez que los chips se hayan generalizado.
Dicho esto, es poco probable que los cambios de firmware produzcan más que mejoras marginales en la eficiencia energética.
Rendimiento informático de ThunderX2
Informática de propósito general
Para uso general informática fines, el ThunderX2 tiene limitaciones.
Rinde bien en las pruebas multihilo, pero queda por detrás incluso del E5-2699 V3 en las pruebas más monohilo, como UnixBench Whetstone.
Al igual que el Thunder original anterior, el ThunderX2 es más adecuado para servidores web, bases de datos u otros fines de bajo paralelismo a nivel de instrucción (ILP).
A diferencia de la plataforma AMD EPYC de 8 nodos, ThunderX2 utiliza dos nodos NUMA como Intel, lo que probablemente sea más atractivo si esperas evitar los saltos de tejido con aplicaciones no compatibles con NUMA.
Sin embargo, aparte del precio, no hay nada aquí para las cargas de trabajo estándar que tendría desmantelamiento de centros de datos cada servidor para subirse al tren de ARM.
Computación de alto rendimiento
En lo que respecta a la computación de alto rendimiento (HPC), ThunderX2 es impresionante.
ThunderX2 de Cavium obtiene muy buenos resultados en pruebas comparativas que se correlacionan con memoria-aplicaciones de ancho de banda para el rendimiento, como OpenFOAM, Stream, CloverLeaf y TeaLeaf.
Sin embargo, se queda corto en las pruebas de código con límite computacional, como GROMACS y VASP.
Esencialmente, cualquier prueba que dependa de la caché resulta menos prometedora.
El ThunderX2 muestra un menor ancho de banda de caché L1 y L2, así como un menor rendimiento en coma flotante (FLOPS).
Estas limitaciones pueden resolverse en el futuro con los ARM habilitados para Scalable Vector Extension (SVE), que contienen unidades vectoriales más amplias.
Un obstáculo que se suele suponer es que los códigos HPC ya están muy optimizados para x86, por lo que las nuevas implementaciones de ARM tienen una eficiencia mediocre en comparación.
Sin embargo, sorprendentemente pocos de los códigos están hiperoptimizados para HPC.
Algunos, como GROMACS, presentan ventajas, pero no en la medida que algunos podrían suponer.
Muchas aplicaciones no se prestan al máximo rendimiento con un uso eficiente de los vectores más amplios.
En general, la línea ThunderX2 resulta prometedora para HPC y, más concretamente, para los diseños muy paralelos de empresas como Cray.
Compatibilidad de ThunderX2 con las aplicaciones existentes
La mayoría de los proveedores de software no son compatibles con arquitecturas que no sean x86.
Un número significativo de plataformas en la nube están basadas en Linux, por lo que es factible recompilarlas para ARM.
Sin embargo, muchas aplicaciones están optimizadas para líneas de procesadores específicas.
Es posible que Thunderx2 gane cuota de mercado gracias a su atractivo precio.
En ese caso, puede que veamos más apoyo de los sospechosos habituales para contribuir a su adopción.
Un área que sin duda supondrá un obstáculo es la implantación en entornos virtualizados.
No se puede apagar una máquina virtual basada en Xeon y volver a arrancar en un sistema ARM como se puede hacer en otro sistema Xeon.
Esto no es poca cosa, ya que la virtualización es ahora la norma con más de 75% de organizaciones que utilizan virtualizado servidores.
¿Tiene el ThunderX2 opciones efectivas de plataforma de servidor?
Varios OEM y proveedores ODM de caja blanca han subido a bordo, con HPE, Cray, Inventec y muchos otros que ahora ofrecen plataformas X2.
En hardware es comparable, y no presenta ningún obstáculo para hardware compatibilidad con sistemas de almacenamiento o equipos de red.
Las funciones estándar, como una interfaz gráfica de usuario web comparable y la gestión de IPMI fuera de banda, hacen que ThunderX2 sea más viable con una mejor gestión de inventario opciones que las ofertas anteriores.
¿Es el ThunderX2 vulnerable a Spectre?
Spectre es un problema inherente a la ejecución fuera de orden, así que sí, thunderx2 debería ser tan vulnerable a spectre como otros chips.
Deberás emplear las mismas medidas de protección, pero afortunadamente los parches más recientes de Linux no alteran significativamente el rendimiento.
Reflexiones finales
Thunderx2 de Cavium y ARM en general no van a sustituir a x86 a corto plazo.
En teoría, no hay ninguna razón por la que no se pueda hacer algo equivalente a x86 con ARM. No hay ninguna razón por la que no se pueda invertir dinero en fabricar núcleos ARM más grandes con una preconfiguración y SIMD equivalentes.
Pero Intel ha invertido miles de millones de dólares en ese concepto, y la historia dice que vencer a un gigante empresarial en su propio juego no suele ser una propuesta ganadora.
ThunderX2 se queda atrás con cargas de trabajo más generales.
Sin duda hay suficientes de esos en la moderna servidor entorno para impedir su adopción de facto.
Las primeras clasificaciones de TDP y consumo de energía tampoco ayudan.
Sin embargo, esta arquitectura es muy eficaz para manejar determinados tipos de cargas de trabajo.
Con su ancho de banda de memoria, puede ofrecer una solución única para entornos de aplicaciones con memoria limitada.
En el pasado vimos GPUs se disparan a medida que se adaptan a su nicho con algoritmos iterativos.
Quizás ARM pueda desempeñar un papel similar en HPC y otros nichos de uso.
Con la ley de Moore muerta hace tiempo, CPU Los fabricantes grandes y pequeños se centrarán más en el procesamiento paralelo que en la aceleración de núcleos individuales. Se ha establecido el nuevo paradigma. Será interesante contemplar el progreso.