Skip to main content

PennyLane-Lightning plugin

Project description

The Lightning plugin ecosystem provides fast state-vector and tensor-network simulators written in C++.

PennyLane is a cross-platform Python library for quantum machine learning, automatic differentiation, and optimization of hybrid quantum-classical computations. PennyLane supports Python 3.11 and above.

Backends

PennyLane-Lightning high performance simulators include the following backends:

  • lightning.qubit: a fast state-vector simulator written in C++ with optional OpenMP additions and parallelized gate-level SIMD kernels.
  • lightning.gpu: a state-vector simulator based on the NVIDIA cuQuantum SDK. It notably implements a distributed state-vector simulator based on MPI.
  • lightning.kokkos: a state-vector simulator written with Kokkos. It can exploit the inherent parallelism of modern processing units supporting the OpenMP, CUDA or HIP programming models. It also offers distributed state-vector simulation via MPI.
  • lightning.tensor: a tensor-network simulator based on the NVIDIA cuQuantum SDK. The supported methods are Matrix Product State (MPS) and Exact Tensor Network (TN).

If you're not sure which simulator to use, check out our PennyLane Performance page.

Installation

The following table summarizes the supported platforms and the primary installation mode:

Linux x86 Linux ARM MacOS x86 MacOS ARM Windows
Lightning-Qubit pip pip pip pip pip
Lightning-GPU pip pip
Lightning-GPU (MPI) source
Lightning-Kokkos (OMP) pip pip pip pip
Lightning-Kokkos (CUDA) source source
Lightning-Kokkos (HIP) source source
Lightning-Kokkos (MPI) source
Lightning-Tensor pip pip

To install the latest stable version of these plugins, check out the PennyLane installation guide.

If you wish to install the latest development version, instructions for building from source are also available for each backend.

Docker support

Docker images for the various backends are found on the PennyLane Docker Hub page, where a detailed description about PennyLane Docker support can be found. Briefly, one can build the Docker Lightning images using:

git clone https://github.com/PennyLaneAI/pennylane-lightning.git
cd pennylane-lightning
docker build -f docker/Dockerfile --target ${TARGET} .

where ${TARGET} is one of the following:

  • wheel-lightning-qubit
  • wheel-lightning-gpu
  • wheel-lightning-kokkos-openmp
  • wheel-lightning-kokkos-cuda
  • wheel-lightning-kokkos-rocm

Contributing

We welcome contributions - simply fork the repository of this plugin, and then make a pull request containing your contribution. All contributors to this plugin will be listed as authors on the releases.
We also encourage bug reports, suggestions for new features and enhancements, and even links to cool projects or applications built on PennyLane.

Black & Pylint

