Dispositivos compatibles con Amazon Braket - 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.

Dispositivos compatibles con Amazon Braket

En Amazon Braket, un dispositivo representa una QPU o un simulador al que puede llamar para ejecutar tareas cuánticas. Amazon Braket proporciona acceso a cinco dispositivos de QPU: desdeIonQOxford Quantum Circuits,QuEra,Rigetti, yXanadu, tres simuladores bajo demanda, tres simuladores locales y un simulador integrado. Para todos los dispositivos, puede encontrar más propiedades del dispositivo, como la topología del dispositivo, los datos de calibración y los conjuntos de puertas nativos, en la pestaña Dispositivos de la consola de Amazon Braket o mediante laGetDevice API. Al construir un circuito con los simuladores, Amazon Braket requiere actualmente que utilice cúbits o índices contiguos. Si trabaja con el SDK de Amazon Braket, tiene acceso a las propiedades del dispositivo, tal como se muestra en el siguiente ejemplo de código.

from braket.aws import AwsDevice from braket.devices import LocalSimulator device = AwsDevice('arn:aws:braket:::device/quantum-simulator/amazon/sv1') #SV1 # device = LocalSimulator() #Local State Vector Simulator # device = LocalSimulator("default") #Local State Vector Simulator # device = LocalSimulator(backend="default") #Local State Vector Simulator # device = LocalSimulator(backend="braket_sv") #Local State Vector Simulator # device = LocalSimulator(backend="braket_dm") #Local Density Matrix Simulator # device = LocalSimulator(backend="braket_ahs") #Local Analog Hamiltonian Simulation # device = AwsDevice('arn:aws:braket:::device/quantum-simulator/amazon/tn1') #TN1 # device = AwsDevice('arn:aws:braket:::device/quantum-simulator/amazon/dm1') #DM1 # device = AwsDevice('arn:aws:braket:::device/qpu/ionq/ionQdevice') #IonQ # device = AwsDevice('arn:aws:braket:us-west-1::device/qpu/rigetti/Aspen-M-2') #Rigetti Aspen-M-2 # device = AwsDevice('arn:aws:braket:us-west-1::device/qpu/rigetti/Aspen-M-3') #Rigetti Aspen-M-3 # device = AwsDevice('arn:aws:braket:eu-west-2::device/qpu/oqc/Lucy') #OQC Lucy # device = AwsDevice('arn:aws:braket:us-east-1::device/qpu/xanadu/Borealis') #Xanadu Borealis # device = AwsDevice('arn:aws:braket:us-east-1::device/qpu/quera/Aquila') #QuEra Aquila # get device properties device.properties

QPUs compatibles

Simuladores compatibles

Elige el mejor simulador para tu tarea

nota

Para ver lo disponibleRegiones de AWS para cada dispositivo, desplázate hacia la derecha por la siguiente tabla.

Dispositivos Amazon Braket
Proveedor Nombre de dispositivo Paradigma Tipo ARN del dispositivo Región

IonQ

ionQdevice

basado en puertas

QPU

arn:aws:broket: :Device/QPU/ionQ/iONQDevice

us-east-1

Oxford Quantum Circuits

Lucy

basado en puertas

QPU

arn:aws:braket:eu-west-2: :device/QPU/OQC/Lucy

eu-west-2

QuEra

Aquila

Simulación hamiltoniana analógica

QPU

arn:aws:braket:us-east-1: :Device/QPU/quera/Aquila

us-east-1

Rigetti

Aspen M-2

basado en puertas

QPU

arn:aws:braket:us-west-1: :device/QPU/Rigetti/Aspen-M-2

us-west-1

Rigetti

Aspen M-3

basado en puertas

QPU

arn:aws:braket:us-west-1: :device/QPU/Rigetti/Aspen-M-3

us-west-1

Xanadu

Borealis

variable continua

QPU

arn:aws:braket:us-east-1: :Device/QPU/Xanadu/Borealis

us-east-1

AWS

braket_sv

basado en puertas

Simulador local

N/A (simulador local en Braket SDK)

N/A

AWS

braket_dm

basado en puertas

Simulador local

N/A (simulador local en Braket SDK)

N/A

AWS

SV1

basado en puertas

Simulador bajo demanda

arn:aws:braket: ::device/quantum-simulator/amazon/sv1

Todas las regiones en las queAmazon Braket está disponible.

AWS

DM1

basado en puertas

Simulador bajo demanda

arn:aws:breaket: :device/quantum-simulator/amazon/dm1

