Skip to main content

quqcs is an open source library for quantum compute simulating on NVIDIA GPU

Project description

qucuQUantum

Documentation Status License Download Code

概述


  • qucuQuantum 是基于 NVIDIA cuQuantum 开发的量子线路模拟器,可与启科量子编程框架QuTrunk集成,实现基于本地GPU服务器的量子线路模拟计算加速。
  • qucuQuantum 目前只支持 State Vector 的量子线路模拟
  • qucuQuantum 基于 Python 语言,提供门级别的 API, 包括H, CH, P, CP, R, CR, Rx, Ry, Rz, Rxx, Ryy, Rzz, X, Y, Z, S, T, Sdg, Tdg, SqrtX, CSqrtX, SqrtSwap, Swap, CSwap, CNot, MCX, CY, MCZ, U1, U2, U3, U, CU, ISwap, SqrtXdg, PH等量子门
  • qucuQuantum 目前只支持与QuTrunk本地集成,需要与QuTrunk部署在同一台 NVIDIA GPU 服务器上。

下载和安装


  • qucuQuantum 作为独立的库,与 runtime 集成,由 runtime 完成部署安装。

使用方法

  1. qucuQuantum 库引入QuTrunk代码中
from qucuQuantum.cuQuantum import BackendcuQuantum
  1. 在QuTrunk代码中,构造QCircuit对象时,指定backend为BackendcuQuantum,
circuit = QCircuit(backend=BackendcuQuantum())

示例代码

以下示例展示了利用 QuTrunk 运行 bell-pair 量子算法:

# import package
from qutrunk.circuit import QCircuit
from qutrunk.circuit.gates import H, CNOT, Measure, All
from qucuQuantum.cuQuantum import BackendcuQuantum

# allocate resource
qc = QCircuit(backend=BackendcuQuantum())
qr = qc.allocate(2) 

# apply quantum gates
H * qr[0]   
CNOT * (qr[0], qr[1])
All(Measure) * qr

# print circuit
qc.print()   
# run circuit
res = qc.run(shots=1024) 
# print result
print(res.get_counts()) 
# draw circuit
qc.draw()

运行结果:

许可证


qucuQuantum 是自由和开源的,在Apache 2.0许可证版本下发布。

** 依赖 **

内容 要求
GPU 架构 Volta, Turing, Ampere, Ada, Hopper
NVIDIA GPU Compute Capability 7.0+
CUDA 11.x
CPU 架构 x86_64, ppc64Ie, ARM64
操作系统 Linux
GPU 驱动 450.80.02+ (Linux)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

quqcs-0.1.0.tar.gz (18.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

quqcs-0.1.0-py3-none-any.whl (18.4 kB view details)

Uploaded Python 3

File details

Details for the file quqcs-0.1.0.tar.gz.

File metadata

  • Download URL: quqcs-0.1.0.tar.gz
  • Upload date:
  • Size: 18.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.3.1 CPython/3.9.5 Darwin/21.6.0

File hashes

Hashes for quqcs-0.1.0.tar.gz
Algorithm Hash digest
SHA256 fa658884ee62b90540ea57842810b5a693ba4f9213ac33612b292f496353a869
MD5 ed5e5f941126a4ba11665fe9cadeec99
BLAKE2b-256 10552619fb989d320779f6fba95e30cc8de2dee7db97bdf751cd3e9b0dc3b8fd

See more details on using hashes here.

File details

Details for the file quqcs-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: quqcs-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 18.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.3.1 CPython/3.9.5 Darwin/21.6.0

File hashes

Hashes for quqcs-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2fe51b113f49a1675aae47dbbd02a584afc9cbc86244eb7c72a1db7ff6644604
MD5 e28d269bcaadfda5c88b7a51aa3b9d14
BLAKE2b-256 38153723284673e7acf659901dcd0404cefc2922c8a12291c616e8fa38225469

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page