¿Cuántas operaciones puede realizar una computadora cuántica por segundo?

11

Quiero saber qué complejidad de tiempo se considera eficiente / ineficiente para las computadoras cuánticas. Para esto, necesito saber cuántas operaciones puede realizar una computadora cuántica por segundo. ¿Alguien puede decirme cómo calcularlo y de qué factores depende (detalles de implementación o número de qubits, etc.)?

Archil Zhvania
fuente

Respuestas:

17

Dar una estimación para un chip cuántico genérico es imposible ya que no existe una implementación estándar por el momento.

Sin embargo, es posible estimar este número para un chip cuántico específico, con la información proporcionada en línea. Encontré información sobre los chips IBM Q, así que aquí está la respuesta para el chip IBM Q 5 Tenerife . En el enlace encontrará información sobre el chip, pero nada sobre los tiempos. Debe acceder al registro de versión del chip (a través de un enlace que se encuentra en la página de chips IBM Q 5 Tenerife ). En este registro de versión, vaya a la sección "Especificación de puerta", tendrá la siguiente información (más explicaciones a continuación):

  1. Un tiempo para "GD", que es 60ns en el enlace de arriba.
  2. Varias veces para "GF" (tomemos 200ns para los cálculos a continuación).
  3. Un "tiempo de búfer", que es 10ns en el enlace de arriba.

Pero, ¿qué representan "GD", "GF" o "tiempo de amortiguación"? Son operaciones físicas básicas , es decir, las operaciones que se realizarán en el qubit físico. Estas operaciones físicas se utilizan para implementar algunas compuertas cuánticas base. Puede encontrar la descomposición de las puertas cuánticas de 4 bases de los backends de IBM Q en términos de estas operaciones físicas en la página de chips IBM Q 5 Tenerife . Copié la siguiente ilustración.

Descomposición de la operación base

Junto con "GD" y "GF", hay una operación física "FC" que no aparece en los tiempos. Esto se debe a que esta operación "FC" simplemente "cambia el marco de los siguientes pulsos" (citando a Jay Gambeta de una conversación en QISKit Slack), por lo que la operación "FC" tiene un costo (tiempo de aplicación) de 0.

El "tiempo de búfer" es solo un tiempo de pausa entre cada aplicación de operación física.

Finalmente, podemos calcular el tiempo necesario para aplicar cada puerta base en este backend específico:

  1. U1 : 0ns
  2. U2 : 70ns = 0ns + 60ns + 10ns (buffer) + 0ns
  3. U3 : 140ns = 0ns + 60ns + 10ns (buffer) + 0ns + 60ns + 10ns (buffer) + 0ns
  4. CX : 560ns = 0ns + 60ns + 10ns (buffer) + 200ns + 10ns (buffer) + 60ns + 10ns (buffer) + 200ns + 10ns (buffer)

A partir de estos tiempos, puede deducir el número de operaciones por segundo que puede realizar el backend ibmqx4.

Tomando 200ns por operación como una aproximación cruda del tiempo promedio para una operación, terminas con 5 000 000 operaciones por segundo.

Puede encontrar los datos para otros backends en el repositorio qiskit-backend-information GitHub .

Nelimee
fuente
11

Hay una diferencia importante entre las operaciones físicas y las operaciones lógicas .

Operaciones físicas que serán ligeramente imperfectas, realizadas en qubits que también son imperfectos. La velocidad a la que se pueden realizar depende del sistema físico que se utilice para realizar los qubits. Por ejemplo, los qubits superconductores pueden realizar dos puertas qubit (las más lentas) en un tiempo del orden de 100 ns (ver la respuesta de Nelimee ).

Al combinar muchos qubits físicos y realizar un proceso con muchas operaciones físicas, podemos construir qubits lógicos . Al hacer la corrección de errores, estos qubits y las operaciones realizadas sobre ellos pueden hacerse arbitrariamente precisos. Este es el tipo de operaciones que se requieren para implementar algoritmos cuánticos.

Actualmente hay demasiadas incógnitas para darle una frecuencia de reloj de operaciones lógicas. Sobre todo porque aún no se han construido qubits lógicos de prueba de principio (al menos no con códigos de corrección de error cuántico). Depende de cuán imperfectos sean los qubits y las operaciones físicas, y cuánto debemos hacer para limpiar todo. Depende del tipo de código de corrección de errores que usemos, que a su vez depende del conjunto de instrucciones de nuestros procesadores cuánticos (es decir, qué pares de qubits pueden tener una puerta de dos qubit aplicada directamente sobre ellos). Y esto depende de la cantidad de ruido que estemos dispuestos a tener, porque las mejores arquitecturas a menudo conllevan el costo del ruido. Por lo tanto, hay muchas interdependencias y mucho por resolver.

James Wootton
fuente