quqcs is an open source library for quantum compute simulating on NVIDIA GPU
Project description
qucuQUantum
概述
- 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 完成部署安装。
使用方法
- qucuQuantum 库引入QuTrunk代码中
from qucuQuantum.cuQuantum import BackendcuQuantum
- 在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
Release history Release notifications | RSS feed
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 hashes)
Built Distribution
quqcs-0.1.0-py3-none-any.whl
(18.4 kB
view hashes)