Todas las regiones en las queAmazon Braket está disponible.

AWS

TN1

basado en puertas

Simulador bajo demanda

arn:aws:breaket: :device/quantum-simulator/amazon/tn1

us-west-2, us-east-1 y us-west-2

Para ver detalles adicionales sobre las QPU que puede usar conAmazon Braket, consulte Amazon Braket Hardware Providers.

IonQ

IonQofrece una QPU basada en puertas basada en la tecnología de captura de iones. IonQ’sLas QPU de iones atrapados se basan en una cadena de iones 171Yb+ atrapados que se confinan espacialmente mediante una trampa de electrodos de superficie microfabricada dentro de una cámara de vacío.

ElIonQ dispositivo admite las siguientes puertas cuánticas.

'x', 'y', 'z', 'rx', 'ry', 'rz', 'h', 'cnot', 's', 'si', 't', 'ti', 'v', 'vi', 'xx', 'yy', 'zz', 'swap'

Con la compilación literal, elIonQ dispositivo admite las siguientes puertas nativas.

'gpi', 'gpi2', 'ms'

Estas puertas nativas solo se pueden usar con una compilación literal. Para obtener más información sobre la compilación literal, consulte Compilación literal.

Rigetti

RigettiLos procesadores cuánticos son máquinas universales tipo compuerta basadas en superconductores totalmente ajustablesqubits. ElAspen-M-3 dispositivo de 79 qubits aprovecha su tecnología patentada de múltiples chips y se ensambla a partir de 2 procesadores de 40 qubits. Lo mismo se aplica alAspen-M-2 dispositivo de 80 qubits.

LosRigetti dispositivos admiten las siguientes puertas cuánticas.

'cz', 'xy', 'ccnot', 'cnot', 'cphaseshift', 'cphaseshift00', 'cphaseshift01', 'cphaseshift10', 'cswap', 'h', 'i', 'iswap', 'phaseshift', 'pswap', 'rx', 'ry', 'rz', 's', 'si', 'swap', 't', 'ti', 'x', 'y', 'z'

Con la compilación literal, los dispositivos Rigetti admiten las siguientes puertas nativas.

'rx', 'rz', 'cz', 'cphaseshift', 'xy'

Rigettilos procesadores cuánticos superconductores pueden ejecutar la puerta «rx» solo con ángulos de ±π /2 o ±π.

El control del nivel de impulsos está disponible en losRigetti dispositivos, que admiten un conjunto de marcos predefinidos de los siguientes tipos:

'rf', 'rf_f12', 'ro_rx', 'ro_rx', 'cz', 'cphase', 'xy'

Para obtener más información sobre estos marcos, consulte Funciones de marcos y puertos.

Oxford Quantum Circuits (OQC)

OQClos procesadores cuánticos son máquinas universales, modelo puerta, construidas con la tecnología escalable de Coaxmon. ElOQC Lucy sistema es un8-qubit dispositivo con la topología de un anillo en el que cada unoqubit está conectado a sus dos vecinos más cercanos.

ElLucy dispositivo admite las siguientes puertas cuánticas.

'ccnot', 'cnot', 'cphaseshift', 'cswap', 'cy', 'cz', 'h', 'i', 'phaseshift', 'rx', 'ry', 'rz', 's', 'si', 'swap', 't', 'ti', 'v', 'vi', 'x', 'y', 'z', 'ecr'

Con la compilación literal, el dispositivo OQC admite las siguientes puertas nativas.

'i', 'rz', 'v', 'x', 'ecr'

El control del nivel de pulso está disponible en losOQC dispositivos. LosOQC dispositivos admiten un conjunto de marcos predefinidos de los siguientes tipos:

'drive', 'second_state', 'measure', 'acquire', 'cross_resonance', 'cross_resonance_cancellation'

OQClos dispositivos admiten la declaración dinámica de marcos siempre que se proporcione un identificador de puerto válido. Para obtener más información sobre estos marcos y puertos, consulte Funciones de marcos y puertos.

nota

Al utilizar el control de impulsos conOQC, la duración de los programas no puede superar un máximo de 90 microsegundos. La duración máxima es de aproximadamente 50 nanosegundos para puertas de un solo cúbit y de 1 microsegundo para puertas de dos cúbits. Estos números pueden variar según los cúbits utilizados, la calibración actual del dispositivo y la compilación del circuito.

QuEra

