Compare los simuladores - Amazon Braket

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Compare los simuladores

Esta sección le ayuda a seleccionar el simulador Amazon Braket que mejor se adapte a su tarea cuántica, describiendo algunos conceptos, limitaciones y casos de uso.

Elegir entre simuladores locales y simuladores bajo demanda (SV1, TN1, DM1)

El rendimiento de los simuladores locales depende del hardware que aloja el entorno local, como una instancia de Braket notebook, utilizada para ejecutar el simulador. Los simuladores bajo demanda se ejecutan en AWS en la nube y están diseñados para ampliarse más allá de los entornos locales típicos. Los simuladores bajo demanda están optimizados para circuitos más grandes, pero añaden cierta sobrecarga de latencia por tarea cuántica o lote de tareas cuánticas. Esto puede implicar una compensación si se trata de muchas tareas cuánticas. Dadas estas características generales de rendimiento, la siguiente guía puede ayudarle a elegir cómo ejecutar las simulaciones, incluidas las que tienen ruido.

Para simulaciones:

  • Cuando emplee a menos de 18 qubits, utilice un simulador local.

  • Cuando emplee entre 18 y 24 años qubits, elija un simulador en función de la carga de trabajo.

  • Cuando emplee a más de 24 qubits, utilice un simulador bajo demanda.

Para simulaciones de ruido:

  • Cuando se emplean menos de 9 qubits, utilice un simulador local.

  • Al emplear 9—12 qubits, elija un simulador en función de la carga de trabajo.

  • Cuando emplee a más de 12 qubits, utilice DM1.

¿Qué es un simulador de vectores de estado?

SV1 es un simulador de vectores de estado universal. Almacena la función de onda completa del estado cuántico y aplica secuencialmente las operaciones de compuerta al estado. Almacena todas las posibilidades, incluso las más improbables. La SV1 El tiempo de ejecución del simulador para una tarea cuántica aumenta linealmente con el número de puertas en el circuito.

¿Qué es un simulador de matriz de densidad?

DM1 simula circuitos cuánticos con ruido. Almacena la matriz de densidad completa del sistema y aplica secuencialmente las compuertas y las operaciones de ruido del circuito. La matriz de densidad final contiene información completa sobre el estado cuántico una vez que se ejecuta el circuito. El tiempo de ejecución generalmente se escala linealmente con el número de operaciones y exponencialmente con el número de qubits.

¿Qué es un simulador de redes tensoriales?

TN1 codifica los circuitos cuánticos en un gráfico estructurado.

  • Los nodos de la gráfica consisten en puertas cuánticas, o qubits.

  • Los bordes del gráfico representan las conexiones entre las compuertas.

Como resultado de esta estructura, TN1 puede encontrar soluciones simuladas para circuitos cuánticos relativamente grandes y complejos.

TN1 requiere dos fases

Por lo general, TN1 opera en un enfoque de dos fases para simular la computación cuántica.

  • La fase de ensayo: En esta fase, TN1 encuentra una forma de recorrer el gráfico de manera eficiente, lo que implica visitar cada nodo para que pueda obtener la medida que desee. Como cliente, no ve esta fase porque TN1 realiza ambas fases juntas para usted. Completa la primera fase y determina si se debe realizar la segunda fase por sí sola en función de las limitaciones prácticas. Una vez comenzada la simulación, no tiene nada que ver con esa decisión.

  • La fase de contracción: esta fase es análoga a la fase de ejecución de un cálculo en un ordenador clásico. La fase consiste en una serie de multiplicaciones de matrices. El orden de estas multiplicaciones tiene un gran efecto en la dificultad del cálculo. Por lo tanto, la fase de ensayo se lleva a cabo primero para encontrar las rutas de cálculo más eficaces a lo largo del gráfico. Tras encontrar la trayectoria de contracción durante la fase de ensayo, TN1 contrae las compuertas de su circuito para producir los resultados de la simulación.

TN1 los gráficos son análogos a un mapa

Metafóricamente, puedes comparar lo subyacente TN1 gráfico de las calles de una ciudad. En una ciudad con una cuadrícula planificada, es fácil encontrar una ruta a tu destino usando un mapa. En una ciudad con calles no planificadas, nombres de calles duplicados, etc., puede resultar difícil encontrar una ruta a tu destino consultando un mapa.

Si TN1 no realizaste la fase de ensayo, sería como caminar por las calles de la ciudad para encontrar tu destino, en lugar de mirar primero un mapa. Pasar más tiempo mirando el mapa puede dar sus frutos en términos de tiempo de caminata. Del mismo modo, la fase de ensayo proporciona información valiosa.

