Con la explosión del procesamiento de IA, los clústeres de GPU se están convirtiendo en un bien escaso, nos dijo el CTO de Arc Compute, Michael Buchel, en un reciente IT Press Tour en California. “Aprovechamos optimizaciones de nivel muy bajo en las GPU para brindar la capacidad de asumir tantas tareas como sea posible y condensarlas en un conjunto de datos más pequeño”, dijo. La idea es optimizar las capacidades de procesamiento paralelo de las GPU para aumentar su rendimiento y reducir su consumo de energía. Recuerde, las GPU no fueron diseñadas originalmente para computación intensiva, sino para renderizado de gráficos y aceleración 3D. En este mercado, Nvidia fue pionera en aprovechar la potencia de procesamiento paralelo de las GPU para el aprendizaje profundo y otras aplicaciones computacionalmente intensivas con el kit de desarrollo Cuda (Compute Unified Device Architecture) lanzado en 2007 con la Geforce 8. La firma de Santa Clara entendió mucho antes que sus principales competidores (ATI, luego AMD tras la adquisición de esta empresa canadiense en el origen de las GPU Radeon y, por supuesto, Intel) que el mercado de computación de alto rendimiento (HPC) requería un ecosistema de software dedicado. Cuda, que es a la vez una plataforma de computación paralela de propósito general y un modelo de programación, ayuda a los desarrolladores a portar sus aplicaciones a sus GPU para acelerar ciertos procesamientos (compresión, finanzas, simulación de fluidos, modelado climático, descifrado de códigos o incluso cálculos estructurales).

El kit de desarrollo de Cuda ha experimentado muchos cambios para acompañar el lanzamiento de arquitecturas de GPU y mejorar su manejo, que se sabe que es difícil. Además, Nvidia no perdió tiempo en adoptar la tecnología Tensorflow utilizada por Google para sus aceleradores TPU (Unidades de procesamiento de tensores ) en 2015. Recordemos que un tensor es un objeto matemático, cuyo valor se expresa en un espacio 3D. En 2015 con sus primeras TPU para uso interno, Google creó su propio framework de aprendizaje automático que utiliza tensores, porque permiten explotar redes neuronales altamente escalables. Google sorprendió a los actores del mercado al hacer de código abierto sus bibliotecas de aprendizaje automático Tensorflow (Google Brain para la primera versión) en noviembre de 2015 (publicadas bajo la licencia Apache), pero puede haber sido un golpe de genialidad porque Tensorflow se convirtió rápidamente en uno de los frameworks de aprendizaje automático más populares utilizados por los desarrolladores con la versión 2.0 lanzada en febrero de 2017. Nvidia presentó sus primeras unidades Tensor en mayo de 2017 con la microarquitectura de GPU Volta utilizada por los productos Tesla V100. Si AMD respondió tarde a Cuda lanzando Radeon Stream, Intel atrajo a Larrabee y el Grupo Khronos federa las iniciativas en torno a OpenCL (lanzado en 2009), el dominio de Nvidia aún no ha sido desafiado en un mercado impulsado por la necesidad de IA (generativa o discriminativa) a pesar de iniciativas como La startup Groq fundada por Jonathan Rossun ex empleado de Google que trabajó en la primera TPU (Unidad de procesamiento de tensores) de la empresa.

Suite ArcHPC para ajustar el control de la GPU

Fundada en 2022 y con sede en Toronto, Arc Compute -que cuenta con 17 empleados- está reorientando el trabajo de las GPU, principalmente Nvidia, con sus programadores de tareas y la división de cálculos para resolver mejor los problemas matemáticos sin adquirir hardware adicional ni recurrir a la correspondencia manual de tareas, un proceso que lleva tiempo y es una fuente de errores. "Hay programadores de tareas e intérpretes en todas las GPU. [...] "Entonces, si fueras lo suficientemente inteligente para identificar un problema de antemano y entendieras los códigos de máquina generados por el codificador, podrías obtener una mayor velocidad de procesamiento que la que obtendrías con la misma GPU". La solución de Arc Compute se basa en ArcHPC Suite con Nexus, Oracle y Mercury. El primero es una herramienta de gestión avanzada para GPU y otros aceleradores que se integra perfectamente con programadores de trabajos como el programador Slurm, lo que permite a los usuarios maximizar la densidad de trabajos y el rendimiento de la GPU sin necesidad de intervención manual. A través de la asignación optimizada de recursos y el ajuste granular de la capacidad de cómputo, Nexus garantiza que los trabajos se escalen y ejecuten de manera eficiente, y brinda recomendaciones para realizar mejoras adicionales.

Al analizar el código de la máquina y aprovechar algoritmos avanzados, Oracle automatiza la implementación de tareas y el complejo proceso de emparejamiento de bajo nivel, eliminando los ajustes manuales. La herramienta administra la ejecución de bajo nivel de instrucciones y realiza ajustes en tiempo real para garantizar una asignación óptima de recursos. Por último, Mercury complementa las dos primeras herramientas al abordar el emparejamiento de tareas para maximizar la cantidad de tareas que se ejecutan simultáneamente, al tiempo que monitorea la asignación de recursos de la GPU. Además, Mercury brinda a los administradores información sobre su infraestructura para abordar las crecientes cargas de trabajo. Al optimizar la utilización del hardware y minimizar el exceso de aprovisionamiento, Mercury ayuda a las organizaciones a reducir costos y mejorar la eficiencia general, afirmó Buchel.

En la actualidad, Arc Compute se desarrolla de forma directa en el mercado de grandes cuentas, empresas e hiperescaladores que operan sistemas HPC, y pasa por socios integradores que trabajan con AMD, Dell, HP, Nvidia o Supermicro. En cuanto a los precios, la start-up cobra por número de aceleradores, con un rango de precios de entre 4.000 y 8.800 dólares por GPU al año. También existe un coste de 0,37 dólares por hora para los proveedores de nube pública.