{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/hybrid-quantum-programming-with-pennylane","title":"Hybrid quantum programming with PennyLane Lightning on HPC platforms","arxiv_id":"2403.02512","date":"2024-03-04","proceeding":null,"authors":["Ali Asadi","Amintor Dusko","Chae-Yeun Park","Vincent Michaud-Rioux","Isidor Schoch","Shuli Shu","Trevor Vincent","Lee James O'Riordan"],"abstract":"We introduce PennyLane's Lightning suite, a collection of high-performance state-vector simulators targeting CPU, GPU, and HPC-native architectures and workloads. Quantum applications such as QAOA, VQE, and synthetic workloads are implemented to demonstrate the supported classical computing architectures and showcase the scale of problems that can be simulated using our tooling. We benchmark the performance of Lightning with backends supporting CPUs, as well as NVidia and AMD GPUs, and compare the results to other commonly used high-performance simulator packages, demonstrating where Lightning's implementations give performance leads. We show improved CPU performance by employing explicit SIMD intrinsics and multi-threading, batched task-based execution across multiple GPUs, and distributed forward and gradient-based quantum circuit executions across multiple nodes. Our data shows we can comfortably simulate a variety of circuits, giving examples with up to 30 qubits on a single device or node, and up to 41 qubits using multiple nodes.","url_abs":"https://arxiv.org/abs/2403.02512v1","url_pdf":"https://arxiv.org/pdf/2403.02512v1.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"links_only","authors_date_abstract":"arXiv metadata, CC0 1.0 (https://info.arxiv.org/help/license), from the Kaggle arXiv metadata snapshot of 2026-09-12"},"code_links":[{"paper_slug":"hybrid-quantum-programming-with-pennylane","repo_url":"https://github.com/PennyLaneAI/pennylane-lightning","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"none","reach":{"status":"ok","spdx":"Apache-2.0"}},{"paper_slug":"hybrid-quantum-programming-with-pennylane","repo_url":"https://github.com/pennylaneai/lightning-on-hpc","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"none","reach":{"status":"ok","spdx":"Apache-2.0"}}],"tasks":[],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2403.02512","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2403.02512"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-24T18:15:14+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/pennylaneai/lightning-on-hpc","reach":{"status":"ok","spdx":"Apache-2.0"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/PennyLaneAI/pennylane-lightning","reach":{"status":"ok","spdx":"Apache-2.0"}}],"summary":{"ran":5,"unverified":1},"by_repo_kind":{"official":{"samples":6,"ran":5,"repositories":2}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":0,"samples":[{"code_sha256_prefix":"e2262b782491f4f4","entry":"decompose_dense","repo":"PennyLaneAI/pennylane-lightning","repo_kind":"official","path":"pennylane_lightning/lightning_tensor/_tensornet.py","file_url":"https://github.com/PennyLaneAI/pennylane-lightning/blob/HEAD/pennylane_lightning/lightning_tensor/_tensornet.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"e2262b782491f4f4"}},{"code_sha256_prefix":"e3d1f6b76796f6b5","entry":"find_depth","repo":"pennylaneai/lightning-on-hpc","repo_kind":"official","path":"DataCollection/distributed/Perlmutter_LGPU_QAOA/QAOA_QCUT_BATCHED_CUDA12/common_utils.py","file_url":"https://github.com/pennylaneai/lightning-on-hpc/blob/HEAD/DataCollection/distributed/Perlmutter_LGPU_QAOA/QAOA_QCUT_BATCHED_CUDA12/common_utils.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"e3d1f6b76796f6b5"}},{"code_sha256_prefix":"ef9c13cbbdc1e3cd","entry":"gate_matrix_decompose","repo":"PennyLaneAI/pennylane-lightning","repo_kind":"official","path":"pennylane_lightning/lightning_tensor/_tensornet.py","file_url":"https://github.com/PennyLaneAI/pennylane-lightning/blob/HEAD/pennylane_lightning/lightning_tensor/_tensornet.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"ef9c13cbbdc1e3cd"}},{"code_sha256_prefix":"7ec5f3a09ec0af44","entry":"global_phase_diagonal","repo":"PennyLaneAI/pennylane-lightning","repo_kind":"official","path":"pennylane_lightning/lightning_base/_serialize.py","file_url":"https://github.com/PennyLaneAI/pennylane-lightning/blob/HEAD/pennylane_lightning/lightning_base/_serialize.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"7ec5f3a09ec0af44"}},{"code_sha256_prefix":"efd5c96b7d42c07d","entry":"parse_csv","repo":"pennylaneai/lightning-on-hpc","repo_kind":"official","path":"DataCollection/single_node/VQE/lightning_kokkos_openmp/genplot.py","file_url":"https://github.com/pennylaneai/lightning-on-hpc/blob/HEAD/DataCollection/single_node/VQE/lightning_kokkos_openmp/genplot.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"efd5c96b7d42c07d"}},{"code_sha256_prefix":"ae57509f5249e263","entry":"svd_split","repo":"PennyLaneAI/pennylane-lightning","repo_kind":"official","path":"pennylane_lightning/lightning_tensor/_tensornet.py","file_url":"https://github.com/PennyLaneAI/pennylane-lightning/blob/HEAD/pennylane_lightning/lightning_tensor/_tensornet.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"ae57509f5249e263"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}