Charakteristika kvantových počítačů

Výkon kvantového počítače se měří v qubitech, což je základní jednotka měření v kvantovém počítači. Zdroj.

Facepalm pokaždé, když čtu takovou frázi. To nevedlo k ničemu dobrému, moje vize začala mizet; Brzy se budu muset obrátit na Meklona.

Myslím, že je čas trochu systematizovat základní parametry kvantového počítače. Je jich několik:

  1. Počet qubitů
  2. Doba trvání koherence (doba dekoherence)
  3. Úroveň chyb
  4. Architektura procesoru
  5. Cena, dostupnost, podmínky údržby, doba amortizace, programovací nástroje atd.

Počet qubitů

Vše je zde zřejmé, čím více, tím lépe. Ve skutečnosti musíte za qubity platit a v ideálním případě si musíte koupit přesně tolik qubitů, kolik je potřeba ke splnění úkolu. Pro vývojáře exkluzivních automatů stačí jeden qubit na automat (pro generování náhodnosti). Pro „hrubou sílu“ RSA-2048 - alespoň 2048 qubitů.

Nejvíce propagované kvantové algoritmy jsou pojmenované po Groverovi a Shorovi. Grover vám umožňuje „hackovat“ hashe. Ke zhroucení bitcoinu potřebujete počítače s alespoň 256 qubity na palubě (můžete si pohrát se složitostí bitcoinu, ale zůstaňme u tohoto kulatého čísla). Shor umožňuje rozklad čísel. Chcete-li vynásobit počet n binárních číslic, potřebujete alespoň n qubitů.

Aktuální maximum: 50 qubitů (už 72?). A ve skutečnosti je limit 50 qubitů. Hranice kvantové počítačové simulace. Teoreticky můžeme na klasických počítačích simulovat libovolný počet qubitů. V praxi přidání jednoho qubitu do simulace vyžaduje zdvojnásobení klasických počítačů. Přidejte k tomu zvěsti o zdvojnásobení qubitů každý rok a položte si otázku: jak ladit algoritmy pro 25651210242048 qubitů? Neexistuje žádný simulátor, nemůžete nastavit bod přerušení na kvantovém procesoru.

Doba trvání koherence (doba dekoherence)

Soudržnost a soudržnost nejsou totéž. Rád přirovnávám koherenci k regeneraci pracovní paměti. Na proužku RAM jsou miliardy buněk, každá s nábojem, nula nebo jedna. Tato nálož má velmi zajímavou vlastnost – odvádí se. Z původní "jednotkové" buňky se stane buňka 0.99, poté buňka 0.98 a tak dále. V souladu s tím je 0.01, 0.02, 0.03 akumulováno na nule... Tento náboj se musí obnovit, „regenerovat“. Vše, co je menší než polovina, se vynuluje, vše ostatní se stlačí na jedničku.

Kvantové procesory nelze regenerovat. V souladu s tím existuje jeden cyklus pro všechny výpočty, až do prvního „uniklého“ qubitu. Doba před prvním „kapáním“ se nazývá doba dekoherence. Koherence je stav, kdy qubity ještě „neunikly“. Zde Můžete se podívat na trochu více dospělých vysvětlení.

Dekoherence souvisí s počtem qubitů: čím více qubitů, tím obtížnější je udržet koherenci. Na druhou stranu, pokud máte velké množství qubitů, můžete některé z nich použít k opravě chyb spojených s dekoherencí. Odtud následuježe počet qubitů sám o sobě nic neřeší. Můžete zdvojnásobit počet qubitů a 90 % z nich utratit za opravu dekoherence.

Zde vstupuje do hry koncept logického qubitu. Zhruba řečeno, pokud máte procesor se 100 qubity, ale 40 z nich je zaměřeno na opravu dekoherence, zbývá vám 60 logických qubitů. Ty, na kterých spouštíte svůj algoritmus. Koncept logických qubitů je nyní spíše teoretický, o praktických implementacích jsem osobně neslyšel.

Chyby a jejich oprava

Další metla kvantových procesorů. Pokud invertujete qubit, existuje 2% šance, že operace selže. Pokud zapletete 2 qubity, bude chybovost až 8 %. Vezměte 256bitové číslo, hashujte ho na SHA-256, spočítejte počet operací, vypočítejte pravděpodobnost provedení VŠECH těchto operací bez chyby.

Matematici nabízejí řešení: opravu chyb. Existují algoritmy. Implementace jednoho zapletení 2 logických qubitů vyžaduje 100.000 XNUMX fyzických qubitů. Nebude to dlouho trvat a přijde konec.

Architektura procesoru

Přísně vzato, neexistují žádné kvantové počítače. Existují pouze kvantové procesory. Proč potřebujete RAM, když doba práce je omezena na milisekundy? Programuji v Q#, ale je to jazyk na vysoké úrovni. Přidělte si 15 qubitů a dělejte si s nimi, co chcete. Chtěl, zapletl první qubit s desátým. Požadovaný - zmatený prvních šest.

Na skutečném procesoru taková svoboda neexistuje. Požádal jsem o zapletení prvního qubitu s 15 - kompilátor vygeneruje 26 dalších operací. Pokud budete mít štěstí. Když budete mít smůlu, vygeneruje to stovku. Faktem je, že qubit se může zaplést pouze se svými sousedy. Neviděl jsem více než 6 sousedů na qubit. V zásadě existují kompilátory, které optimalizují kvantové programy, ale stále jsou spíše teoretické.

Každý procesor má jinou sadu instrukcí a spojení mezi qubity jsou různá. V ideálním světě máme libovolné Rx, Ry, Rz a jejich kombinace plus volné zapletení založené na desítce funkcí a navíc Swap: podívejte se na operátory v výstřednost. Ve skutečnosti máme několik párů qubitů a zapletení CNOT (q[0], q[1]) stojí jednu operaci a CNOT(q[1], q[0]) trvá 7. A koherence taje... .

Cena, dostupnost, podmínky údržby, doba amortizace, programovací nástroje...

Ceny nejsou inzerovány, dostupnost pro běžného občana se blíží nule, doba odpisů není v praxi počítána, programovací nástroje jsou teprve v plenkách. Dokumentace na arxiv.org.

Jaké informace tedy požadujete od odborníků při vydání nového kvantového počítače?

Kromě výše uvedeného seznamu se mi líbí možnosti z PerlPower и Alter2:

Kdyby tak každý článek o novém kvantovém počítači začínal dvěma charakteristikami – kvantitou simultánní zapletené qubity a doba uchování qubitů.

Nebo ještě lépe – od času, který zabere spuštění jednoduchého benchmarku, například nalezení prvočinitelů čísla 91.

Zdroj: www.habr.com

Přidat komentář