Skip to main content

Qiskit Aer - High performance simulators for Qiskit

Project description

Qiskit Aer

LicenseBuild Status

Qiskit is an open-source framework for working with noisy quantum computers at the level of pulses, circuits, and algorithms.

Qiskit is made up of elements that each work together to enable quantum computing. This element is Aer, which provides high-performance quantum computing simulators with realistic noise models.

Installation

We encourage installing Qiskit via the PIP tool (a python package manager), which installs all Qiskit elements, including this one.

pip install qiskit

PIP will handle all dependencies automatically for us and you will always install the latest (and well-tested) version.

To install from source, follow the instructions in the contribution guidelines.

Installing GPU support

In order to install and run the GPU supported simulators, you need CUDA® 10.1 or newer previously installed. CUDA® itself would require a set of specific GPU drivers. Please follow CUDA® installation procedure in the NVIDIA® web.

If you want to install our GPU supported simulators, you have to install this other package:

pip install qiskit-aer-gpu

This will overwrite your current qiskit-aer package installation giving you the same functionality found in the canonical qiskit-aer package, plus the ability to run the GPU supported simulators: statevector, density matrix, and unitary.

Simulating your first quantum program with Qiskit Aer

Now that you have Qiskit Aer installed, you can start simulating quantum circuits with noise. Here is a basic example:

$ python
from qiskit import QuantumCircuit, execute
from qiskit import Aer, IBMQ
from qiskit.providers.aer.noise import NoiseModel

# Choose a real device to simulate from IBMQ provider
provider = IBMQ.load_account()
backend = provider.get_backend('ibmq_vigo')
coupling_map = backend.configuration().coupling_map

# Generate an Aer noise model for device
noise_model = NoiseModel.from_backend(backend)
basis_gates = noise_model.basis_gates

# Generate 3-qubit GHZ state
num_qubits = 3
circ = QuantumCircuit(3, 3)
circ.h(0)
circ.cx(0, 1)
circ.cx(1, 2)
circ.measure([0, 1, 2], [0, 1 ,2])

# Perform noisy simulation
backend = Aer.get_backend('qasm_simulator')
job = execute(circ, backend,
              coupling_map=coupling_map,
              noise_model=noise_model,
              basis_gates=basis_gates)
result = job.result()

print(result.get_counts(0))
{'000': 495, '001': 18, '010': 8, '011': 18, '100': 2, '101': 14, '110': 28, '111': 441}

Contribution Guidelines

If you'd like to contribute to Qiskit, please take a look at our contribution guidelines. This project adheres to Qiskit's code of conduct. By participating, you are expect to uphold to this code.

We use GitHub issues for tracking requests and bugs. Please use our slack for discussion and simple questions. To join our Slack community use the link. For questions that are more suited for a forum we use the Qiskit tag in the Stack Exchange.

Next Steps

Now you're set up and ready to check out some of the other examples from our Qiskit IQX Tutorials or Qiskit Community Tutorials repositories.

Authors and Citation

Qiskit Aer is the work of many people who contribute to the project at different levels. If you use Qiskit, please cite as per the included BibTeX file.

License

Apache License 2.0

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

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

qiskit_aer_gpu-0.6.1-cp38-cp38-manylinux2010_x86_64.whl (34.8 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.12+ x86-64

qiskit_aer_gpu-0.6.1-cp37-cp37m-manylinux2010_x86_64.whl (34.8 MB view details)

Uploaded CPython 3.7mmanylinux: glibc 2.12+ x86-64

qiskit_aer_gpu-0.6.1-cp36-cp36m-manylinux2010_x86_64.whl (34.8 MB view details)

Uploaded CPython 3.6mmanylinux: glibc 2.12+ x86-64

qiskit_aer_gpu-0.6.1-cp35-cp35m-manylinux2010_x86_64.whl (34.8 MB view details)

Uploaded CPython 3.5mmanylinux: glibc 2.12+ x86-64

File details

Details for the file qiskit_aer_gpu-0.6.1-cp38-cp38-manylinux2010_x86_64.whl.

File metadata

  • Download URL: qiskit_aer_gpu-0.6.1-cp38-cp38-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 34.8 MB
  • Tags: CPython 3.8, manylinux: glibc 2.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.7.8

File hashes

Hashes for qiskit_aer_gpu-0.6.1-cp38-cp38-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 8c4cfd3e30079f0f58e3435ec9d55f934325495ba7b7111f7aff4bbdcb3ce15e
MD5 fa5d24137a7e419ea55cd1dc01892726
BLAKE2b-256 aef7af3416827d67040b3d89a15f8c3ab41c121b44f10608134115e0ea115aac

See more details on using hashes here.

File details

Details for the file qiskit_aer_gpu-0.6.1-cp37-cp37m-manylinux2010_x86_64.whl.

File metadata

  • Download URL: qiskit_aer_gpu-0.6.1-cp37-cp37m-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 34.8 MB
  • Tags: CPython 3.7m, manylinux: glibc 2.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.7.8

File hashes

Hashes for qiskit_aer_gpu-0.6.1-cp37-cp37m-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 a6996eea40c392ebe709b63c5d6bf2c032e1c78abd0cfbc1f6e2ba35edb3d64f
MD5 e20dcc403e25f957d87a4821d5a369d2
BLAKE2b-256 877afdbd40f0b688feca84df7efc89444be80644922379474a922c751b1ab79a

See more details on using hashes here.

File details

Details for the file qiskit_aer_gpu-0.6.1-cp36-cp36m-manylinux2010_x86_64.whl.

File metadata

  • Download URL: qiskit_aer_gpu-0.6.1-cp36-cp36m-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 34.8 MB
  • Tags: CPython 3.6m, manylinux: glibc 2.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.7.8

File hashes

Hashes for qiskit_aer_gpu-0.6.1-cp36-cp36m-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 9ccdcea83c34d911655277e47f292146b1264345daf09859dbce821b3888e526
MD5 b3afb891de3082f89def5c2271ed243b
BLAKE2b-256 a64e64286b98fcce7366bfe45e0f554bea82729661cf560abd13f369719272d6

See more details on using hashes here.

File details

Details for the file qiskit_aer_gpu-0.6.1-cp35-cp35m-manylinux2010_x86_64.whl.

File metadata

  • Download URL: qiskit_aer_gpu-0.6.1-cp35-cp35m-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 34.8 MB
  • Tags: CPython 3.5m, manylinux: glibc 2.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.7.8

File hashes

Hashes for qiskit_aer_gpu-0.6.1-cp35-cp35m-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 dc346518fa4084a1f47620e3fce395e1b3414355a66f92d3fe517a831af66136
MD5 099cb8b0c0418ff54b19ed2ad36b99ae
BLAKE2b-256 01911f79450b3819fbfddccb8ae17e2ae39f74e0ac1e1d9485664fb8825c5cb1

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