No project description provided
Project description
Native code for BQSKit
bqskitrs
is a Python package that implements circuit instantiation and simulation to accelerate BQSKit.
Installing bqskitrs
You can often install bqskitrs
via PyPi with pip
:
pip install bqskitrs
this will use pre-built wheels. Sometimes wheels are not available, so you must build from source.
Building bqskitrs
Linux
It's best to build and install the manylinux version with the provided docker container:
git clone https://github.com/BQSKit/bqskitrs.git --recursive
cd bqskitrs
docker run -e OPENBLAS_ARGS="DYNAMIC_ARCH=1" --rm -v $(pwd):/io edyounis/bqskitrs-manylinux:1.1 build --release --features=openblas --compatibility=manylinux2014
pip install --no-index --find-links=target/wheels bqskitrs
MacOS
Make sure the version of pip you have is at least 20.0.2.
You can check via pip -V
and upgrade via python3 -m pip install -U pip
.
First, install the dependencies. We use homebrew here, which is what we build the official package against.
brew install gcc ceres-solver eigen lapack
Once that is complete you should then install Rust like as follows:
curl https://sh.rustup.rs -sSf | sh -s -- -y
Then clone and enter enter the bqskitrs
directory:
git clone https://github.com/BQSKit/bqskitrs.git --recursive
cd bqskitrs
Then build the wheel (package file) with maturin:
pip install -U setuptools wheel maturin
maturin build --features="accelerate" --release
If you encounter issues on an intel x86 Mac computer with a message like "rust failed to run custom build command for cxx', you may need to run the following build command instead:
MACOSX_DEPLOYMENT_TARGET=11.0 maturin build --features="accelerate"
Finally install the wheel that you built:
pip install --no-index --find-links=target/wheels bqskitrs
Once it is done installing the wheel, verify that the installation succeeded by running
python3 -c 'import bqskitrs'
It should not print anything out nor give any error.
Windows
Make sure the version of pip you have is at least 20.0.2.
You can check via pip -V
and upgrade via python3 -m pip install -U pip
.
Download and install rust via the installer found at https://rustup.rs/. Accept all of the defaults.
Close your shell and open a new one (this updates the enviroment).
Then install cargo-vcpkg
, which will help install dependencies for us. You can install it via
cargo install cargo-vcpkg
cargo
is installed with Rust so this should "just work".
Then clone and enter enter the bqskitrs
directory:
git clone https://github.com/BQSKit/bqskitrs.git --recursive
cd bqskitrs
Then build the dependencies with vcpkg.
cargo vcpkg build
This will take quite a while.
Then build the wheel (package file) with maturin:
python -m pip install maturin
python -m maturin build --interpreter $(which python) --features="openblas,openblas-src/system" --release
Finally install the wheel that you built:
pip install --no-index --find-links=target/wheels bqskitrs
Once it is done installing the wheel, verify that the installation succeeded by running
python3 -c 'import bqskitrs'
It should not print anything out nor give any error.
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 Distributions
Built Distributions
Hashes for bqskitrs-0.4.0rc4-cp38-abi3-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 16f3a8af012901b53a498cecfe8f6439d2988d3154d40aa52f70d993ad44ded7 |
|
MD5 | 0b14ae9adabfd77feaca5b8698b1cbd6 |
|
BLAKE2b-256 | 79f9106d79efeeb75dbc7fb394ee4f7398121961b89b74b5d91f0b9a44c905c0 |
Hashes for bqskitrs-0.4.0rc4-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 76a9e130ec56b6a3a80f940b0937fe5dabe59c48794d857f9088f9a2b00c2e82 |
|
MD5 | f840baba5b2a530dde28d892899834a4 |
|
BLAKE2b-256 | ef32a8f024167ebab7b54ac39a6d4f68a61859dfcdb1aac94ef6806e891fe553 |
Hashes for bqskitrs-0.4.0rc4-cp38-abi3-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d07525c22f4598ce71a450a8e18e6b8cebdd46437a28afde79de629a25f9d3b1 |
|
MD5 | 55041318f7550acd661c40556e63be68 |
|
BLAKE2b-256 | 7537291539dbe2367bda0845c8e29ad8e71c3aefd8735e2ba349cde166b1d635 |
Hashes for bqskitrs-0.4.0rc4-cp38-abi3-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 14f5cd4b9992e61045b515ce19f28bb8d0d69d80d087d0ff60295c5e0ba6ba86 |
|
MD5 | 2870205511c07050d89940cda407af1a |
|
BLAKE2b-256 | 187f0418b0163c869544060e2d95852ba610aff73ed4acc67c8793e5a4ac153a |