MonarQ

From Alliance Doc
(Redirected from Monarq)
Jump to navigation Jump to search
This page contains changes which are not marked for translation.
Other languages:


Disponibilité : Hiver 2025
Nœud de connexion : monarq.calculquebec.ca

MonarQ est un ordinateur quantique supraconducteur à 24 qubits développé à Montréal par Anyon Systèmes et situé à l'École de technologie supérieure. Son nom est inspiré par la forme du circuit de qubits sur le processeur quantique et du papillon monarque, symbole d’évolution et de migration. La majuscule Q rappelle la nature quantique de l’ordinateur et son origine québécoise. L'acquisition de MonarQ a été rendue possible grâce au soutien du ministère de l'Économie, de l'Innovation et de l'Énergie du Québec (MEIE) et de Développement Économique Canada (DEC).

Spécifications techniques

Cartographie des qubits de MonarQ

Les détails techniques exacts seront disponibles au début de 2025, mais les spécifications devraient être au moins aussi bonnes que les suivantes :

  • Processeur quantique de 24 qubits
  • Porte à un qubit : 99.8% fidélité, durée de porte: 32ns
  • Porte à un qubit, en parallèle : 99.7% fidélité, durée de porte: 32ns
  • Porte à deux qubits : 95.6% fidélité, durée de porte: 90ns
  • Temps de cohérence : 4-10μs en fonction de l'état

Le nombre exact de qubits pouvant être connectés et manipulés en même temps, ainsi que les fidélités, durées de porte et temps de cohérence correspondants seront disponibles une fois que MonarQ sera testé par notre équipe. Nous aurons également des résultats sur la façon dont il fonctionne et performe avec divers algorithmes.

Premiers pas sur MonarQ

Pré-requis: Assurez-vous d’avoir un accès à MonarQ et vos identifiants de connexion (username, API token). Pour toutes questions, contactez quantique@calculquebec.ca.

  • Étape 1: Connectez-vous à Narval
    • MonarQ est uniquement accessible depuis Narval. L’accès à la grappe de calcul se fait à partir du noeud de connexion narval.alliancecan.ca
    • Pour de l’aide concernant la connexion à Narval.
  • Étape 2: Créez l’environnement
    • Créez un environnement virtuel Python (3.11 ou ultérieur) pour utiliser PennyLane et le plugin pennylane_calculquebec. Ces derniers sont déjà installés sur Narval, vous aurez uniquement à importer les bibliothèques logicielles que vous souhaitez.
[name@server ~]$ module load python/3.11
[name@server ~]$ virtualenv --no-download --clear ~/ENV && source ~/ENV/bin/activate
[name@server ~]$ pip install --no-index --upgrade pip
[name@server ~]$ python -c "import pennylane; import pennylane_calculquebec"
  • Étape 3: Configurez vos identifiants sur MonarQ et définissez MonarQ comme machine (device)
    • Ouvrez maintenant un fichier Python .py et importez les dépendances nécessaires soit PennyLane et MonarqClient dans l’exemple ci-dessous
    • Créez un client avec vos identifiants. Votre jeton est disponible à partir du portail Thunderhead. Le host est monarq.calculquebec.ca
    • Créez un device PennyLane avec votre client. Vous pouvez également mentionner le nombre de qubits (wires) à utiliser et le nombre de shots
    • Pour de l’aide consultez la documentation du plugin [ https://github.com/calculquebec/pennylane-calculquebec/blob/main/doc/getting_started.ipynb pennylane_calculquebec]
Fichier : my_circuit.py

import pennylane as qml
from pennylane_calculquebec.API.client import MonarqClient

my_client = MonarqClient("monarq.calculquebec.ca", "your username", "your access token", "your project")

dev = qml.device("monarq.default", client = my_client, wires = 3, shots = 1000)


  • Étape 4: Créez votre circuit
    • Dans le même fichier Python vous pouvez maintenant coder votre circuit quantique
Fichier : my_circuit.py

@qml.qnode(dev)

def bell_circuit():
    qml.Hadamard(wires=0)
    qml.CNOT(wires=[0, 1]) 
    qml.CNOT(wires=[1, 2])
 
    return qml.counts()

result = bell_circuit()
print(result)


  • Étape 5: Exécutez votre circuit depuis l'ordonnanceur
    • La commande sbatch est utilisée pour soumettre une tâche sbatch:
$ sbatch simple_job.sh
Submitted batch job 123456

Avec un script Slurm (simple_job.sh) ressemblant à ceci:

File : simple_job.sh

#!/bin/bash
#SBATCH --time=00:15:00
#SBATCH --account=def-someuser # Votre username
#SBATCH --cpus-per-task=1      # Modifiez s'il y a lieu
#SBATCH --mem-per-cpu=1G 	  # Modifiez s'il y a lieu
python my_circuit.py


  • Le résultat du circuit est écrit dans un fichier dont le nom commence par slurm-, suivi de l'ID de la tâche et du suffixe .out, par exemple slurm-123456.out
  • On retrouve dans ce fichier le résultat de notre circuit dans un dictionnaire {'000': 496, '001': 0, '010': 0, '011': 0, '100': 0, '101': 0, '110': 0, '111': 504}
  • Pour plus d’information sur comment soumettre des tâches sur Narval, voir Exécuter des tâches

Applications

MonarQ est adapté aux calculs nécessitant de petites quantités de qubits de haute fidélité, ce qui en fait un outil idéal pour le développement et le test d'algorithmes quantiques. D'autres applications possibles incluent la modélisation de petits systèmes quantiques, les tests de nouvelles méthodes et techniques de programmation quantique et de correction d'erreurs, et plus généralement, la recherche fondamentale en informatique quantique.

Logiciels de calcul quantique

Il existe plusieurs bibliothèques logicielles spécialisées pour faire du calcul quantique et pour développer des algorithmes quantiques. Ces bibliothèques permettent de construire des circuits qui sont exécutés sur des simulateurs qui imitent la performance et les résultats obtenus sur un ordinateur quantique tel que MonarQ. Elles peuvent être utilisées sur toutes les grappes de l’Alliance.

  • PennyLane, bibliothèque de commandes en Python
  • Snowflurry, bibliothèque de commandes en Julia
  • Qiskit, bibliothèque de commandes en Python

Les portes logiques quantiques du processeur de MonarQ sont appelées par le biais d'une bibliothèque logicielle Snowflurry, écrit en Julia. Bien que MonarQ soit nativement compatible avec Snowflurry, il existe un plugiciel PennyLane-CalculQuébec développé par Calcul Québec permettant d'exécuter des circuits sur MonarQ tout en bénéficiant des fonctionnalités et de l'environnement de développement offerts par PennyLane.

Outils

Comment démarrer avec MonarQ

  1. Vous devez avoir un compte avec l'Alliance afin de demander l'accès à MonarQ (à l'hiver 2025).
  2. Acceptez les conditions d'utilisation
  3. Configurez la tarification.
  4. Recevez un jeton et un accès à MonarQ.
  5. Soumettez vos tâches avec un jeton d'accès et une adresse de passerelle à MonarQ


Soutien technique

Pour des questions sur nos services quantiques, contactez-nous à quantique@calculquebec.ca.