Lokální konfigurace Qiskit SDK
Po instalaci a spuštění Qiskit SDK můžeš provést několik volitelných kroků, kterými změníš výchozí chování Qiskitu.
Konfigurační soubor uživatele
Hlavním místem pro lokální konfiguraci Qiskitu je uživatelský konfigurační soubor. Jde o soubor ve formátu .ini, který slouží ke změně výchozích nastavení Qiskitu.
Příklad:
[default]
circuit_drawer = mpl
circuit_mpl_style = default
circuit_mpl_style_path = ~:~/.qiskit
state_drawer = hinton
transpile_optimization_level = 3
parallel = False
num_processes = 15
Ve výchozím nastavení se tento soubor nachází na ~/.qiskit/settings.conf, ale cestu lze přepsat pomocí proměnné prostředí QISKIT_SETTINGS.
Dostupné volby
circuit_drawer: Změní výchozí systém pro kreslení Circuit. Lze nastavit nalatex,mpl,textnebolatex_source. Pokud není kwarg output explicitně zadán, použije se tento systém.circuit_mpl_style: Výchozí styl použitý pro výstupní systém mpl v kreslení Circuit. Platné hodnoty jsoudefaultnebobw.circuit_mpl_style_path: Cesty, kde má vyhledávat kreslení Circuit soubory stylů JSON při použití výstupního režimu mpl.state_drawer: Slouží ke změně výchozího systému pro metody vizualizace stavu. Platné hodnoty jsourepr,text,latex,latex_source,qsphere,hintonnebobloch. Pokud není kwarg output explicitně zadán u metody qiskit.quantum_info.DensityMatrix.draw, použije se zadaný výstupní způsob.transpile_optimization_level: Změna výchozí úrovně optimalizace pro qiskit.compiler.transpile. Zadej celé číslo 0–3.parallel: Určuje, zda je pro operace podporující paralelní běh povoleno multiprocessing v Pythonu. Například transpilace více objektů qiskit.circuit.QuantumCircuit. Toto nastavení lze přepsat proměnnou prostředíQISKIT_PARALLEL. Zadej boolean hodnotu.num_processes: Maximální počet paralelních procesů spuštěných pro paralelní operace, pokud je paralelní provádění povoleno. Toto nastavení lze přepsat proměnnou prostředíQISKIT_NUM_PROCS. Zadej celé číslo větší než0.
poznámka
- Nastavení kreslení Circuit platí pro qiskit.circuit.QuantumCircuit.draw a qiskit.visualization.circuit_drawer.
- Metody pro vizualizaci stavu jsou qiskit.quantum_info.Statevector.draw a qiskit.quantum_info.DensityMatrix.draw.
Proměnné prostředí
Nastav tyto proměnné prostředí, abys změnil(a) výchozí chování Qiskitu:
QISKIT_PARALLEL: Povolí multiprocessing v Pythonu pro paralelizaci určitých operací, například transpilace přes více Circuit v Qiskitu. Zadej boolean hodnotu.QISKIT_NUM_PROCS: Maximální počet paralelních procesů spuštěných pro paralelní operace, pokud je paralelní provádění povoleno. Zadej celé číslo větší než nula.RAYON_NUM_THREADS: Počet vláken pro vícevláknové operace v Qiskitu. Ve výchozím nastavení spustí vícevláknový kód jedno vlákno pro každé logické CPU. Chceš-li upravit počet vláken, která Qiskit používá, nastav tuto hodnotu na celé číslo. Například nastavení RAYON_NUM_THREADS=4 spustí čtyři vlákna pro vícevláknové funkce.QISKIT_FORCE_THREADS: Určuje, že vícevláknový kód má vždy běžet ve více vláknech. Ve výchozím nastavení platí, že pokud spouštíš vícevláknový kód v části Qiskitu, která již běží v paralelních procesech, Qiskit nespustí více vláken, ale místo toho tuto funkci provede sériově. Tím se zabrání potenciálnímu přetížení omezených prostředků CPU. Pokud však chceš vynutit použití více vláken i v multiprocessovém kontextu, nastavQISKIT_FORCE_THREADS=TRUE.QISKIT_SABRE_ALL_THREADS: Řídí chování průchodu rozložení a směrování v přednastavené správě průchodů Qiskitu. Pokud je nastaveno na1neboTRUE, použijí se všechna dostupná CPU pro spuštění více náhodných pokusů. To může zlepšit kvalitu výsledků, zejména u systémů s více než 20 CPU/jádry; nevýhodou však je, že výsledky nejsou reprodukovatelné při spuštění na jiném lokálním hardwaru.
Další kroky
Doporučení
- Vyzkoušej si tutoriál, například Groverův algoritmus.
- Spusť program Hello world.
- Přečti si pokyny pro přispívání, pokud chceš přispět do open-source Qiskit SDK.