If you contribute to the Python code, please mind the following. The Python code is formatted with the PEP 8 compliant opinionated formatter Black (black==25.1.0). We set a line width of a 100 characters. The Python code is statically analyzed with Pylint. We set up a pre-commit hook (see Git hooks) to run both of these on git commit. Please make your best effort to comply with black and pylint before using disabling pragmas (e.g. # pylint: disable=missing-function-docstring).

Authors

Lightning is the work of many contributors.

If you are using Lightning for research, please cite:

@misc{
    asadi2024,
    title={{Hybrid quantum programming with PennyLane Lightning on HPC platforms}},
    author={Ali Asadi and Amintor Dusko and Chae-Yeun Park and Vincent Michaud-Rioux and Isidor Schoch and Shuli Shu and Trevor Vincent and Lee James O'Riordan},
    year={2024},
    eprint={2403.02512},
    archivePrefix={arXiv},
    primaryClass={quant-ph},
    url={https://arxiv.org/abs/2403.02512},
}

Support

If you are having issues, please let us know by posting the issue on our Github issue tracker, or by asking a question in the forum.

License

The Lightning plugins are free and open source, released under the Apache License, Version 2.0.
The Lightning-GPU and Lightning-Tensor plugins make use of the NVIDIA cuQuantum SDK headers to enable the device bindings to PennyLane, which are held to their own respective license.

Acknowledgements

PennyLane Lightning makes use of the following libraries and tools, which are under their own respective licenses:

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

pennylane_lightning_kokkos-0.43.0.tar.gz (759.4 kB view details)

Uploaded Source

Built Distributions

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

pennylane_lightning_kokkos-0.43.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (4.5 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

pennylane_lightning_kokkos-0.43.0-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (4.3 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.26+ ARM64manylinux: glibc 2.28+ ARM64

pennylane_lightning_kokkos-0.43.0-cp313-cp313-macosx_13_0_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.13macOS 13.0+ x86-64

pennylane_lightning_kokkos-0.43.0-cp313-cp313-macosx_13_0_arm64.whl (1.0 MB view details)

Uploaded CPython 3.13macOS 13.0+ ARM64

pennylane_lightning_kokkos-0.43.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (4.5 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

pennylane_lightning_kokkos-0.43.0-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (4.3 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.26+ ARM64manylinux: glibc 2.28+ ARM64

pennylane_lightning_kokkos-0.43.0-cp312-cp312-macosx_13_0_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.12macOS 13.0+ x86-64

pennylane_lightning_kokkos-0.43.0-cp312-cp312-macosx_13_0_arm64.whl (1.0 MB view details)

Uploaded CPython 3.12macOS 13.0+ ARM64

pennylane_lightning_kokkos-0.43.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (4.5 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

pennylane_lightning_kokkos-0.43.0-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (4.3 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.26+ ARM64manylinux: glibc 2.28+ ARM64

pennylane_lightning_kokkos-0.43.0-cp311-cp311-macosx_13_0_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.11macOS 13.0+ x86-64

pennylane_lightning_kokkos-0.43.0-cp311-cp311-macosx_13_0_arm64.whl (1.0 MB view details)

Uploaded CPython 3.11macOS 13.0+ ARM64

File details

Details for the file pennylane_lightning_kokkos-0.43.0.tar.gz.

File metadata

File hashes

Hashes for pennylane_lightning_kokkos-0.43.0.tar.gz
Algorithm Hash digest
SHA256 f128372b1050bc5fa8029d3c81a04e3336a0cf6b2f51f2e92bb5173fc21697df
MD5 bbf7851c6b820f16156dfc0b9b90cc46
BLAKE2b-256 fb4422062b0dd148da60ed4728860cf0b20e3c13fd4778e007e7ad79c97ec451

See more details on using hashes here.

File details

Details for the file pennylane_lightning_kokkos-0.43.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pennylane_lightning_kokkos-0.43.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 f8d2a6b3f7c6660bed372464c81a9ce297ffcde3bf5af6aeb0835efeda2b7699
MD5 24d1c4456f9b4d1f62063326ea0896cf
BLAKE2b-256 de98345f61756b204d18ac931ce1eb69c159e260b8926a4006fc1f3d6bc07f24

See more details on using hashes here.

File details

Details for the file pennylane_lightning_kokkos-0.43.0-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pennylane_lightning_kokkos-0.43.0-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 7908425598bbb647e438ccc4974c3293a9245b304d672dc9639a86e896dc471c
MD5 2429d28b92a6b8705c800033cba05dd8
BLAKE2b-256 1b837454a5f5ce4acc29f256b74cd996b3ae8b7fa325bc292ee0f7c86f51a361

See more details on using hashes here.

File details

Details for the file pennylane_lightning_kokkos-0.43.0-cp313-cp313-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for pennylane_lightning_kokkos-0.43.0-cp313-cp313-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 2f56d0c413e0133624016d214a5c12f5d7c6d447a27914c8d609086bdc3271d9
MD5 beb66b32ca19ee6a6d51520f1f5a00bb
BLAKE2b-256 68c3faffe9f3ffad8e8fa03a722e36d041876382f88015e2b6ad8b3ab7453a02

See more details on using hashes here.

File details

Details for the file pennylane_lightning_kokkos-0.43.0-cp313-cp313-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for pennylane_lightning_kokkos-0.43.0-cp313-cp313-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 5c3375af2fde969560d39bb612802f7f7d0626bd87bfef75a5ab0bee14e0ea10
MD5 32bda504bad1d6c31c6bb01ea9f62859
BLAKE2b-256 8ff09620501570de64d9e0ddbdb08b68902e3e170b769b7c0ccd73acbf4af962

See more details on using hashes here.

File details

Details for the file pennylane_lightning_kokkos-0.43.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pennylane_lightning_kokkos-0.43.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 003f8f9252cae5cb91ddaf11cae1c5e89206c00c4ee0080bd3183b832a5a360c
MD5 57ca73023e0a783873064570c1f21dd7
BLAKE2b-256 f36f5b161fd238dbf81df8feca940b87db76845ded0e7879e3fa202182e75c23

See more details on using hashes here.

File details

Details for the file pennylane_lightning_kokkos-0.43.0-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pennylane_lightning_kokkos-0.43.0-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 2857996aeaf56462773cbe6ee0c124987bd3a23861a0104e62672dedc3ddcbee
MD5 ecebbc84752b959f118fd39cd94a016a
BLAKE2b-256 08646a62c53acc0ff9d5075902bd9eb402c17c32fa13d8a5aedefa1579ff92d3

See more details on using hashes here.

File details

Details for the file pennylane_lightning_kokkos-0.43.0-cp312-cp312-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for pennylane_lightning_kokkos-0.43.0-cp312-cp312-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 43bf603d489f84662e64fa932fddfddfa977c4f18f5da30b06a33a8f5f5b7246
MD5 19725e9fecaab7daef7ad9355fa5a410
BLAKE2b-256 ef1db44050f722e4bc1adaaa12432fc97b93bd6e9ba53fe4bbfd37a31f16a1e6

See more details on using hashes here.

File details

Details for the file pennylane_lightning_kokkos-0.43.0-cp312-cp312-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for pennylane_lightning_kokkos-0.43.0-cp312-cp312-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 997ad7b10f386b02e8c313c40e8adc214201b27765ff64b929b9ca2680c4bbff
MD5 499af51ebeea31cb6fb2a362670e216b
BLAKE2b-256 8ca640769f70bc521333f61d885fe7b0ce008e695ff2f2d14a78c9faa8db5541

See more details on using hashes here.

File details

Details for the file pennylane_lightning_kokkos-0.43.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pennylane_lightning_kokkos-0.43.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 6d96f6c058e038fcb41df9fe4c70264c9f3cde40d3bb9bf074b9476e433518c0
MD5 1fab3e9d438e1a4a74b0308f0e1453d7
BLAKE2b-256 f34c83289d07dba49e80a8153358d91d056608ebdf0dbf302565c4b76b0fceb3

See more details on using hashes here.

File details

Details for the file pennylane_lightning_kokkos-0.43.0-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pennylane_lightning_kokkos-0.43.0-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 8911b27886f05b03e5fffd0f111f2f9245bc886f99842993c57213b5d6522f25
MD5 14d80d314cb0c8f6fa58a14eff8fc9e6
BLAKE2b-256 ae58430b3db0ab0fc2d9fd3f58d3d3c43e6f9c73d9a9d130a2da12f71d3b3b8c

See more details on using hashes here.

File details

Details for the file pennylane_lightning_kokkos-0.43.0-cp311-cp311-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for pennylane_lightning_kokkos-0.43.0-cp311-cp311-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 5c28e2cab463d11ab87e522f2754dfbad42ab0bf51512d2202f25e429a3b4981
MD5 5d17bbb66975f1edeb5d3c15123c1d95
BLAKE2b-256 a6a44a27e60461fd6b8e926d7972260038f23b9366302314c3611f8e656afcb0

See more details on using hashes here.

File details

Details for the file pennylane_lightning_kokkos-0.43.0-cp311-cp311-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for pennylane_lightning_kokkos-0.43.0-cp311-cp311-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 f452bd32f87d2ed734b15983a5f94c70f67e48f26b3eac3fe53e007099a1a5bd
MD5 040d1ea811a69e8bd39b3aee5dcf1f2f
BLAKE2b-256 92f336024e677e23d310eff64cf7e451fd1dcec5c8baa3d2b6fac8ce99bb5a96

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