Confronta i simulatori - Amazon Braket

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Confronta i simulatori

Questa sezione ti aiuta a selezionare il simulatore Amazon Braket più adatto al tuo compito quantistico, descrivendo alcuni concetti, limitazioni e casi d'uso.

Scelta tra simulatori locali e simulatori on-demand (SV1, TN1, DM1)

Le prestazioni dei simulatori locali dipendono dall'hardware che ospita l'ambiente locale, ad esempio un'istanza del notebook Braket, utilizzata per eseguire il simulatore. I simulatori su richiesta vengono eseguiti in AWS cloud e sono progettati per scalare oltre i tipici ambienti locali. I simulatori on-demand sono ottimizzati per circuiti più grandi, ma aggiungono un sovraccarico di latenza per attività quantistiche o batch di attività quantistiche. Ciò può comportare un compromesso se sono coinvolte molte attività quantistiche. Date queste caratteristiche prestazionali generali, le seguenti linee guida possono aiutarvi a scegliere come eseguire le simulazioni, comprese quelle con rumore.

Per le simulazioni:

  • Quando si impiegano meno di 18 qubits, usa un simulatore locale.

  • Quando si impiegano 18-24 anni qubits, scegli un simulatore in base al carico di lavoro.

  • Quando ne impiegano più di 24 qubits, usa un simulatore su richiesta.

Per le simulazioni del rumore:

  • Quando si impiegano meno di 9 qubits, usa un simulatore locale.

  • Quando si impiegano 9-12 qubits, scegli un simulatore in base al carico di lavoro.

  • Quando ne impiegano più di 12 qubits, usa DM1.

Cos'è un simulatore vettoriale di stato?

SV1 è un simulatore vettoriale di stato universale. Memorizza la funzione d'onda completa dello stato quantistico e applica in sequenza le operazioni di gate allo stato. Memorizza tutte le possibilità, anche quelle estremamente improbabili. Il SV1 il tempo di esecuzione del simulatore per un compito quantistico aumenta linearmente con il numero di porte nel circuito.

Cos'è un simulatore di matrici di densità?

DM1 simula circuiti quantistici con rumore. Memorizza la matrice a piena densità del sistema e applica in sequenza le porte e le operazioni di rumorosità del circuito. La matrice di densità finale contiene informazioni complete sullo stato quantistico dopo il funzionamento del circuito. Il runtime generalmente scala linearmente con il numero di operazioni e in modo esponenziale con il numero di qubits.

Cos'è un simulatore di rete tensoriale?

TN1 codifica i circuiti quantistici in un grafo strutturato.

  • I nodi del grafo sono costituiti da porte quantistiche, oppure qubits.

  • I bordi del grafico rappresentano le connessioni tra le porte.

Come risultato di questa struttura, TN1 può trovare soluzioni simulate per circuiti quantistici relativamente grandi e complessi.

TN1 richiede due fasi

In genere, TN1 opera secondo un approccio in due fasi alla simulazione del calcolo quantistico.

  • La fase di prova: in questa fase, TN1 trova un modo per attraversare il grafico in modo efficiente, che prevede la visita di ogni nodo in modo da poter ottenere la misurazione desiderata. Come cliente, non vedi questa fase perché TN1 esegue entrambe le fasi insieme per te. Completa la prima fase e determina se eseguire la seconda fase da solo in base a vincoli pratici. Una volta iniziata la simulazione, non avete alcun contributo in merito a tale decisione.

  • La fase di contrazione: questa fase è analoga alla fase di esecuzione di un calcolo in un computer classico. La fase consiste in una serie di moltiplicazioni matriciali. L'ordine di queste moltiplicazioni ha un grande effetto sulla difficoltà del calcolo. Pertanto, la fase di prova viene prima completata per trovare i percorsi di calcolo più efficaci sul grafico. Dopo aver trovato il percorso di contrazione durante la fase di prova, TN1 unisce le porte del circuito per produrre i risultati della simulazione.

TN1 i grafici sono analoghi a una mappa

Metaforicamente, puoi confrontare il sottostante TN1 grafico delle strade di una città. In una città con una griglia pianificata, è facile trovare un percorso verso la destinazione utilizzando una mappa. In una città con strade non pianificate, nomi di strade duplicati e così via, può essere difficile trovare un percorso verso la destinazione guardando una mappa.

Se TN1 non hai eseguito la fase di prova, sarebbe come camminare per le strade della città per trovare la tua destinazione, invece di guardare prima una mappa. Passare più tempo a guardare la mappa può davvero ripagare in termini di tempo a piedi. Allo stesso modo, la fase di prova fornisce informazioni preziose.

Si potrebbe dire che TN1 ha una certa «consapevolezza» della struttura del circuito sottostante che attraversa. Acquisisce questa consapevolezza durante la fase di prova.

