La rivalidad entre Nvidia e Intel es un hecho bastante conocido, con cada una de ellas afirmando que sus propias soluciones son la mejor opción para el cómputo HPC, y esta rivalidad quizá este por llegar a nuevos niveles con el inminente lanzamiento de Intel Knights Ferry, la primera encarnación de Larrabee enfocada al cómputo HPC, un GPGPU basado en núcleos x86 con instrucciones SIMD especializadas, con 32 núcleos (128 hilos gracias a su tecnología HyperThreading). Pero si bien se comenta mucho sobre dicha rivalidad; la rivalidad de Nvidia con AMD llega a niveles mayores; desde The Inquirer nos llega una candente entrevista que realizaron a Sumit Gupta, el Gerente General de Marketing y Productos Tesla de Nvidia, y a Patricia Harrell, Directora de la división Stream Computing de AMD.
PUBLICIDAD
Si bien la rivalidad entre AMD y Nvidia se daba en el mercado de consumo (productos enfocados a juegos y reproducción de video acelerado por hardware), el reciente lanzamiento de las nuevas AMD FireStream basadas en la arquitectura DirectX 11 Evergreen, con su oferta de un gran performance GPGPU acompañada por una baja generación de calor (soluciones fanless) y con un bajo consumo, ha elevado el nivel de competencia de AMD en el mercado HPC, convirtiéndola en un serio rival; acrecentando la rivalidad entre ellas incluso quizá a niveles mayores que con Intel, pues Nvidia promociona a los chips Xeon de Intel como la mejor combinación acompañante para sus chips Tesla, pero nunca promocionaría a los chips Opteron de AMD, por la asociación que podría dársele con los chips GPGPU AMD FireStream, vaya, cada vez va sonando más razonable la posible eliminación de la marca ATI.
En los últimos 5 años, la división de gráficas para HPC Tesla de Nvidia no ha recibido más que elogios, dominando por completo dicho mercado, debido a su gran poder de cálculo, y siendo adoptada por los grandes de la industria como SGI (Silicon Graphics International); pero hace un par de meses que SGI se ha decantado por las soluciones de Intel y AMD, debido al menor consumo de energía y el evidente ahorro en soluciones de refrigeración y costos de mantenimiento.
Los de The Inquirer afirman que inicialmente AMD no tomó en serio al mercado GPGPU, quizá por falta de visión a futuro, o por confiarse en sus CPU Opteron, pero esta situación ha cambiado desde fines del 2008; y actualmente AMD pregona el uso combinado de x86 con GPGPU como el camino para llegar al exa-escalar el cómputo HPC.
Luego de esta larga introducción empieza lo candente de la entrevista, vayan por una soda y palomitas de maíz que esto empieza a ponerse bueno.
PUBLICIDAD
La polémica por el uso de memorias ECC
Luego de muchas rigurosas pruebas realizadas en nuestros laboratorios, creemos que el uso de memorias ECC es innecesario, y sólo contribuiría a incrementar innecesariamente los costos de producción y elevar el consumo, perdiendo el beneficio del rendimiento por vatio.
El uso de memorias ECC (con código de corrección de errores) es vital para la aceptación en HPC, además tiene un impacto insignificante en el consumo energético.
GPGPUs o CPUs
Los de The Inquirer aseguran que les fue muy difícil mantener el orden en esta entrevista, debido a la “palpable pasión” de Gupta cuando se refería a AMD.
AMD es una empresa que ha hecho cero inversión en GPGPUs, a las que mantienen en la prioridad más baja, pues están obligados a vender CPUs; su empresa está completamente desgarrada internamente entre la venta de su antigua fuente de ingresos: los CPU, y el futuro del HPC: los GPGPUs.
Nuestra empresa no posee conflictos internos, y apoyamos el diseño de GPGPUs; ese argumento es típico de una empresa que no posee un negocio x86. Los GPGPUs son fundamentales para el éxito en HPC, es más, recientemente fusionamos nuestras divisiones x86 para servidores y GPGPUs, pues ambas arquitecturas deben coexistir.
CUDA vs OpenCL
La afirmación de la inversión cero de AMD en el diseño de GPGPUs es claramente una exageración, AMD ha tomado medidas provisionales en el mercado. Para los analistas es obvio que una mayor competencia en el mercado no sólo aumentará la innovación, también permitirá que las normas para el hardware y el software se establezcan pronto. AMD está apostando por granjas de servidores en OpenCL, un lenguaje abierto que ha sido bastante publicitado por AMD, al que le falta funcionalidad clave, y está desprovisto de características como recursividad y punteros entre otras cosas que son barrera para su adopción en el mercado HPC. AMD no tiene ninguna estrategia OpenCL creible, ellos no soportan OpenCL ni producen controladores OpenCL. No nos importa el software que se ejecute en las GPGPU, siempre y cuando este se ejecute en una GPU Nvidia. Tanto AMD como Nvidia son miembros del grupo Kronos, el consorcio que supervisa el desarrollo de OpenCL. Nvidia es la única que posee drivers OpenCL disponibles públicamente; mientras que los drivers OpenCL de AMD no se incluyen con sus drivers estándar.
Las normas estándar del mercado (OpenCL) no se están moviendo lo suficientemente rápido, pero la batalla no ha terminado ni por el desempeño de los chips, ni por el entorno de desarrollo ni por su propio lenguaje específico. AMD está invirtiendo fuertemente en OpenCL para que se convierta en un éxito, es más en un nivel más alto la funcionalidad multiplataforma de OpenCL ha demostrado ser popular entre sus clientes. Los drivers OpenCL están disponibles en nuestra web para desarrolladores.
Que impide que AMD adopte CUDA
Nada, teóricamente AMD podría crear un controlador compatible con CUDA con el cual podrían ejecutar el código en sus GPUs. Por supuesto que hay problemas de licencia y asuntos de orgullo en juego, pero en teoría se podría hacer.
El problema no es tecnológico, sino un asunto de ideología: CUDA no es un estándar de la industria, y Nvidia tiene el control del lenguaje.
Cual se convertirá en el estándar de la industria
Mientras AMD y otros están apostando por OpenCL, Nvidia no ha hecho más que también apoyarlo, pero se ha cubierto las espaldas apoyando tanto a CUDA como OpenCL, no sólo ello, también apoyamos a Java, Python, Fortran y DirectCompute, esta amplia gama de apoyo significará que Nvidia continuará siendo popular entre los desarrolladores. OpenCL será superado por DirectCompute de Microsoft, e incluso podría ser desplazado de la misma forma que ocurrió con OpenGL.
Admitimos que aún tenemos que trabajar más tanto con el software como con la comercialización; la cosecha actual de tarjetas FireStream que están a punto de ser lanzadas representan la oportunidad de presentar una verdadera batalla en el mercado HPC.
Conclusiones
Vaya sí que debe haber sido muy difícil mantener el orden en dicha entrevista/debate; la cual si estuviese disponible en video, podríamos haber apreciado la atmosfera de hostilidad, volviendo al tema, si bien es cierto que Nvidia ha sido la que ha puesto mayor énfasis al GPGPU con su harto publicitado CUDA, el cual goza de un apoyo mayoritario hasta el momento, cabe recordar que ellos no fueron los que iniciaron el GPGPU, este mérito lo tienen los de ATI (antes de que fuese adquirida por AMD) con su lenguaje GPGPU Brook+ estrenado en tiempos de las Radeon X1900 allá por el 2005; CUDA es incluso apoyado por algunas universidades e institutos que la ofrecen en sus cursos. Si bien se ha posicionado bien en esa área aún no hay un estándar definido, y la reciente incursión de Intel a OpenCL podría alterar la balanza a favor de dicha API.
Por otro lado y fuera de este tema las féminas de AMD como Leslie Sobon, Vicepresidenta de marketing de productos y Patricia Harrell, Directora de Stream Computing, le dan un toque distinto a AMD, y en esta entrevista Harrell estuvo más que a la altura.
Link: AMD turns up the heat on Nvidia’s GPGPUs (The Inquirer)