QuEraofrece dispositivos basados en átomos neutros que pueden ejecutar tareas de simulación hamiltoniana analógica (AHS). Estos dispositivos especiales reproducen fielmente la dinámica cuántica dependiente del tiempo de cientos de cúbits que interactúan simultáneamente.

Se pueden programar estos dispositivos en el paradigma de la simulación hamiltoniana analógica prescribiendo el diseño del registro de cúbits y la dependencia temporal y espacial de los campos manipuladores. Amazon Braket proporciona utilidades para crear dichos programas a través del módulo AHS del SDK de Pythonbraket.ahs.

Para obtener más información, consulte los cuadernos de ejemplo de simulación hamiltoniana analógica o la página Enviar un programa analógico mediante QuEra Aquila.

Xanadu

Xanaduconstruye computadoras cuánticas fotónicas que utilizan variables continuas para la computación cuántica conocidas como qumodes en lugar de los sistemas tradicionales de dos niveles oqubits. En el caso de la QPU Borealis, cada modo q representa el campo electromagnético cuantificado de un pulso láser que viaja a través del dispositivo. Las puertas entre dos qumodes se implementan interfiriendo dos qumodes separados temporalmente mediante divisores de haz programables y líneas de retardo. En lugar de las habituales puertas de uno y dos cúbits, como Hadamard o CNOT, la computación cuántica de variables continuas utiliza puertas como la rotación, el desplazamiento, la división del haz y la compresión.

Xanadu’sBorealisLa computadora cuántica fotónica no es una máquina universal, capaz de realizar cálculos cuánticos arbitrarios, sino que implementa un protocolo específico conocido como muestreo de bosones gaussianos (GBS). El GBS es un modelo de computación cuántica fotónica introducido por primera vez por Hamilton et al. que consiste en operaciones ópticas lineales multimodo seguidas de mediciones de recuento de fotones. ElBorealis dispositivo implementa GBS con 216 qumodes espaciados temporalmente. Amazon Braket ofrece acceso a laBorealis biblioteca Strawberry Fields de código abierto para computación cuántica fotónica.

Para obtener más información, consulte el bloc de notas de ejemplo de Borealis

Simulador vectorial estatal local (braket_sv)

El simulador vectorial estatal local (braket_sv) forma parte del SDK deAmazon Braket que se ejecuta localmente en su entorno. Es ideal para la creación rápida de prototipos en circuitos pequeños (hasta 25qubits), según las especificaciones de hardware de su instancia de portátil Braket o de su entorno local.

El simulador local admite todas las puertas del SDK deAmazon Braket, pero los dispositivos QPU admiten un subconjunto más pequeño. Puede encontrar las puertas compatibles de un dispositivo en las propiedades del dispositivo.

nota

El simulador local admite funciones avanzadas de OpenQASM que pueden no ser compatibles con dispositivos QPU u otros simuladores. Para obtener más información sobre las funciones compatibles, consulte los ejemplos que se proporcionan en el bloc de notas de OpenQASM Local Simulator.

Para obtener más información sobre cómo trabajar con simuladores, consulte los ejemplos de Amazon Braket.

Simulador de matriz de densidad local (braket_dm)

El simulador de matriz de densidad local (braket_dm) forma parte del SDK deAmazon Braket que se ejecuta localmente en su entorno. Es ideal para la creación rápida de prototipos en circuitos pequeños con ruido (hasta 12qubits), según las especificaciones de hardware de su instancia de portátil Braket o de su entorno local.

Puede crear circuitos ruidosos comunes desde cero mediante operaciones de ruido de compuerta, como el cambio de bits y el error de despolarización. También puede aplicar operaciones de ruido a circuitos específicosqubits y a puertas de circuitos existentes que estén diseñados para funcionar con y sin ruido.

El simuladorbraket_dm local puede proporcionar los siguientes resultados, dado el número especificado deshots:

  • Matriz de densidad reducida:Shots = 0

nota

El simulador local admite funciones avanzadas de OpenQASM, que pueden no ser compatibles con dispositivos QPU u otros simuladores. Para obtener más información sobre las funciones compatibles, consulte los ejemplos que se proporcionan en el bloc de notas de OpenQASM Local Simulator.

Para obtener más información sobre el simulador de matriz de densidad local, consulte el ejemplo introductorio del simulador de ruido Braket.

Simulador AHS local (braket_ahs)

El simulador AHS (simulación hamiltoniana analógica) local (braket_ahs) forma parte del SDK de Amazon Braket que se ejecuta localmente en su entorno. Se puede utilizar para simular los resultados de un programa AHS. Es ideal para la creación de prototipos en registros pequeños (de hasta 10 a 12 átomos), según las especificaciones de hardware de su instancia de portátil Braket o de su entorno local.

