Aunque la adquisición de Arm por $40 mil millones de Nvidia ahora es cosa del pasado, el gigante de
los chips todavía tiene planes para crear una cartera completa de CPU basadas en Arm para una
variedad de industrias.
Durante una reciente llamada de ganancias, el CEO de Nvidia, Jensen Huang, explicó que la CPU Grace
de la compañía se lanzará en la primera mitad de 2023, pero esto es solo el comienzo en lo que
respecta a sus CPU basadas en Arm. De hecho, la compañía tiene una licencia de 20 años para la
arquitectura de Arm que utilizará para desarrollar CPU para supercomputadoras, vehículos autónomos,
robótica y más.
Los principales negocios de Nvidia incluyen juegos y gráficos profesionales, AI/HPC, centro de datos
y automotriz. La empresa cree que puede ofrecer plataformas optimizadas para todos estos segmentos
utilizando CPU basadas en sus propios núcleos personalizados de uso general de Arm.
En teoría, las computadoras cuánticas son mucho más poderosas que las computadoras clásicas en
tareas importantes, como la investigación de nuevos diseños de baterías o el descubrimiento de
nuevos medicamentos, pero actualmente son demasiado propensas a errores para un uso práctico. Ahora
Amazon , Google , IBM y otros están siguiendo una serie de estrategias innovadoras para desarrollar
computadoras cuánticas tolerantes a fallas basadas en circuitos superconductores.
Mientras que las computadoras clásicas encienden o apagan los transistores para simbolizar los datos
como unos o ceros, las computadoras cuánticas usan bits cuánticos o "qubits", que debido a la
naturaleza surrealista de la física cuántica pueden existir en un estado de superposición donde son
tanto 1 como 1. 0 al mismo tiempo. Básicamente, esto permite que cada qubit realice dos cálculos a
la vez. Cuantos más qubits estén enlazados o enredados mecánicamente cuánticamente, más cálculos
podrán realizar simultáneamente.
Las computadoras cuánticas de última generación actuales suelen sufrir aproximadamente un error cada
1000 operaciones . Muchas aplicaciones prácticas exigen tasas de error mil millones o más bajas,
dice Oskar Painter , jefe del programa de hardware cuántico de Amazon Web Services (AWS) y físico
experimental en el Instituto de Tecnología de California .
La computación de alto rendimiento es necesaria para un número cada vez mayor de tareas, como el
procesamiento de imágenes o varias aplicaciones de aprendizaje profundo en redes neuronales, en las
que se deben atravesar inmensas pilas de datos y hacerlo razonablemente rápido, o de lo contrario
podría tomar ridículo. cantidades de tiempo. Se cree ampliamente que, al realizar operaciones de
este tipo, existen compensaciones inevitables entre velocidad y confiabilidad. Si la velocidad es la
máxima prioridad, según este punto de vista, entonces la confiabilidad probablemente se verá
afectada y viceversa.
Sin embargo, un equipo de investigadores, con sede principalmente en el MIT, está cuestionando esa
noción, afirmando que uno puede, de hecho, tenerlo todo. Con el nuevo lenguaje de programación, que
han escrito específicamente para computación de alto rendimiento , dice Amanda Liu, Ph.D. de segundo
año. estudiante del Laboratorio de Ciencias de la Computación e Inteligencia Artificial del MIT
(CSAIL), "la velocidad y la corrección no tienen que competir. En cambio, pueden ir juntas, de la
mano, en los programas que escribimos".
Liu, junto con el postdoctorado Gilbert Louis Bernstein de la Universidad de California en Berkeley,
el profesor asociado del MIT Adam Chlipala y el profesor asistente del MIT Jonathan Ragan-Kelley,
describieron el potencial de su creación recientemente desarrollada, "Un lenguaje tensor" (ATL), el
mes pasado en la conferencia Principios de lenguajes de programación en Filadelfia.
"Todo en nuestro idioma", dice Liu, "tiene como objetivo producir un solo número o un tensor". Los
tensores, a su vez, son generalizaciones de vectores y matrices. Mientras que los vectores son
objetos unidimensionales (a menudo representados por flechas individuales) y las matrices son
arreglos de números bidimensionales familiares, los tensores son arreglos n-dimensionales, que
podrían tomar la forma de un arreglo de 3x3x3, por ejemplo, o algo de mayor tamaño. (o menores)
dimensiones.
El objetivo de un algoritmo o programa de computadora es iniciar un cálculo particular. Pero puede
haber muchas formas diferentes de escribir ese programa, "una variedad desconcertante de diferentes
realizaciones de código", como escribieron Liu y sus coautores en su artículo de conferencia que
pronto se publicará, algunas considerablemente más rápidas que otras. La razón principal detrás de
ATL es la siguiente, explica: "Dado que la computación de alto rendimiento consume tantos recursos,
desea poder modificar o reescribir los programas en una forma óptima para acelerar las cosas. A
menudo uno comienza con un programa que es más fácil de escribir, pero que puede no ser la forma más
rápida de ejecutarlo, por lo que aún se necesitan más ajustes".