¿Qué es la Computación Cuántica?

Si bien la tecnología de las computadoras cuánticas es bastante incipiente, está influyendo en una nueva generación de simulaciones que ya se ejecutan en computadoras clásicas y que ahora están aceleradas con el SDK NVIDIA cuQuantum.
por Chris Porter

Veintisiete años antes de que Steve Jobs presentara una computadora que se podía guardar en el bolsillo, el físico Paul Benioff publicó un artículo que mostraba que, en teoría, era posible construir un sistema mucho más poderoso que se podía esconder en un dedal: una computadora cuántica.

El nombre de este concepto proviene de la física subatómica que pretendía aprovechar. Lo que Benioff describió en 1980 todavía impulsa la investigación en la actualidad, incluidos los esfuerzos para construir la próxima gran novedad en computación: un sistema que podría hacer que una PC resulte igual de pintoresco que un ábaco.

Richard Feynman, ganador del Premio Nobel cuyas conferencias llenas de ingenio llevaron la física a una amplia audiencia, ayudó a establecer el campo, esbozando cómo tales sistemas podrían simular fenómenos cuánticos extravagantes de manera más eficiente que las computadoras tradicionales.

Entonces, ¿Qué Es la Computación Cuántica?

La computación cuántica utiliza la física que gobierna las partículas subatómicas para realizar sofisticados cálculos paralelos, lo que reemplaza a los transistores más simplistas de las computadoras actuales.

Las computadoras cuánticas calculan usando qubits, unidades de computación que pueden estar encendidas, apagadas o cualquier valor entre, en lugar de los bits en las computadoras tradicionales que están encendidas o apagadas, uno o cero. La capacidad del qubit para vivir en el estado intermedio, llamado superposición, agrega una capacidad poderosa a la ecuación de computación, lo que hace que las computadoras cuánticas sean superiores para algunos tipos de matemáticas.

A Brief Guide to Quantum Computing

¿Qué Hace una Computadora Cuántica?

Usando los qubits, las computadoras cuánticas pueden realizar cálculos que llevarían mucho tiempo a las computadoras clásicas, si es que pudieran terminarlos.

Por ejemplo, las computadoras actuales usan ocho bits para representar cualquier número entre 0 y 255. Gracias a características como la superposición, una computadora cuántica puede usar ocho qubits para representar todos los números entre 0 y 255, simultáneamente.

Es una característica como el paralelismo en la computación: Todas las posibilidades se calculan a la vez en lugar de secuencialmente, lo que proporciona tremendas aceleraciones.

Entonces, mientras una computadora clásica realiza cálculos de división larga uno a la vez para factorizar un número enorme, una computadora cuántica puede obtener la respuesta en un solo paso. ¡Bum!

Eso significa que las computadoras cuánticas podrían remodelar campos completos, como la criptografía, que se basan en factorizar lo que hoy en día son números increíblemente grandes.

Un Gran Papel para Pequeñas Simulaciones

Eso podría ser solo el comienzo. Algunos expertos creen que las computadoras cuánticas superarán los límites que ahora obstaculizan las simulaciones en química, ciencia de materiales y cualquier cosa que involucre mundos construidos con los ladrillos de tamaño nanométrico de la mecánica cuántica.

Las computadoras cuánticas podrían incluso extender la vida útil de los semiconductores al ayudar a los ingenieros a crear simulaciones más refinadas de los efectos cuánticos que están comenzando a encontrar en los transistores más pequeños de la actualidad.

De hecho, los expertos dicen que las computadoras cuánticas en definitiva no reemplazarán a las computadoras clásicas, sino que las complementarán. Y algunos predicen que las computadoras cuánticas se utilizarán como aceleradores tanto como las GPU aceleran las computadoras de hoy.

¿Cómo Funciona la Computación Cuántica?

No esperes construir tu propia computadora cuántica como una PC de bricolaje con piezas extraídas de contenedores de descuento en la tienda de electrónica local.

Los pocos sistemas que funcionan en la actualidad normalmente requiere una refrigeración que crea entornos de trabajo apenas por encima del cero absoluto. Necesitan ese ártico de computación para manejar los frágiles estados cuánticos que alimentan estos sistemas.

Un ejemplo que grafica lo difícil que puede ser construir una computadora cuántica: para crear un qubit, un prototipo suspende un átomo entre dos láseres. ¡Pruébalo en el taller de tu casa!

La computación cuántica necesita músculos nanohercúleos para crear algo llamado entrelazamiento. Ahí es cuando existen dos o más qubits en un solo estado cuántico, una condición que a veces se mide mediante ondas electromagnéticas de solo un milímetro de ancho.