El simulador local admite programas AHS con un campo impulsor uniforme, un campo de desplazamiento (no uniforme) y disposiciones atómicas arbitrarias. Para obtener más información, consulte la clase Braket AHS y el esquema del programa Braket AHS.

Para obtener más información sobre el simulador AHS local, consulte la página Hello AHS: Ejecute su primera simulación hamiltoniana analógica y los cuadernos de ejemplos de simulación hamiltoniana analógica.

Simulador de vectores de estado (SV1)

SV1es un simulador vectorial de estado universal, de alto rendimiento y bajo demanda. Puede simular circuitos de hasta 34qubits. Se puede esperar que un34-qubit circuito denso y cuadrado (profundidad del circuito = 34) tarde aproximadamente entre 1 y 2 horas en completarse, según el tipo de compuertas utilizadas y otros factores. Los circuitos con all-to-all compuertas son adecuados paraSV1. Devuelve los resultados en formas tales como un vector de estado completo o una matriz de amplitudes.

SV1tiene un tiempo de ejecución máximo de 6 horas. Tiene un valor predeterminado de 35 tareas simultáneas y un máximo de 100 (50 en us-west-1 y eu-west-2) tareas simultáneas.

SV1resultados

SV1puede proporcionar los siguientes resultados, dado el número especificado deshots:

  • Muestra:Shots > 0

  • Expectativa:Shots >= 0

  • Varianza:Shots >= 0

  • Probabilidad:Shots > 0

  • Amplitud:Shots = 0

  • Gradiente adjunto:Shots = 0

Para obtener más información sobre los resultados, consulte Tipos de resultados.

SV1siempre está disponible, ejecuta sus circuitos a pedido y puede ejecutar varios circuitos en parallel. El tiempo de ejecución se escala linealmente con el número de operaciones y exponencialmente con el número dequbits. El número deshots tiene un pequeño impacto en el tiempo de ejecución. Para obtener más información, visita Comparar simuladores.

Los simuladores admiten todas las puertas del SDK de Braket, pero los dispositivos QPU admiten un subconjunto más pequeño. Puede encontrar las puertas compatibles de un dispositivo en las propiedades del dispositivo.

Simulador de matrices de densidad (DM1)

DM1es un simulador de matriz de densidad de alto rendimiento y bajo demanda. Puede simular circuitos de hasta 17qubits.

DM1tiene un tiempo de ejecución máximo de 6 horas, un valor predeterminado de 35 tareas simultáneas y un máximo de 50 tareas simultáneas.

DM1resultados

DM1puede proporcionar los siguientes resultados, dado el número especificado deshots:

  • Muestra:Shots > 0

  • Expectativa:Shots >= 0

  • Varianza:Shots >= 0

  • Probabilidad:Shots > 0

  • Matriz de densidad reducida:Shots = 0, hasta un máximo de 8qubits

Para obtener más información sobre los resultados, consulte el tema sobre tipos de resultados.

DM1siempre está disponible, ejecuta sus circuitos a pedido y puede ejecutar varios circuitos en parallel. El tiempo de ejecución se escala linealmente con el número de operaciones y exponencialmente con el número dequbits. El número deshots tiene un pequeño impacto en el tiempo de ejecución. Para obtener más información, consulte el tema sobre comparación de simuladores.

Puertas y limitaciones de ruido

AmplitudeDamping Probability has to be within [0,1] BitFlip Probability has to be within [0,0.5] Depolarizing Probability has to be within [0,0.75] GeneralizedAmplitudeDamping Probability has to be within [0,1] PauliChannel The sum of the probabilities has to be within [0,1] Kraus At most 2 qubits At most 4 (16) Kraus matrices for 1 (2) qubit PhaseDamping Probability has to be within [0,1] PhaseFlip Probability has to be within [0,0.5] TwoQubitDephasing Probability has to be within [0,0.75] TwoQubitDepolarizing Probability has to be within [0,0.9375]

Simulador de red Tensor (TN1)

TN1es un simulador de redes tensoriales de alto rendimiento y bajo demanda. TN1puede simular ciertos tipos de circuitos con hasta 50qubits y una profundidad de circuito de 1000 o menos. TN1es particularmente potente para circuitos dispersos, circuitos con puertas locales y otros circuitos con una estructura especial, como los circuitos de transformada cuántica de Fourier (QFT). TN1funciona en dos fases. En primer lugar, la fase de ensayo intenta identificar una ruta computacional eficiente para el circuito, de modo queTN1 pueda estimar el tiempo de ejecución de la siguiente etapa, que se denomina fase de contracción. Si el tiempo de contracción estimado supera el límite de tiempo de ejecución de laTN1 simulación,TN1 no intente la contracción.

