Configuration locale#
Une fois que vous avez installé Qiskit et qu’il fonctionne, il y a quelques étapes optionnelles de configuration que vous pouvez effectuer pour modifier le comportement par défaut de Qiskit afin de l’adapter à votre profil d’utilisation spécifique.
Fichier de configuration utilisateur#
L’emplacement principal de la configuration locale de Qiskit est le fichier de configuration de l’utilisateur. Il s’agit d’un fichier de format ini <https://en.wikipedia.org/wiki/INI_file> __ qui peut être utilisé pour modifier les valeurs par défaut de Qiskit.
Par exemple :
[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
By default this file lives in ~/.qiskit/settings.conf
but the path used
can be overridden with the QISKIT_SETTINGS
environment variable. If
QISKIT_SETTINGS
is set its value will used as the path to the user config
file.
Options disponibles :
circuit_drawer
: Ceci est utilisé pour modifier le système par défaut pour le dessin des circuitsqiskit.circuit.QuantumCircuit.draw()
etqiskit.visualization.circuit_drawer()
. Il peut être défini surlatex
,mpl
,text
oulatex_source
et lorsque l’argument de mot clefouptut
n’est pas explicitement défini ce style de dessin sera utilisé.
circuit_mpl_style
: Il s’agit du style par défaut utilisé pour la sortie de typempl
pour le dessin de circuitqiskit.circuit.QuantumCircuit.draw()
etqiskit.visualization.circuit_drawer()
. Il peut être défini surdefault
oubw
.
circuit_mpl_style_path
: Ceci peut être utilisé pour définir le(s) chemin(s) où le visualiseur de circuits,qiskit.circuit.QuantumCircuit.draw()
ouqiskit.visualization.circuit_drawer()
, ira chercher des feuilles de style au format json lorsque le mode de sortiempl
est utilisé.
state_drawer
: Ceci est utilisé pour changer le backend par défaut pour les méthodes de visualisation d’état quantiqueqiskit.quantum_info.Statevector.draw()
etqiskit.quantum_info.DensityMatrix.draw()
. Il peut ĂŞtre dĂ©fini Ărepr
,text
,latex
,latex_source
,qsphere
,hinton
, oubloch
et quand l’argumentoutput
n’est pas explicitement défini surdraw()
, la méthode de sortie choisie sera utilisée.
transpile_optimization_level
: admet une valeur entière comprise entre 0 et 3 et est utilisé pour modifier le niveau d’optimisation par défaut pourtranspile()
etexecute()
.
parallel
: This option takes a boolean value (eitherTrue
orFalse
) and is used to configure whether Python multiprocessing is enabled for operations that support running in parallel (for example transpilation of multipleQuantumCircuit
objects). The default setting in the user config file can be overridden by theQISKIT_PARALLEL
environment variable.
num_processes
: This option takes an integer value (> 0) that is used to specify the maximum number of parallel processes to launch for parallel operations if parallel execution is enabled. The default setting in the user config file can be overridden by theQISKIT_NUM_PROCS
environment variable.
Variables d’environnement#
Il y a aussi quelques variables d’environnement qui peuvent être définies pour modifier le comportement par défaut de Qiskit.
QISKIT_PARALLEL
: if this variable is set toTRUE
it will enable the use of Python multiprocessing to parallelize certain operations (for example transpilation over multiple circuits) in Qiskit.
QISKIT_NUM_PROCS
: Spécifie le nombre maximum de processus parallèles à lancer pour les opérations parallèles si l’exécution parallèle est activée. Prend un entier > 0 comme valeur attendue.
RAYON_NUM_THREADS
: Specifies the number of threads to run multithreaded operations in Qiskit. By default this multithreaded code will launch a thread for each logical CPU, if you’d like to adjust the number of threads Qiskit will use you can set this to an integer value. For example, settingRAYON_NUM_THREADS=4
will only launch 4 threads for multithreaded functions.
QISKIT_FORCE_THREADS `` : Indique que le code à unités d'exécution multiples doit toujours être exécuté dans plusieurs unités d'exécution. Par défaut, si vous exécutez du code à unités d'exécution multiples dans une section de Qiskit qui est déjà en cours d'exécution dans des processus parallèles, Qiskit ne lancera pas plusieurs unités d'exécution et exécutera cette fonction en série. Cela permet d'éviter de surcharger les ressources CPU limitées. Toutefois, si vous souhaitez forcer l'utilisation de plusieurs unités d'exécution, même si dans un contexte multiprocessus, vous pouvez définir ``QISKIT_FORCE_THREADS = TRUE
pour le faire.