Tipi di problemi più adatti a ciascuno di questi tipi di simulatori

SV1 è adatto a qualsiasi classe di problemi che si basano principalmente sull'avere un certo numero di qubits e cancelli. In genere, il tempo necessario cresce linearmente con il numero di porte, mentre non dipende dal numero di shots. SV1 è generalmente più veloce di TN1 per circuiti inferiori a 28 qubits.

SV1 può essere più lento se è più alto qubit numeri perché simula effettivamente tutte le possibilità, anche quelle estremamente improbabili. Non ha modo di determinare quali risultati siano probabili. Quindi, per un 30-qubit valutazione, SV1 deve calcolare 2^30 configurazioni. Il limite di 34 qubits per il Amazon Braket SV1 il simulatore è un vincolo pratico dovuto alle limitazioni di memoria e archiviazione. Puoi pensarlo in questo modo: ogni volta che aggiungi un qubit in SV1, il problema diventa due volte più difficile.

Per molte classi di problemi, TN1 può valutare circuiti molto più grandi in tempi realistici rispetto a SV1 perché TN1 sfrutta la struttura del grafico. Tiene essenzialmente traccia dell'evoluzione delle soluzioni dal punto di partenza e conserva solo le configurazioni che contribuiscono a un'attraversamento efficiente. In altre parole, salva le configurazioni per creare un ordinamento di moltiplicazione delle matrici che si traduce in un processo di valutazione più semplice.

In TN1, il numero di qubits e le porte sono importanti, ma la struttura del grafico conta molto di più. Ad esempio, TN1 è molto bravo a valutare circuiti (grafici) in cui le porte sono a corto raggio (cioè ciascuna qubit è collegato tramite cancelli solo al vicino più prossimo qubits) e circuiti (grafici) in cui le connessioni (o porte) hanno un intervallo simile. Un intervallo tipico per TN1 sta avendo ciascuno qubit parla solo con gli altri qubits sono 5 qubits lontano. Se la maggior parte della struttura può essere scomposta in relazioni più semplici come queste, che possono essere rappresentate in matrici più, più piccole o più uniformi, TN1 esegue la valutazione con facilità.

Limitazioni di TN1

TN1 può essere più lento di SV1 a seconda della complessità strutturale del grafico. Per alcuni grafici, TN1 termina la simulazione dopo la fase di prova e mostra uno stato diFAILED, per uno dei due motivi seguenti:

  • Impossibile trovare un percorso: se il grafico è troppo complesso, è troppo difficile trovare un buon percorso trasversale e il simulatore rinuncia al calcolo. TN1 non può eseguire la contrazione. È possibile che venga visualizzato un messaggio di errore simile a questo: No viable contraction path found.

  • La fase di contrazione è troppo difficile: in alcuni grafici, TN1 può trovare un percorso trasversale, ma la valutazione è molto lunga e richiede molto tempo. In questo caso, la contrazione è così costosa che il costo sarebbe proibitivo e invece TN1 esce dopo la fase di prova. È possibile che venga visualizzato un messaggio di errore simile a questo: Predicted runtime based on best contraction path found exceeds TN1 limit.

Nota

Ti verrà addebitato il costo della fase di prova di TN1 anche se la contrazione non viene eseguita e viene visualizzato uno stato. FAILED

Il tempo di esecuzione previsto dipende anche dal shot contare. Nel peggiore dei casi, TN1 il tempo di contrazione dipende linearmente dal shot contare. Il circuito può essere contrattabile con meno shots. Ad esempio, potresti inviare un compito quantistico con 100 shots, quale TN1 decide non è contrattabile, ma se lo invii nuovamente con solo 10, la contrazione procede. In questa situazione, per ottenere 100 campioni, è possibile inviare 10 compiti quantistici su 10 shots per lo stesso circuito e alla fine combina i risultati.

Come buona pratica, ti consigliamo di testare sempre il tuo circuito o la tua classe di circuito con alcuni shots (ad esempio, 10) per scoprire la resistenza del circuito TN1, prima di procedere con un numero maggiore di shots.

Nota

La serie di moltiplicazioni che forma la fase di contrazione inizia con piccole matrici NxN. Ad esempio, un 2-qubit gate richiede una matrice 4x4. Le matrici intermedie necessarie durante una contrazione giudicata troppo difficile sono gigantesche. Un calcolo di questo tipo richiederebbe giorni per essere completato. Ecco perché Amazon Braket non tenta contrazioni estremamente complesse.

Concurrency (Simultaneità)

Tutti i simulatori Braket offrono la possibilità di eseguire più circuiti contemporaneamente. I limiti di concorrenza variano in base al simulatore e alla regione. Per ulteriori informazioni sui limiti di concorrenza, consulta la pagina Quote.