TN1tiene un límite de tiempo de ejecución de 6 horas. Está limitado a un máximo de 10 tareas simultáneas (5 en eu-west-2).

TN1resultados

La fase de contracción consiste en una serie de multiplicaciones de matrices. La serie de multiplicaciones continúa hasta que se obtiene un resultado o hasta que se determina que no se puede alcanzar un resultado.

Nota:Shots debe ser > 0.

Los tipos de resultados incluyen:

  • Ejemplo

  • Expectativa

  • Varianza

Para obtener más información sobre los resultados, consulte Tipos de resultados.

TN1siempre está disponible, ejecuta sus circuitos a pedido y puede ejecutar varios circuitos en parallel. Para obtener más información, consulte el tema sobre comparación de simuladores.

Los simuladores admiten todas las puertas del SDK de Braket, pero los dispositivos QPU admiten un subconjunto más pequeño. Puede encontrar las puertas compatibles de un dispositivo en las propiedades del dispositivo.

Visite el GitHub repositorio deAmazon Braket para ver un cuaderno de ejemplo de TN1 que le ayude a empezarTN1.

Prácticas recomendadas para trabajar conTN1

  • Evite all-to-all los circuitos.

  • Pruebe un nuevo circuito o clase de circuitos con un número pequeño deshots, para conocer la «dureza» del circuitoTN1.

  • Divida grandesshot simulaciones en varias tareas.

Simuladores embebidos

Los simuladores integrados funcionan integrando la simulación con el código del algoritmo en el mismo contenedor y ejecutando la simulación directamente en la instancia de trabajo. Esto puede resultar útil para eliminar los obstáculos asociados a la comunicación de la simulación con un dispositivo remoto. Esto puede reducir significativamente el uso de memoria, reducir el número de ejecuciones de circuitos para lograr el resultado deseado y mejorar el rendimiento diez veces o más. Para obtener más información sobre los simuladores integrados, consulte la página Ejecutar un trabajo con Amazon Braket Hybrid Jobs.

PennyLanede simuladores de relámpagos

Puede utilizar los simuladores PennyLane de relámpagos como simuladores integrados en Braket. Con PennyLane los simuladores de relámpagos, puede aprovechar los métodos avanzados de cálculo de gradientes, como la diferenciación de conjuntos, para evaluar los gradientes más rápidamente. El simulador lightning.qubit está disponible como dispositivo a través de Braket NBIs y como simulador integrado, mientras que el simulador lightning.gpu debe ejecutarse como un simulador integrado con una instancia de GPU. Consulte los simuladores integrados del cuaderno Braket Jobs para ver un ejemplo del uso de lightning.gpu.

Comparación de los simuladores

Esta sección le ayuda a seleccionar elAmazon simulador de frenos que mejor se adapte a su tarea, 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, que se utiliza para ejecutar el simulador. Los simuladores bajo demanda se ejecutan en laAWS nube y están diseñados para escalar 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 o lote de tareas. Esto puede implicar una compensación si se trata de muchas tareas. Teniendo en cuenta 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 18qubits, utilice un simulador local.

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

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

Para simulaciones de ruido:

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

  • Cuando emplee de 9 a 12qubits, elija un simulador en función de la carga de trabajo.

  • Cuando emplee más de 12qubits, utiliceDM1.

¿Qué es un simulador vectorial de estados?

SV1es un simulador vectorial de estados universal. Almacena la función de onda completa del estado cuántico y aplica secuencialmente las operaciones de puerta al estado. Almacena todas las posibilidades, incluso las más improbables. El tiempo de ejecución delSV1 simulador para una tarea aumenta linealmente con el número de puertas del circuito.

¿Qué es un simulador de matrices de densidad?

DM1simula circuitos cuánticos con ruido. Almacena la matriz de densidad completa del sistema y aplica secuencialmente las puertas 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 dequbits.

¿Qué es un simulador de redes tensoriales?

TN1codifica los circuitos cuánticos en un gráfico estructurado.

  • Los nodos del gráfico constan de puertas cuánticas, oqubits.

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

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

