Coder Social home page Coder Social logo

qoqo-quest's Introduction

qoqo logo

qoqo-quest

QuEST simulator backend for the qoqo/roqoqo quantum toolkit by HQS Quantum Simulations.

This repository contains three components:

  • The qoqo_quest backend to simulate quantum programms from the qoqo python interface to roqoqo,
  • The roqoqo-quest backend backend to simulate quantum programms from roqoqo directly,
  • The quest-sys crate providing rust bindings for the QuEST C library.

qoqo-quest

PyPI PyPI - Format Crates.io

QuEST based simulator backend for the qoqo quantum toolkit by HQS Quantum Simulations.

qoqo-quest allows to simulate the execution of qoqo quantum circuits with the help of the QuEST quantum simulator. Based on QuEST qoqo supports the simulation of error-free and noisy quantum computers. qoqo-quest is designed to be able to simulate all operations that are part of qoqo. For usage examples see the examples section of qoqo

Installation

For linux and macos and windows on x86_64 hardware and macos on arm64 pre-built Python packages are available on PyPi and can be installed with

pip install qoqo-quest

For other platforms please use the source distribution that requires a Rust install with a rust version > 1.47 and a maturin version in order to be built.

After installing Rust (for example via rustup)

run the following

pip install maturin
pip install qoqo-quest

roqoqo-quest

Crates.io docs.rs Crates.io

QuEST based simulator backend for the roqoqo quantum toolkit by HQS Quantum Simulations.

roqoqo-quest allows to simulate the execution of roqoqo quantum circuits directly from rust code with the help of the QuEST quantum simulator. roqoqo-quest is designed to be able to simulate all operations that are part of roqoqo. For usage examples see the examples section of roqoqo.

QuEST build options

QuEST supports distributed computing and the use of GPU computing. qoqo-quest and roqoqo-quest are not tested against distributed builds, but have preliminary support for GPU computation. The PyPi distributed versions do not support GPU computation. For the moment GPU support can be enabled for NVIDIA GPUs using either the cuda feature or the cuquantum feature when compiling qoqo-quest with maturin or roqoqo-quest as a rust library. The cuda feature uses QuEST's CUDA-based simulator implementation and needs the cuda-compiler (nvcc) available during build. The cuquantum feature uses the cuda quantum simulator and requires the cuda-compiler (nvcc) during build as well as the cuquantum libraries.

General Notes

This software is still in the beta stage. Functions and documentation are not yet complete and breaking changes can occur.

This project has been partly supported by PlanQK and is partially supported by QSolid.

Contributing

We welcome contributions to the project. If you want to contribute code, please have a look at CONTRIBUTE.md for our code contribution guidelines.

qoqo-quest's People

Contributors

kbarkhqs avatar nfwvogt avatar dgupta-hqs avatar dberthault avatar mlodi-hqs avatar dependabot[bot] avatar mwalthqs avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.