Si le agregas demasiada energía a esa ola y perderás el entrelazamiento o la superposición, o ambos. El resultado es un estado ruidoso llamado decoherencia, el equivalente en computación cuántica de la pantalla azul de la muerte.

¿Cuál Es el Estado de las Computadoras Cuánticas?

Unas pocas empresas, como Alibaba, Google, Honeywell, IBM, IonQ y Xanadu, operan las primeras versiones de las computadoras cuánticas en la actualidad.

Hoy proporcionan decenas de qubits. Pero los qubits pueden ser ruidosos, lo que a veces los hace poco fiables. Para abordar los problemas del mundo real de manera confiable, los sistemas necesitan decenas o cientos de miles de qubits.

Los expertos creen que podrían pasar un par de décadas antes de que lleguemos a una era de alta fidelidad en la que las computadoras cuánticas sean realmente útiles.

Quantum computing: Number of Qubits vs Time
Las computadoras cuánticas se están moviendo lentamente hacia el uso comercial. (Fuente: Charla de ISSCC 2017 a cargo de Lieven Vandersypen).

Las predicciones de cuándo alcanzamos la llamada supremacía de la computación cuántica, el momento en que las computadoras cuánticas ejecutan tareas que las clásicas no pueden, es el tema de un encendido debate en la industria.

Acelerar las Simulaciones de Circuitos Cuánticos en la Actualidad

La buena noticia es que el mundo de la IA y machine learning ponen en relieve tanto a los aceleradores como a las GPU, que pueden realizar muchos de los tipos de operaciones que las computadoras cuánticas calcularían con qubits.

Entonces, las computadoras clásicas ya están encontrando formas de albergar simulaciones cuánticas con GPU en la actualidad. Por ejemplo, NVIDIA ejecutó una simulación cuántica de vanguardia en Selene, nuestra supercomputadora de IA interna.

En el discurso de apertura de GTC, NVIDIA presentó el SDL cuQuantum para acelerar las simulaciones de circuitos cuánticos que se ejecutan en GPU. Los primeros trabajos sugieren que cuQuantum podrá ofrecer aceleraciones de órdenes de magnitud.

El SDK adopta un enfoque agnóstico, a fin de proporcionar una variedad de herramientas que los usuarios pueden elegir para adaptarse mejor a su estrategia. Por ejemplo, el método de vector de estado proporciona resultados de alta fidelidad, pero sus requisitos de memoria crecen exponencialmente con el número de qubits.

Eso crea un límite práctico de aproximadamente 50 qubits en las supercomputadoras clásicas más grandes de la actualidad. Sin embargo, hemos visto grandes resultados (a continuación) usando cuQuantum para acelerar las simulaciones de circuitos cuánticos que utilizan este método.

Quantum State Vector Results
Vector de estado: 1,000 circuitos, 36 qubits, profundidad m = 10, complejo 64 | CPU: Qiskit en doble AMD EPYC 7742 | GPU: Qgate en DGX A100

Investigadores del Centro de Supercomputación de Jülich ofrecerán un análisis profundo de su trabajo con el método del vector de estado en la sesión E31941 de GTC (gratis con inscripción).

Un enfoque más nuevo, las simulaciones de redes de tensor, usan menos memoria y más computación para realizar un trabajo similar.

Con este método, NVIDIA y Caltech aceleraron un simulador de circuito cuántico de última generación con cuQuantum que se ejecutan en las GPU NVIDIA A100 Tensor Core. Generó una muestra de una simulación de circuito completo del circuito Google Sycamore en 9.3 minutos en Selene, una tarea que hace 18 meses los expertos pensaban que tomaría días usando millones de núcleos de CPU.

Quantum Tensor Chart
Tensor Network – 53 qubits, profundidad m = 20 | CPU: Quimb en Dual AMD EPYC 7742 estimado | GPU: Quimb en DGX-A100

“Usando los paquetes Cotengra y Quimb, el recién anunciado SDK cuQuantum de NVIDIA y la supercomputadora Selene, hemos generado una muestra del circuito cuántico Sycamore a una profundidad m = 20 en un tiempo récord, menos de 10 minutos”, dijo Johnnie Gray, científico investigador en Caltech.

“Esto establece la evaluación para el rendimiento de la simulación de circuitos cuánticos y ayudará a avanzar en el campo de la computación cuántica, ya que mejora nuestra capacidad para verificar el comportamiento de los circuitos cuánticos”, dijo Garnet Chan, profesor de química en Caltech, cuyo laboratorio organizó el trabajo.

NVIDIA espera que las ganancias de rendimiento y la facilidad de uso de cuQuantum lo conviertan en un elemento fundamental en cada framework y simulador de computación cuántica a la vanguardia de esta investigación.

Regístrate para demostrar tu interés en cuQuantum aquí.