From d5ca2316a342ce191e172f7074a2e5e558321e8c Mon Sep 17 00:00:00 2001 From: Frank Harkins Date: Wed, 22 Nov 2023 11:03:43 +0000 Subject: [PATCH] Add transpiler plugins section to web page (#594) ### Summary This PR adds a transpiler plugins section to the web page. --- ecosystem/html_templates/webpage.html.jinja | 38 +- ecosystem/manager.py | 2 + ecosystem/resources/members/dsm-swap.toml | 4 +- ecosystem/resources/members/mirror-gates.toml | 4 +- .../resources/members/qiskit-bip-mapper.toml | 4 +- .../resources/members/qiskit-qubit-reuse.toml | 4 +- ecosystem/resources/members/qiskit-toqm.toml | 4 +- website/index.html | 421 ++++++++++-------- 8 files changed, 271 insertions(+), 210 deletions(-) diff --git a/ecosystem/html_templates/webpage.html.jinja b/ecosystem/html_templates/webpage.html.jinja index 979f014b1b..26386aa3d1 100644 --- a/ecosystem/html_templates/webpage.html.jinja +++ b/ecosystem/html_templates/webpage.html.jinja @@ -75,6 +75,38 @@
+

+ + + + Transpiler plugins +

+

+ Use these projects to compile and optimize your quantum circuits. +

+
{{section_transpiler_plugin_cards}}
+

-
{{section_provider_cards}}
+
{{section_provider_cards}}

-
+
{{section_applications_cards}}
@@ -171,7 +203,7 @@ Additional projects

Cool projects that extend, interface with, or use Qiskit

-
{{section_other_cards}}
+
{{section_other_cards}}

diff --git a/ecosystem/manager.py b/ecosystem/manager.py index c45da0a678..aa53d4f4c8 100644 --- a/ecosystem/manager.py +++ b/ecosystem/manager.py @@ -70,6 +70,7 @@ def build_website(self): "link": environment.get_template("link.html.jinja"), } sections = { + "transpiler_plugin": "", "provider": "", "applications": "", "other": "", @@ -118,6 +119,7 @@ def build_website(self): sections[repo.group] += card return templates["website"].render( + section_transpiler_plugin_cards=sections["transpiler_plugin"], section_provider_cards=sections["provider"], section_applications_cards=sections["applications"], section_other_cards=sections["other"], diff --git a/ecosystem/resources/members/dsm-swap.toml b/ecosystem/resources/members/dsm-swap.toml index 2766c50dfb..ee10ba3754 100644 --- a/ecosystem/resources/members/dsm-swap.toml +++ b/ecosystem/resources/members/dsm-swap.toml @@ -4,7 +4,7 @@ description = "A doubly stochastic matrices-based approach to optimal qubit rout licence = "Apache License 2.0" contact_info = "_No response_" alternatives = "_No response_" -labels = [ "Transpiler plugin", "Paper implementation", "Circuit",] +labels = [ "Paper implementation", "Circuit",] created_at = 1678827878.56605 updated_at = 1678827878.566051 tier = "Community" @@ -12,7 +12,7 @@ styles_results = [] coverages_results = [] skip_tests = false stars = 7 -group = "other" +group = "transpiler_plugin" [[tests_results]] passed = false test_type = "development" diff --git a/ecosystem/resources/members/mirror-gates.toml b/ecosystem/resources/members/mirror-gates.toml index 2ac4512e8d..8779b1861a 100644 --- a/ecosystem/resources/members/mirror-gates.toml +++ b/ecosystem/resources/members/mirror-gates.toml @@ -5,14 +5,14 @@ licence = "MIT license" contact_info = "evmckinney9@gmail.com" alternatives = "_No response_" affiliations = "University of Pittsburgh" -labels = [ "Transpiler plugin", "Paper implementation",] +labels = [ "Paper implementation",] tier = "Community" website = "https://arxiv.org/abs/2308.03874" styles_results = [] coverages_results = [] skip_tests = false stars = 3 -group = "other" +group = "transpiler_plugin" [[tests_results]] passed = true test_type = "development" diff --git a/ecosystem/resources/members/qiskit-bip-mapper.toml b/ecosystem/resources/members/qiskit-bip-mapper.toml index 4f8eadf107..23ebe1874b 100644 --- a/ecosystem/resources/members/qiskit-bip-mapper.toml +++ b/ecosystem/resources/members/qiskit-bip-mapper.toml @@ -5,7 +5,7 @@ licence = "Apache License 2.0" contact_info = "itoko@jp.ibm.com" alternatives = "_No response_" affiliations = "IBM" -labels = [ "Transpiler plugin", "Paper implementation",] +labels = [ "Paper implementation",] created_at = 1681306690.423614 updated_at = 1681306690.423619 tier = "Community" @@ -15,4 +15,4 @@ coverages_results = [] skip_tests = true historical_test_results = [] stars = 4 -group = "other" +group = "transpiler_plugin" diff --git a/ecosystem/resources/members/qiskit-qubit-reuse.toml b/ecosystem/resources/members/qiskit-qubit-reuse.toml index a187112b04..e2fc14b97a 100644 --- a/ecosystem/resources/members/qiskit-qubit-reuse.toml +++ b/ecosystem/resources/members/qiskit-qubit-reuse.toml @@ -5,13 +5,13 @@ licence = "Apache License 2.0" contact_info = "_No response_" alternatives = "_No response_" affiliations = "IBM" -labels = [ "Paper implementation", "Transpiler plugin",] +labels = [ "Paper implementation", ] tier = "Community" styles_results = [] coverages_results = [] skip_tests = false stars = 7 -group = "other" +group = "transpiler_plugin" [[tests_results]] passed = false test_type = "development" diff --git a/ecosystem/resources/members/qiskit-toqm.toml b/ecosystem/resources/members/qiskit-toqm.toml index 7df5b45497..156df7750a 100644 --- a/ecosystem/resources/members/qiskit-toqm.toml +++ b/ecosystem/resources/members/qiskit-toqm.toml @@ -4,7 +4,7 @@ description = "Qiskit transpiler routing method using the Time-Optimal Qubit Map licence = "Apache License 2.0" contact_info = "_No response_" alternatives = "_No response_" -labels = [ "Transpiler plugin", "Paper implementation", "Circuit",] +labels = [ "Paper implementation", "Circuit",] created_at = 1678827878.737541 updated_at = 1678827878.737541 tier = "Community" @@ -12,7 +12,7 @@ styles_results = [] coverages_results = [] skip_tests = false stars = 6 -group = "other" +group = "transpiler_plugin" [[tests_results]] passed = false test_type = "development" diff --git a/website/index.html b/website/index.html index 29614cca53..183380dbc3 100644 --- a/website/index.html +++ b/website/index.html @@ -75,6 +75,207 @@
+

+ + + + Transpiler plugins +

+

+ Use these projects to compile and optimize your quantum circuits. +

+
+ +

dsm-swap

+
Paper implementationCircuit
+
+ +

A doubly stochastic matrices-based approach to optimal qubit routing.

+ +
+ +
+
+ +

qiskit-qubit-reuse

+
Paper implementation
+
+ +

A Qiskit transpiler stage plugin to enable qubit reuse via mid-circuit measurement and reset.

+ +
+ +
+
+ +

qiskit-toqm

+
Paper implementationCircuit
+
+ +

Qiskit transpiler routing method using the Time-Optimal Qubit Mapping (TOQM) algorithm, described in https://doi.org/10.1145/3445814.3446706

+ +
+ +
+
+ +

qiskit-bip-mapper

+
Paper implementation
+
+ +

This plugin solves the routing and layout problems as a binary integer programming (BIP) problem. This is an implementation of G. Nannicini et al. "Optimal qubit assignment and routing via integer programming." (arXiv:2106.06446).

+ +
+ +
+
+ +

mirror-gates

+
Paper implementation
+
+ +

MIRAGE is a transpilation plugin for quantum circuits that minimizes the use of SWAP gates while optimizing native basis gate decomposition through mirror gates. Specifically designed for iSWAP-based quantum systems, MIRAGE improves circuit depth, making quantum algorithms more practical and efficient.

+ +
+ +
+
+

Access IBM Quantum and 3rd party systems and simulators to the following providers

-
+

qiskit-ibm-runtime

ProviderPartner
@@ -387,7 +588,7 @@

Explore packages that help apply quantum technology to real-world use cases

-
+

pytorch-quantum

@@ -834,14 +1035,14 @@

Quantum Random Access Optimization

-

pyRiemann-qiskit

-
Machine learning
+

Qiskit Nature PySCF

+
Chemistry
-

A library for supervised machine learning based on quantum computing and Riemannian geometry. The project is built on top of the Qiskit and pyRiemann projects and focuses on the classification of time series data.

+

Qiskit Nature PySCF is a third-party integration plugin of Qiskit Nature and PySCF.

-

-

Qiskit Nature PySCF

-
Chemistry
+

pyRiemann-qiskit

+
Machine learning
-

Qiskit Nature PySCF is a third-party integration plugin of Qiskit Nature and PySCF.

+

A library for supervised machine learning based on quantum computing and Riemannian geometry. The project is built on top of the Qiskit and pyRiemann projects and focuses on the classification of time series data.

-

Cool projects that extend, interface with, or use Qiskit

-
+

OpenQASM

OpenQASM
@@ -1953,66 +2154,6 @@

qiskit-alt

-
- -

quantum-tetris

-
Game
-
- -

What would happen if you combine Tetris with a Quantum computer? The winning entry of the Quantum Design Jam from IBM and Parsons in October 2021 explores just that!

- -
- -
-
- -

pytket-qiskit

-
Converter
-
- -

an extension to Pytket (a python module for interfacing with CQC tket) that allows Pytket circuits to be run on IBM backends and simulators, as well as conversion to and from Qiskit representations.

- -
- -

Quantum-Glasses

@@ -2045,14 +2186,14 @@

Quantum-Glasses

-

dsm-swap

-
Transpiler pluginPaper implementationCircuit
+

quantum-tetris

+
Game
-

A doubly stochastic matrices-based approach to optimal qubit routing

+

What would happen if you combine Tetris with a Quantum computer? The winning entry of the Quantum Design Jam from IBM and Parsons in October 2021 explores just that!

-