Se podría decir que el TN1 tiene cierta «conciencia» de la estructura del circuito subyacente por el que atraviesa. Adquiere esta conciencia durante la fase de ensayo.

Tipos de problemas más adecuados para cada uno de estos tipos de simuladores

SV1 es adecuado para cualquier clase de problemas que se basen principalmente en tener un número determinado de qubits y puertas. Generalmente, el tiempo requerido crece linealmente con el número de puertas, mientras que no depende del número de shots. SV1 es generalmente más rápido que TN1 para circuitos de menos de 28 qubits.

SV1 puede ser más lento para más alto qubit números porque en realidad simula todas las posibilidades, incluso las extremadamente improbables. No tiene forma de determinar qué resultados son probables. Por lo tanto, para un 30-qubit evaluación, SV1 debe calcular 2^30 configuraciones. El límite de 34 qubits para el Amazon Braket SV1 el simulador es una limitación práctica debido a las limitaciones de memoria y almacenamiento. Puedes pensarlo de la siguiente manera: cada vez que añades un qubit a SV1, el problema se vuelve el doble de difícil.

Para muchos tipos de problemas, TN1 puede evaluar circuitos mucho más grandes en un tiempo realista que SV1 porque TN1 aprovecha la estructura del gráfico. Básicamente, rastrea la evolución de las soluciones desde su punto de partida y conserva solo las configuraciones que contribuyen a un recorrido eficiente. Dicho de otro modo, guarda las configuraciones para crear un orden de multiplicación de matrices que resulta en un proceso de evaluación más simple.

En TN1, el número de qubits y Gates importa, pero la estructura del gráfico importa mucho más. Por ejemplo: TN1 es muy bueno para evaluar circuitos (gráficos) en los que las puertas son de corto alcance (es decir, cada qubit está conectado por puertas únicamente con su vecino más cercano qubits) y circuitos (gráficos) en los que las conexiones (o compuertas) tienen un alcance similar. Un rango típico para TN1 es tener cada uno qubit hablar solo con otros qubits que son 5 qubits lejos. Si la mayor parte de la estructura se puede descomponer en relaciones más simples como estas, que se pueden representar en matrices más pequeñas o más uniformes, TN1 realiza la evaluación fácilmente.

Limitaciones de TN1

TN1 puede ser más lento que SV1 dependiendo de la complejidad estructural del gráfico. Para algunos gráficos, TN1 finaliza la simulación tras la fase de ensayo y muestra un estado deFAILED, por una de estas dos razones:

  • No se puede encontrar una ruta: si el gráfico es demasiado complejo, es muy difícil encontrar una buena trayectoria transversal y el simulador abandona el cálculo. TN1 no puede realizar la contracción. Es posible que veas un mensaje de error similar a este: No viable contraction path found.

  • La etapa de contracción es demasiado difícil: en algunos gráficos, TN1 puede encontrar una trayectoria transversal, pero su evaluación es muy larga y requiere mucho tiempo. En este caso, la contracción es tan cara que el costo sería prohibitivo y, en cambio, TN1 sale después de la fase de ensayo. Es posible que veas un mensaje de error similar a este: Predicted runtime based on best contraction path found exceeds TN1 limit.

nota

Se le facturará la fase de ensayo de TN1 incluso si no se realiza la contracción y usted ve un estado. FAILED

El tiempo de ejecución previsto también depende del shot contar. En el peor de los casos, TN1 el tiempo de contracción depende linealmente del shot contar. El circuito puede ser contráctil con menos shots. Por ejemplo, puedes enviar una tarea cuántica con 100 shots, que TN1 decide que es incontratable, pero si vuelves a presentarla con solo 10, la contracción continúa. En esta situación, para obtener 100 muestras, podrías enviar 10 tareas cuánticas de 10 shots para el mismo circuito y combinar los resultados al final.

Como práctica recomendada, te recomendamos que siempre pruebes tu circuito o clase de circuito con unos cuantos shots (por ejemplo, 10) para saber qué tan duro es tu circuito TN1, antes de proceder con un número mayor de shots.

nota

La serie de multiplicaciones que forma la fase de contracción comienza con matrices pequeñas de NxN. Por ejemplo, una 2-qubit la puerta requiere una matriz de 4x4. Las matrices intermedias necesarias durante una contracción que se considera demasiado difícil son gigantescas. Un cálculo de este tipo tardaría días en completarse. Esa es la razón Amazon Braket no intenta realizar contracciones extremadamente complejas.

Concurrency (Simultaneidad)

Todos los simuladores Braket permiten ejecutar varios circuitos al mismo tiempo. Los límites de simultaneidad varían según el simulador y la región. Para obtener más información sobre los límites de simultaneidad, consulta la página de cuotas.