TN1requiere 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 se le ocurre una forma de recorrer el gráfico de manera eficiente, lo que implica visitar todos los nodos para obtener la medida que desea. Como cliente, usted no ve esta fase porqueTN1 realiza ambas fases a la vez por usted. Completa la primera fase y determina si debe realizar la segunda fase por sí sola en función de las restricciones prácticas. Usted no participa en esa decisión una vez iniciada la simulació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 realiza primero para encontrar las rutas de cálculo más eficaces en el gráfico. Una vez que encuentre la trayectoria de contracción durante la fase de ensayo,TN1 contrae las compuertas del circuito para producir los resultados de la simulación.

TN1los gráficos son análogos a un mapa

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

SiTN1 no realizaras la fase de ensayo, sería como pasear por las calles de la ciudad para encontrar tu destino, en lugar de mirar primero un mapa. Realmente puede valer la pena en términos de tiempo de caminata para dedicar más tiempo a mirar el mapa. Del mismo modo, la fase de ensayo proporciona información valiosa.

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

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

SV1es adecuado para cualquier clase de problemas que se basen principalmente en tener un cierto número de puertasqubits y. En general, el tiempo requerido crece linealmente con el número de puertas, mientras que no depende del número deshots. SV1es generalmente más rápido queTN1 para circuitos de menos de 28qubits.

SV1puede ser más lento paraqubit números más altos porque en realidad simula todas las posibilidades, incluso las extremadamente improbables. No tiene forma de determinar qué resultados son probables. Por lo tanto, para una30-qubit evaluación,SV1 debe calcular 2^30 configuraciones. El límite de 34qubits para elSV1 simuladorAmazon Braket es una restricción práctica debido a las limitaciones de memoria y almacenamiento. Puedes pensarlo así: cada vez que agregas unqubit aSV1, el problema se vuelve dos veces más difícil.

Para muchas clases de problemas,TN1 puede evaluar circuitos mucho más grandes en un tiempo realista queSV1 porqueTN1 aprovecha la estructura del gráfico. Básicamente, sigue la evolución de las soluciones desde su punto de partida y solo conserva las configuraciones que contribuyen a un recorrido eficiente. Dicho de otra manera, guarda las configuraciones para crear un orden de multiplicación de matrices que resulta en un proceso de evaluación más simple.

TN1Pues el número de puertasqubits y importa, pero la estructura del gráfico es mucho más importante. Por ejemplo,TN1 es muy bueno para evaluar circuitos (gráficos) en los que las puertas son de corto alcance (es decir, cada unaqubit está conectada por puertas solo a su vecina más cercanaqubits) y circuitos (gráficos) en los que las conexiones (o puertas) tienen un alcance similar. Un rango típico paraTN1 es que cada unoqubit hable solo con otrosqubits que estén a 5 dequbits distancia. 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 deTN1

TN1puede ser más lento que enSV1 función de la complejidad estructural del gráfico. Para ciertos gráficos,TN1 termina la simulación después de 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 demasiado difícil encontrar una buena ruta de recorrido y el simulador abandona el cálculo. TN1no puede realizar la contracción. Podría ver 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 se puede encontrar una trayectoria transversal, pero su evaluación es muy larga y lleva mucho tiempo. En este caso, la contracción es tan cara que el costo sería prohibitivo y, enTN1 cambio, finaliza después de la fase de ensayo. Podría ver un mensaje de error similar a este:Predicted runtime based on best contraction path found exceeds TN1 limit.

nota

Se le factura por la etapa de ensayoTN1 incluso si no se realiza la contracción y ve unFAILED estado.

El tiempo de ejecución previsto también depende delshot recuento. En el peor de los casos, el tiempo deTN1 contracción depende linealmente delshot recuento. El circuito puede contraerse con menosshots. Por ejemplo, puedes enviar una tarea con 100shots, lo queTN1 determina que no se puede contratar, pero si la vuelves a enviar solo con 10, la contracción continúa. En esta situación, para obtener 100 muestras, puede enviar 10 tareas de 10shots para el mismo circuito y, al final, combinar los resultados.

Como práctica recomendada, le recomendamos que siempre pruebe su circuito o clase de circuito con unos pocosshots (por ejemplo, 10) para averiguar qué tan difícil es su circuitoTN1, antes de continuar con un número mayor deshots.

nota

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

Concurrency (Simultaneidad)

Todos los simuladores Braket permiten ejecutar varios circuitos simultáneamente. Los límites de concurrencia varían según el simulador y la región. Para obtener más información sobre los límites de concurrencia, consulte la página Cuotas.