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.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.amdgpu: a state-vector simulator specifically for AMD GPUs. This device is an alias of our lightning.kokkos simulator.
  • lightning.gpu: a state-vector simulator based on the NVIDIA cuQuantum SDK. It notably implements a distributed state-vector simulator based on 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 ARM Windows
Lightning-Qubit pip pip pip pip
Lightning-Kokkos (OMP) pip pip pip
Lightning-Kokkos (CUDA) source source
Lightning-Kokkos (HIP) source source
Lightning-Kokkos (MPI) source
Lightning-AMDGPU pip source
Lightning-GPU pip pip
Lightning-GPU (MPI) source
Lightning-Tensor pip pip

For Lightning-AMDGPU, pre-built wheels are available for MI300 series GPU for ROCm 7.0 and greater. For older architecture and ROCm versions, please install from source.

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. 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-0.45.0.tar.gz (792.7 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-0.45.0-py3-none-any.whl (1.0 MB view details)

Uploaded Python 3

pennylane_lightning-0.45.0-cp314-cp314-win_amd64.whl (5.4 MB view details)

Uploaded CPython 3.14Windows x86-64

pennylane_lightning-0.45.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (25.5 MB view details)

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

pennylane_lightning-0.45.0-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (16.9 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.27+ ARM64manylinux: glibc 2.28+ ARM64

pennylane_lightning-0.45.0-cp314-cp314-macosx_13_0_arm64.whl (1.7 MB view details)

Uploaded CPython 3.14macOS 13.0+ ARM64

pennylane_lightning-0.45.0-cp313-cp313-win_amd64.whl (5.4 MB view details)

Uploaded CPython 3.13Windows x86-64

pennylane_lightning-0.45.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (25.5 MB view details)

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

pennylane_lightning-0.45.0-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (16.9 MB view details)

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

pennylane_lightning-0.45.0-cp313-cp313-macosx_13_0_arm64.whl (1.7 MB view details)

Uploaded CPython 3.13macOS 13.0+ ARM64

pennylane_lightning-0.45.0-cp312-cp312-win_amd64.whl (5.4 MB view details)

Uploaded CPython 3.12Windows x86-64

pennylane_lightning-0.45.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (25.5 MB view details)

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

pennylane_lightning-0.45.0-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (16.9 MB view details)

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

pennylane_lightning-0.45.0-cp312-cp312-macosx_13_0_arm64.whl (1.7 MB view details)

Uploaded CPython 3.12macOS 13.0+ ARM64

pennylane_lightning-0.45.0-cp311-cp311-win_amd64.whl (5.4 MB view details)

Uploaded CPython 3.11Windows x86-64

pennylane_lightning-0.45.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (25.5 MB view details)

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

pennylane_lightning-0.45.0-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (16.9 MB view details)

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

pennylane_lightning-0.45.0-cp311-cp311-macosx_13_0_arm64.whl (1.7 MB view details)

Uploaded CPython 3.11macOS 13.0+ ARM64

File details

Details for the file pennylane_lightning-0.45.0.tar.gz.

File metadata

  • Download URL: pennylane_lightning-0.45.0.tar.gz
  • Upload date:
  • Size: 792.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.13

File hashes

Hashes for pennylane_lightning-0.45.0.tar.gz
Algorithm Hash digest
SHA256 fb146f1b8be30ae0d445c6a9cd646a29234e9ed81e7d92467a48e62c20691ede
MD5 080a15007821b1fd8d27792affe2eadf
BLAKE2b-256 573b54b667f2eca85bc66e5b290cb873d274a0bd234e1b5027b21edcd4a87dd5

See more details on using hashes here.

File details

Details for the file pennylane_lightning-0.45.0-py3-none-any.whl.

File metadata

File hashes

Hashes for pennylane_lightning-0.45.0-py3-none-any.whl
Algorithm Hash digest
SHA256 24f6c1f7db13dec80fdbe167579c5c42f1098c8f798ba9513e1b8d0906f64cc1
MD5 57432ac25edb9f934a71c6ab59cfb7b6
BLAKE2b-256 8403c1f12a8d137c135551c9fb71890021d8958dc0d6152505907cf35854df68

See more details on using hashes here.

File details

Details for the file pennylane_lightning-0.45.0-cp314-cp314-win_amd64.whl.

File metadata

File hashes

Hashes for pennylane_lightning-0.45.0-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 3e0869f6fe2091bf9cb88f501257ccb18d2dd4a21e7a0d5d66239c10897a36e6
MD5 9f5a19f0ed336c53cfda38bfba7908ff
BLAKE2b-256 212ae17e7a8746be2539c255ca6c53dfb7e7e3bb1d54c71e2219065021a8fd0d

See more details on using hashes here.

File details

Details for the file pennylane_lightning-0.45.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pennylane_lightning-0.45.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 7992ba71246751cabebfc371b8cbe6b953bfdb746c2044c8161a9373d1eda33c
MD5 c4c7172e7f7f439ff0e6c0a4ca07441a
BLAKE2b-256 c774cecb20d032bc5f98ec2a6b373fc464a6979de6a306f7bb1db0fd61ecd922

See more details on using hashes here.

File details

Details for the file pennylane_lightning-0.45.0-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pennylane_lightning-0.45.0-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 dd82239669e5abef0b7c324a0a086cac76f5c5d9361c4b6496d9370da5c016d9
MD5 82dcc268250395893878eff458aa521e
BLAKE2b-256 b688f4eb42a49f3036acf0d936184e025dc945dbeafc21878eee71b683e9f959

See more details on using hashes here.

File details

Details for the file pennylane_lightning-0.45.0-cp314-cp314-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for pennylane_lightning-0.45.0-cp314-cp314-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 a18f3b4e98c6def4e9826909d2eec95e55656de2d566a7d3e944cd3cc522fa98
MD5 1df044aee63c23bdd152e14926330c0e
BLAKE2b-256 df94f979e63fb7ddbd89ff42b57e9c0f21bd49a7c6a0ccb022a80d9f36bfa317

See more details on using hashes here.

File details

Details for the file pennylane_lightning-0.45.0-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for pennylane_lightning-0.45.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 1b0c4084eb2e9de90aa7528bc6e9213f436d3ef4a7c79d4c9d15fd812aa136ac
MD5 295437c848f80975d8c1f1f6fdf1ed2d
BLAKE2b-256 6785a0d763d77b21312b36c55b2ab9ce307dc4570892efe7b241290ed564b55e

See more details on using hashes here.

File details

Details for the file pennylane_lightning-0.45.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pennylane_lightning-0.45.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 588eb157976a970f1a0c21c51edf4302aae00f1a98cf558314726b966cd5be6c
MD5 05b9dbe7c391384c4cc76213623f80b1
BLAKE2b-256 f28762e7e7638017eb7ddd72f07777783c7a4ab5196806800ace10fac5bae16c

See more details on using hashes here.

File details

Details for the file pennylane_lightning-0.45.0-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pennylane_lightning-0.45.0-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 39b1bcd8102aa11bf4030726de9134f61a2ef86b32a36a76068c9632e8b510aa
MD5 2b286c0d7523e29b18ab94715b6160da
BLAKE2b-256 76054299d122385e47512304e33e1ff16450c9d11305f75741054a6b22d4b534

See more details on using hashes here.

File details

Details for the file pennylane_lightning-0.45.0-cp313-cp313-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for pennylane_lightning-0.45.0-cp313-cp313-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 413f82918f0252e1a63031f3a9608f0b35e4e6a97c2046d8976fbef6d011e8a3
MD5 35034d8ff5fa99e80c54c81dbf6f761d
BLAKE2b-256 9a3ec92ad96ce11978874028e8aac9cd335930fb415700572bf8299f1ddf87ac

See more details on using hashes here.

File details

Details for the file pennylane_lightning-0.45.0-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for pennylane_lightning-0.45.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 d4ba86c22d53f92dcfdf668d605c9f74f12613080a4c6ca261092104997607ce
MD5 e9eb36241168426b1c415ab4de4c498b
BLAKE2b-256 f15ef2a5be54003f26d3e628f766e50f1b06f344dce673e695174fe850b09ae4

See more details on using hashes here.

File details

Details for the file pennylane_lightning-0.45.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pennylane_lightning-0.45.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 c90f894f958af07081eda1ba4d112c23f3eae9514fe6d1128d53c8c601a95f15
MD5 e087afd6e5fbc89ae8cd07e5018a54d8
BLAKE2b-256 55a354c7c47c5c4b02bd13345c370459c80492b304975cdedb8148e971a1987d

See more details on using hashes here.

File details

Details for the file pennylane_lightning-0.45.0-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pennylane_lightning-0.45.0-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 d9221aa1019bf38baf32a1ef0cf81b4daf423022d35de1dfe320166e1fa72507
MD5 a69870a1ea9927ee70eb5819ced622ae
BLAKE2b-256 6323cb39e4f2e56c04d27e562b3b730e3735be85f6678c9ef114d067d97c9faf

See more details on using hashes here.

File details

Details for the file pennylane_lightning-0.45.0-cp312-cp312-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for pennylane_lightning-0.45.0-cp312-cp312-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 f43dd51f1e3d62681fd8d8e440c0ff458876fefd695bf38d57e2247b5c6a814f
MD5 ab3e3bb90b4d4a5cf83e1b46598bc780
BLAKE2b-256 196dcf601da59f3c6718123c2f6df393a588a3eeb398a3e382f915dd83be9add

See more details on using hashes here.

File details

Details for the file pennylane_lightning-0.45.0-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for pennylane_lightning-0.45.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 445368b1681efef949a11c973e7e519b39f2ec012068bc4a89fcb23d98945750
MD5 c3e8ea3fb218a64328a29884d1d534c2
BLAKE2b-256 cd4e539f48ec9730a37e0afc3cb8e6637cec2ae94911e7a364e5778afed70f7e

See more details on using hashes here.

File details

Details for the file pennylane_lightning-0.45.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pennylane_lightning-0.45.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 fd23c8aa6543f3c9f701b97d4c19fd4c88549b830b646b747079ff7cb6b1e767
MD5 b8d481339e84dd64662840eee73a14fc
BLAKE2b-256 0248932aaa64bd3e90d352713090f8dd8ea39fc77ef59d49abaf402cb5b24aa5

See more details on using hashes here.

File details

Details for the file pennylane_lightning-0.45.0-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pennylane_lightning-0.45.0-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 1c067f3fda4c337775f21fed041189f561ccbb7ed7a0185d04b5de6e274809a4
MD5 ce5b47872038c3ebd7bbdaf4adfa1e96
BLAKE2b-256 77fe7be347726a2814e812de21bae0d711c5978049efe4f0117da3fb5f09be36

See more details on using hashes here.

File details

Details for the file pennylane_lightning-0.45.0-cp311-cp311-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for pennylane_lightning-0.45.0-cp311-cp311-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 f6457de996eb733bdee8be28e6521efdb64cb5ae9c64a8e40e40a0e21f85550c
MD5 a8a8d7b4c3528df2fc155ef6ff7cfcfb
BLAKE2b-256 ccc33675f0dec694cb83aaa4b86637b5adb9807f92a01bcc5ac83444e0a89bf3

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