pennylane-lightning-kokkos 0.42.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- pennylane_lightning_kokkos-0.42.0/.github/CHANGELOG.md +2755 -0
- pennylane_lightning_kokkos-0.42.0/CMakeLists.txt +199 -0
- pennylane_lightning_kokkos-0.42.0/LICENSE +212 -0
- pennylane_lightning_kokkos-0.42.0/MANIFEST.in +9 -0
- pennylane_lightning_kokkos-0.42.0/PKG-INFO +214 -0
- pennylane_lightning_kokkos-0.42.0/README.md +178 -0
- pennylane_lightning_kokkos-0.42.0/cmake/FindCBLAS.cmake +74 -0
- pennylane_lightning_kokkos-0.42.0/cmake/FindMKL.cmake +86 -0
- pennylane_lightning_kokkos-0.42.0/cmake/FindSCIPY_OPENBLAS32.cmake +28 -0
- pennylane_lightning_kokkos-0.42.0/cmake/process_options.cmake +102 -0
- pennylane_lightning_kokkos-0.42.0/cmake/support_catalyst.cmake +74 -0
- pennylane_lightning_kokkos-0.42.0/cmake/support_kokkos.cmake +106 -0
- pennylane_lightning_kokkos-0.42.0/cmake/support_pllgpu.cmake +98 -0
- pennylane_lightning_kokkos-0.42.0/cmake/support_pltensortncuda.cmake +54 -0
- pennylane_lightning_kokkos-0.42.0/cmake/support_simulators.cmake +40 -0
- pennylane_lightning_kokkos-0.42.0/cmake/support_tests.cmake +51 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/CMakeLists.txt +29 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/__init__.py +16 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/__pycache__/__init__.cpython-310.pyc +0 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/__pycache__/_version.cpython-310.pyc +0 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/_version.py +19 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/algorithms/AdjointJacobianBase.hpp +212 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/algorithms/CMakeLists.txt +21 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/algorithms/JacobianData.hpp +394 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/algorithms/tests/CMakeLists.txt +71 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/algorithms/tests/Test_AdjointJacobian.cpp +667 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/algorithms/tests/mpi/Test_AdjointJacobianMPI.cpp +395 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/algorithms/tests/mpi/runner_algorithms_mpi.cpp +10 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/algorithms/tests/runner_algorithms.cpp +2 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/bindings/Bindings.cpp +91 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/bindings/Bindings.hpp +959 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/bindings/BindingsBase.hpp +136 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/bindings/BindingsCudaUtils.hpp +101 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/bindings/BindingsMPI.hpp +581 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/bindings/CMakeLists.txt +11 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/gates/CMakeLists.txt +6 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/gates/Constant.hpp +431 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/gates/GateOperation.hpp +206 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/gates/Gates.hpp +1385 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/measurements/.clang-tidy +233 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/measurements/CMakeLists.txt +17 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/measurements/MeasurementsBase.hpp +524 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/measurements/tests/CMakeLists.txt +68 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/measurements/tests/Test_MeasurementsBase.cpp +1713 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/measurements/tests/mpi/Test_MeasurementsBaseMPI.cpp +1515 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/measurements/tests/mpi/runner_measurements_mpi.cpp +10 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/measurements/tests/runner_measurements.cpp +2 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/observables/CMakeLists.txt +17 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/observables/Observables.hpp +701 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/observables/tests/CMakeLists.txt +67 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/observables/tests/Test_Observables.cpp +684 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/observables/tests/mpi/Test_ObservablesMPI.cpp +626 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/observables/tests/mpi/runner_observables_mpi.cpp +10 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/observables/tests/runner_observables.cpp +2 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/CMakeLists.txt +16 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/base/CMakeLists.txt +17 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/base/StateVectorBase.hpp +207 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/base/tests/CMakeLists.txt +40 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/base/tests/Test_StateVectorBase.cpp +175 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/base/tests/runner_base.cpp +2 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/CMakeLists.txt +90 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/MPIWorker.hpp +311 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/StateVectorCudaBase.hpp +278 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/StateVectorCudaMPI.cpp +19 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/StateVectorCudaMPI.hpp +2244 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/StateVectorCudaManaged.cpp +19 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/StateVectorCudaManaged.hpp +2613 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/algorithms/AdjointJacobianGPU.hpp +358 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/algorithms/AdjointJacobianGPUMPI.hpp +339 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/algorithms/AlgorithmsGPU.cpp +33 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/algorithms/AlgorithmsGPUMPI.cpp +36 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/algorithms/CMakeLists.txt +28 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/algorithms/JacobianDataMPI.hpp +95 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/algorithms/tests/CMakeLists.txt +65 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/algorithms/tests/Test_AdjointJacobianGPU.cpp +721 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/algorithms/tests/mpi/Test_AdjointJacobianGPUMPI.cpp +571 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/algorithms/tests/mpi/runner_lightning_gpu_algorithms_mpi.cpp +10 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/algorithms/tests/runner_lightning_gpu_algorithms.cpp +2 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/bindings/CMakeLists.txt +17 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/bindings/LGPUBindings.hpp +428 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/bindings/LGPUBindingsMPI.hpp +323 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/catalyst/CMakeLists.txt +25 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/catalyst/LightningGPUObsManager.hpp +208 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/catalyst/LightningGPUSimulator.cpp +545 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/catalyst/LightningGPUSimulator.hpp +178 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/catalyst/tests/CMakeLists.txt +39 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/catalyst/tests/Test_LightningGPUGradient.cpp +298 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/catalyst/tests/Test_LightningGPUMeasures.cpp +1948 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/catalyst/tests/Test_LightningGPUSimulator.cpp +811 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/catalyst/tests/runner_lightning_gpu_catalyst.cpp +2 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/gates/CMakeLists.txt +14 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/gates/cuGateCache.cpp +19 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/gates/cuGateCache.hpp +297 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/gates/tests/CMakeLists.txt +70 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/gates/tests/Test_StateVectorCudaManaged_Generators.cpp +2001 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/gates/tests/Test_StateVectorCudaManaged_NonParam.cpp +1509 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/gates/tests/Test_StateVectorCudaManaged_Param.cpp +2243 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/gates/tests/mpi/Test_StateVectorCudaMPI_Generators.cpp +336 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/gates/tests/mpi/Test_StateVectorCudaMPI_NonParam.cpp +403 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/gates/tests/mpi/Test_StateVectorCudaMPI_Param.cpp +397 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/gates/tests/mpi/mpi_runner_lightning_gpu_gates.cpp +10 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/gates/tests/runner_lightning_gpu_gates.cpp +2 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/initSV.cu +158 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/measurements/CMakeLists.txt +22 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/measurements/MeasurementsGPU.hpp +855 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/measurements/MeasurementsGPUMPI.hpp +798 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/measurements/tests/CMakeLists.txt +69 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/measurements/tests/Test_StateVectorCudaManaged_Expval.cpp +390 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/measurements/tests/Test_StateVectorCudaManaged_Measure.cpp +277 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/measurements/tests/Test_StateVectorCudaManaged_Var.cpp +159 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/measurements/tests/mpi/Test_StateVectorCudaMPI_Expval.cpp +485 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/measurements/tests/mpi/Test_StateVectorCudaMPI_Measure.cpp +459 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/measurements/tests/mpi/Test_StateVectorCudaMPI_Var.cpp +252 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/measurements/tests/mpi/runner_lightning_gpu_measurements_mpi.cpp +10 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/measurements/tests/runner_lightning_gpu_measurements.cpp +2 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/observables/CMakeLists.txt +31 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/observables/ObservablesGPU.cpp +33 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/observables/ObservablesGPU.hpp +296 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/observables/ObservablesGPUMPI.cpp +33 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/observables/ObservablesGPUMPI.hpp +314 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/observables/tests/CMakeLists.txt +60 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/observables/tests/Test_ObservablesGPU.cpp +305 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/observables/tests/mpi/Test_ObservablesGPUMPI.cpp +353 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/observables/tests/mpi/runner_lightning_gpu_observables_mpi.cpp +10 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/observables/tests/runner_lightning_gpu_observables.cpp +2 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/tests/CMakeLists.txt +65 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/tests/Test_StateVectorCudaManaged.cpp +303 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/tests/mpi/Test_StateVectorCudaMPI.cpp +321 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/tests/mpi/runner_lightning_gpu_mpi.cpp +10 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/tests/runner_lightning_gpu.cpp +2 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/utils/CMakeLists.txt +13 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/utils/CSRMatrix.hpp +214 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/utils/MPILinearAlg.hpp +119 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/utils/MPIManagerGPU.hpp +170 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/utils/MPI_helpers.hpp +165 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/utils/TestHelpersStateVectors.hpp +42 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/utils/TestHelpersStateVectorsMPI.hpp +42 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/utils/cuStateVecError.hpp +97 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/utils/cuStateVec_helpers.hpp +166 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/utils/tests/CMakeLists.txt +68 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/utils/tests/Test_LinearAlgebra.cpp +120 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/utils/tests/mpi/Test_CSRMatrix.cpp +157 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/utils/tests/mpi/Test_LinearAlgebraMPI.cpp +129 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/utils/tests/mpi/Test_MPIManagerGPU.cpp +418 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/utils/tests/mpi/runner_lightning_gpu_utils_mpi.cpp +10 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_gpu/utils/tests/runner_lightning_gpu_utils.cpp +2 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/CMakeLists.txt +98 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/StateVectorKokkos.cpp +23 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/StateVectorKokkos.hpp +941 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/StateVectorKokkosMPI.cpp +23 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/StateVectorKokkosMPI.hpp +1490 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/algorithms/AdjointJacobianKokkos.hpp +184 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/algorithms/AdjointJacobianKokkosMPI.hpp +190 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/algorithms/AlgorithmsKokkos.cpp +33 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/algorithms/AlgorithmsKokkosMPI.cpp +32 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/algorithms/CMakeLists.txt +25 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/algorithms/tests/CMakeLists.txt +66 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/algorithms/tests/Test_AdjointJacobianKokkos.cpp +187 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/algorithms/tests/mpi/Test_AdjointJacobianKokkosMPI.cpp +119 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/algorithms/tests/mpi/runner_lightning_kokkos_algorithms_mpi.cpp +10 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/algorithms/tests/runner_lightning_kokkos_algorithms.cpp +2 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/bindings/CMakeLists.txt +16 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/bindings/LKokkosBindings.hpp +494 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/bindings/LKokkosBindingsMPI.hpp +353 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/catalyst/CMakeLists.txt +52 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/catalyst/LightningKokkosObsManager.hpp +208 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/catalyst/LightningKokkosSimulator.cpp +572 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/catalyst/LightningKokkosSimulator.hpp +180 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/catalyst/tests/CMakeLists.txt +39 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/catalyst/tests/Test_LightningKokkosGradient.cpp +298 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/catalyst/tests/Test_LightningKokkosMeasures.cpp +1948 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/catalyst/tests/Test_LightningKokkosSimulator.cpp +791 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/catalyst/tests/runner_lightning_kokkos_catalyst.cpp +2 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/gates/BasicGateFunctors.hpp +2173 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/gates/BasicGeneratorFunctors.hpp +1133 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/gates/CMakeLists.txt +14 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/gates/GateFunctors.hpp +18 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/gates/MatrixGateFunctors.hpp +778 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/gates/README.md +149 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/gates/tests/CMakeLists.txt +72 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/gates/tests/Test_StateVectorKokkos_Generator.cpp +797 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/gates/tests/Test_StateVectorKokkos_NonParam.cpp +1689 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/gates/tests/Test_StateVectorKokkos_Param.cpp +2797 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/gates/tests/mpi/Test_StateVectorKokkosMPI_Generator.cpp +243 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/gates/tests/mpi/Test_StateVectorKokkosMPI_NonParam.cpp +716 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/gates/tests/mpi/Test_StateVectorKokkosMPI_Param.cpp +425 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/gates/tests/mpi/runner_lightning_kokkos_gates_mpi.cpp +10 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/gates/tests/runner_lightning_kokkos_gates.cpp +2 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/measurements/CMakeLists.txt +21 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/measurements/ExpValFunctors.hpp +717 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/measurements/MeasurementsKokkos.hpp +779 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/measurements/MeasurementsKokkosMPI.hpp +672 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/measurements/MeasuresFunctors.hpp +726 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/measurements/tests/CMakeLists.txt +73 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/measurements/tests/Test_StateVectorKokkos_Expval.cpp +598 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/measurements/tests/Test_StateVectorKokkos_Measure.cpp +826 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/measurements/tests/Test_StateVectorKokkos_Var.cpp +162 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/measurements/tests/mpi/Test_StateVectorKokkosMPI_Measure.cpp +850 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/measurements/tests/mpi/runner_lightning_kokkos_measurements_mpi.cpp +10 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/measurements/tests/runner_lightning_kokkos_measurements.cpp +2 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/observables/CMakeLists.txt +29 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/observables/ObservablesKokkos.cpp +33 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/observables/ObservablesKokkos.hpp +303 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/observables/ObservablesKokkosMPI.cpp +30 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/observables/ObservablesKokkosMPI.hpp +208 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/observables/tests/CMakeLists.txt +63 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/observables/tests/Test_ObservablesKokkos.cpp +229 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/observables/tests/mpi/Test_ObservablesKokkosMPI.cpp +218 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/observables/tests/mpi/runner_lightning_kokkos_observables_mpi.cpp +10 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/observables/tests/runner_lightning_kokkos_observables.cpp +2 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/tests/CMakeLists.txt +63 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/tests/Test_StateVectorLKokkos.cpp +612 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/tests/mpi/Test_StateVectorKokkosMPI.cpp +1184 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/tests/mpi/runner_lightning_kokkos_mpi.cpp +10 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/tests/runner_lightning_kokkos.cpp +2 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/utils/CMakeLists.txt +15 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/utils/LinearAlgebraKokkos.hpp +229 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/utils/MPIManagerKokkos.hpp +157 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/utils/TestHelpersStateVectors.hpp +136 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/utils/UtilKokkos.hpp +238 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/utils/tests/CMakeLists.txt +63 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/utils/tests/Test_LinearAlgebra.cpp +119 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/utils/tests/mpi/Test_MPIManagerKokkos.cpp +181 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/utils/tests/mpi/runner_lightning_kokkos_utils_mpi.cpp +13 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_kokkos/utils/tests/runner_lightning_kokkos_utils.cpp +2 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/CMakeLists.txt +106 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/StateVectorLQubit.hpp +1035 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/StateVectorLQubitManaged.cpp +23 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/StateVectorLQubitManaged.hpp +189 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/StateVectorLQubitRaw.cpp +23 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/StateVectorLQubitRaw.hpp +141 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/algorithms/AdjointJacobianLQubit.hpp +355 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/algorithms/AlgorithmsLQubit.cpp +51 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/algorithms/CMakeLists.txt +22 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/algorithms/VectorJacobianProduct.hpp +165 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/algorithms/tests/CMakeLists.txt +40 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/algorithms/tests/Test_AdjointJacobianLQubit.cpp +102 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/algorithms/tests/Test_VectorJacobianProduct.cpp +399 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/algorithms/tests/runner_lightning_qubit_algorithms.cpp +2 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/bindings/CMakeLists.txt +17 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/bindings/LQubitBindings.hpp +534 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/catalyst/CMakeLists.txt +27 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/catalyst/LightningObsManager.hpp +207 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/catalyst/LightningSimulator.cpp +568 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/catalyst/LightningSimulator.hpp +179 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/catalyst/tests/CMakeLists.txt +40 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/catalyst/tests/Test_LightningDriver.cpp +173 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/catalyst/tests/Test_LightningGradient.cpp +356 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/catalyst/tests/Test_LightningMeasures.cpp +1957 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/catalyst/tests/Test_LightningSimulator.cpp +704 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/catalyst/tests/runner_lightning_qubit_catalyst.cpp +2 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/AssignKernelMap_AVX2.cpp +97 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/AssignKernelMap_AVX2.hpp +28 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/AssignKernelMap_AVX512.cpp +98 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/AssignKernelMap_AVX512.hpp +28 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/AssignKernelMap_Default.cpp +420 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/AssignKernelMap_Default.hpp +25 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/CMakeLists.txt +73 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/DynamicDispatcher.hpp +1054 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/GateIndices.cpp +83 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/GateIndices.hpp +100 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/KernelMap.hpp +448 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/KernelMap_Default.cpp +56 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/KernelMap_X64.cpp +107 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/KernelType.hpp +29 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/OpToMemberFuncPtr.hpp +1310 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/RegisterKernel.hpp +591 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/RegisterKernels_AVX2.cpp +29 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/RegisterKernels_AVX512.cpp +29 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/RegisterKernels_Default.cpp +32 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/RegisterKernels_x64.cpp +50 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/RegisterKernels_x64.hpp +24 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/cpu_kernels/GateImplementationsAVX2.hpp +95 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/cpu_kernels/GateImplementationsAVX512.hpp +108 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/cpu_kernels/GateImplementationsAVXCommon.hpp +637 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/cpu_kernels/GateImplementationsLM.cpp +667 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/cpu_kernels/GateImplementationsLM.hpp +2929 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/cpu_kernels/GatePragmas.hpp +36 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/cpu_kernels/PauliGenerator.hpp +61 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/cpu_kernels/avx_common/AVX2Concept.hpp +179 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/cpu_kernels/avx_common/AVX512Concept.hpp +185 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/cpu_kernels/avx_common/AVXConceptType.hpp +55 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/cpu_kernels/avx_common/AVXGateKernels.hpp +46 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/cpu_kernels/avx_common/AVXUtil.hpp +339 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/cpu_kernels/avx_common/ApplyCNOT.hpp +195 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/cpu_kernels/avx_common/ApplyCRX.hpp +332 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/cpu_kernels/avx_common/ApplyCRY.hpp +333 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/cpu_kernels/avx_common/ApplyCRZ.hpp +323 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/cpu_kernels/avx_common/ApplyCY.hpp +302 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/cpu_kernels/avx_common/ApplyCZ.hpp +107 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/cpu_kernels/avx_common/ApplyControlledPhaseShift.hpp +238 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/cpu_kernels/avx_common/ApplyGeneratorIsingXX.hpp +129 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/cpu_kernels/avx_common/ApplyGeneratorIsingYY.hpp +140 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/cpu_kernels/avx_common/ApplyGeneratorIsingZZ.hpp +129 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/cpu_kernels/avx_common/ApplyGeneratorPhaseShift.hpp +83 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/cpu_kernels/avx_common/ApplyHadamard.hpp +90 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/cpu_kernels/avx_common/ApplyIsingXX.hpp +175 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/cpu_kernels/avx_common/ApplyIsingXY.hpp +277 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/cpu_kernels/avx_common/ApplyIsingYY.hpp +195 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/cpu_kernels/avx_common/ApplyIsingZZ.hpp +164 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/cpu_kernels/avx_common/ApplyPauliX.hpp +72 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/cpu_kernels/avx_common/ApplyPauliY.hpp +85 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/cpu_kernels/avx_common/ApplyPauliZ.hpp +68 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/cpu_kernels/avx_common/ApplyPhaseShift.hpp +141 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/cpu_kernels/avx_common/ApplyRX.hpp +96 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/cpu_kernels/avx_common/ApplyRY.hpp +96 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/cpu_kernels/avx_common/ApplyRZ.hpp +101 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/cpu_kernels/avx_common/ApplyS.hpp +113 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/cpu_kernels/avx_common/ApplySWAP.hpp +170 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/cpu_kernels/avx_common/ApplySingleQubitOp.hpp +171 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/cpu_kernels/avx_common/ApplyT.hpp +136 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/cpu_kernels/avx_common/Blender.hpp +105 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/cpu_kernels/avx_common/Permutation.hpp +390 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/cpu_kernels/avx_common/README.md +12 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/cpu_kernels/avx_common/SingleQubitGateHelper.hpp +241 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/cpu_kernels/avx_common/TwoQubitGateHelper.hpp +578 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/tests/CMakeLists.txt +66 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/tests/README.md +10 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/tests/TestConstant.hpp +117 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/tests/Test_AVXSingleQubitGateHelpers.cpp +363 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/tests/Test_AVXTwoQubitGateHelpers.cpp +917 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/tests/Test_DynamicDispatcher.cpp +235 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/tests/Test_GateImplementations_CompareKernels.cpp +461 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/tests/Test_GateImplementations_Generator.cpp +308 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/tests/Test_GateImplementations_Inverse.cpp +92 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/tests/Test_GateImplementations_Matrix.cpp +1125 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/tests/Test_GateImplementations_Nonparam.cpp +945 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/tests/Test_GateImplementations_Param.cpp +3137 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/tests/Test_GateImplementations_Sparse_Matrix.cpp +409 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/tests/Test_GateIndices.cpp +100 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/tests/Test_Internal.cpp +153 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/tests/Test_KernelMap.cpp +241 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/tests/Test_OpToMemberFuncPtr.cpp +309 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/tests/compile_time_tests.cpp +21 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/gates/tests/runner_lightning_qubit_gates.cpp +2 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/measurements/CMakeLists.txt +20 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/measurements/ExpValFunc.hpp +324 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/measurements/MeasurementKernels.hpp +489 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/measurements/MeasurementsLQubit.hpp +769 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/measurements/TransitionKernels.cpp +33 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/measurements/TransitionKernels.hpp +163 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/measurements/tests/CMakeLists.txt +41 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/measurements/tests/Test_MeasurementsLQubit.cpp +982 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/measurements/tests/Test_MeasurementsLQubitSparse.cpp +101 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/measurements/tests/runner_lightning_qubit_measurements.cpp +2 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/observables/CMakeLists.txt +25 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/observables/ObservablesLQubit.cpp +49 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/observables/ObservablesLQubit.hpp +438 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/observables/tests/CMakeLists.txt +37 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/observables/tests/Test_ObservablesLQubit.cpp +237 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/observables/tests/runner_lightning_qubit_observables.cpp +2 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/tests/CMakeLists.txt +39 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/tests/Test_StateVectorLQubit.cpp +375 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/tests/Test_StateVectorLQubitManaged.cpp +167 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/tests/runner_lightning_qubit.cpp +2 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/utils/CMakeLists.txt +15 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/utils/IntegerInterval.hpp +115 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/utils/LinearAlgebra.hpp +866 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/utils/SparseLinAlg.hpp +59 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/utils/TestHelpersStateVectors.hpp +49 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/utils/Threading.hpp +75 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/utils/tests/CMakeLists.txt +38 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/utils/tests/Test_LinearAlgebra.cpp +856 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/utils/tests/Test_SparseLinAlg.cpp +86 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_qubit/utils/tests/runner_lightning_qubit_utils.cpp +2 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/CMakeLists.txt +23 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tensor/CMakeLists.txt +20 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tensor/base/CMakeLists.txt +10 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tensor/base/TensorBase.hpp +98 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tensor/tncuda/CMakeLists.txt +14 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tensor/tncuda/TensorCuda.hpp +111 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tensor/tncuda/tests/CMakeLists.txt +38 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tensor/tncuda/tests/Tests_TensorCuda.cpp +70 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tensor/tncuda/tests/runner_lightning_tensor_TensorCuda.cpp +2 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tncuda/CMakeLists.txt +77 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tncuda/ExactTNCuda.cpp +19 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tncuda/ExactTNCuda.hpp +70 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tncuda/MPOTNCuda.cpp +20 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tncuda/MPOTNCuda.hpp +215 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tncuda/MPSTNCuda.cpp +19 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tncuda/MPSTNCuda.hpp +215 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tncuda/TNCuda.hpp +825 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tncuda/base/CMakeLists.txt +17 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tncuda/base/TNCudaBase.hpp +168 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tncuda/base/tests/CMakeLists.txt +38 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tncuda/base/tests/Tests_TNCudaBase.cpp +52 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tncuda/base/tests/runner_lightning_tensor_TNCudaBase.cpp +2 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tncuda/bindings/CMakeLists.txt +18 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tncuda/bindings/LTensorTNCudaBindings.hpp +290 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tncuda/gates/CMakeLists.txt +15 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tncuda/gates/TNCudaGateCache.hpp +195 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tncuda/gates/tests/CMakeLists.txt +38 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tncuda/gates/tests/Test_TNCuda_MPO.cpp +231 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tncuda/gates/tests/Test_TNCuda_NonParam.cpp +727 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tncuda/gates/tests/Test_TNCuda_Param.cpp +1449 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tncuda/gates/tests/runner_lightning_tensor_gates.cpp +2 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tncuda/measurements/CMakeLists.txt +26 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tncuda/measurements/MeasurementsTNCuda.hpp +429 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tncuda/measurements/cuda_kernels_measures.cu +161 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tncuda/measurements/tests/CMakeLists.txt +41 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tncuda/measurements/tests/Test_TNCuda_Expval.cpp +440 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tncuda/measurements/tests/Test_TNCuda_Measure.cpp +163 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tncuda/measurements/tests/Test_TNCuda_Var.cpp +354 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tncuda/measurements/tests/runner_lightning_tensor_measurements.cpp +2 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tncuda/observables/CMakeLists.txt +27 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tncuda/observables/ObservablesTNCuda.cpp +49 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tncuda/observables/ObservablesTNCuda.hpp +568 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tncuda/observables/ObservablesTNCudaOperator.cpp +24 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tncuda/observables/ObservablesTNCudaOperator.hpp +550 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tncuda/observables/tests/CMakeLists.txt +38 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tncuda/observables/tests/Test_Observables_TNCuda.cpp +469 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tncuda/observables/tests/Test_Observables_TNCudaOperators.cpp +65 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tncuda/observables/tests/runner_lightning_tensor_observables.cpp +2 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tncuda/tests/CMakeLists.txt +35 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tncuda/tests/Tests_MPSTNCuda.cpp +476 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tncuda/tests/runner_lightning_tensor_MPSTNCuda.cpp +2 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tncuda/utils/CMakeLists.txt +23 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tncuda/utils/mps/CMakeLists.txt +9 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tncuda/utils/mps/TestHelpersMPSTNCuda.hpp +40 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tncuda/utils/tn/CMakeLists.txt +9 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/tncuda/utils/tn/TestHelpersTNCuda.hpp +72 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/utils/CMakeLists.txt +21 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/utils/tncuda_utils/CMakeLists.txt +13 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/utils/tncuda_utils/tests/CMakeLists.txt +33 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/utils/tncuda_utils/tests/Test_TNCuda_utils.cpp +76 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/utils/tncuda_utils/tests/runner_lightning_tensor_tncuda_utils.cpp +2 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/utils/tncuda_utils/tncudaError.hpp +58 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/simulators/lightning_tensor/utils/tncuda_utils/tncuda_helpers.hpp +126 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/utils/BLASLibLoaderManager.hpp +92 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/utils/BitUtil.hpp +125 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/utils/CMakeLists.txt +34 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/utils/CPUMemoryModel.hpp +126 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/utils/ConstantTestHelpers.hpp +123 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/utils/ConstantUtil.hpp +196 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/utils/Error.hpp +140 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/utils/MPIManager.hpp +813 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/utils/Macros.hpp +247 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/utils/Memory.hpp +220 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/utils/RuntimeInfo.cpp +132 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/utils/RuntimeInfo.hpp +78 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/utils/SharedLibLoader.hpp +79 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/utils/TestHelpers.hpp +646 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/utils/TestHelpersSparse.hpp +343 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/utils/TestHelpersWires.hpp +229 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/utils/TestKernels.hpp +28 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/utils/TypeList.hpp +100 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/utils/TypeTraits.hpp +65 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/utils/Util.hpp +653 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/utils/UtilLinearAlg.cpp +31 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/utils/UtilLinearAlg.hpp +113 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/utils/cuda_utils/CMakeLists.txt +13 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/utils/cuda_utils/DataBuffer.hpp +312 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/utils/cuda_utils/DevTag.hpp +79 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/utils/cuda_utils/DevicePool.hpp +157 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/utils/cuda_utils/LinearAlg.hpp +620 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/utils/cuda_utils/TSQueue.hpp +103 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/utils/cuda_utils/cuError.hpp +150 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/utils/cuda_utils/cuGates_host.hpp +1908 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/utils/cuda_utils/cuda_helpers.hpp +421 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/utils/cuda_utils/tests/CMakeLists.txt +37 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/utils/cuda_utils/tests/Test_LinearAlgebra.cpp +120 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/utils/cuda_utils/tests/runner_cuda_utils.cpp +2 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/utils/tests/CMakeLists.txt +67 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/utils/tests/Test_BitUtil.cpp +78 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/utils/tests/Test_ConstantUtil.cpp +101 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/utils/tests/Test_Error.cpp +63 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/utils/tests/Test_RuntimeInfo.cpp +32 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/utils/tests/Test_TestHelpersSparse.cpp +155 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/utils/tests/Test_TypeTraits.cpp +70 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/utils/tests/Test_Util.cpp +331 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/utils/tests/Test_UtilLinearAlg.cpp +59 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/utils/tests/mpi/Test_MPIManager.cpp +315 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/utils/tests/mpi/runner_utils_mpi.cpp +10 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/core/utils/tests/runner_utils.cpp +2 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/lightning_gpu/lightning_gpu.toml +131 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/lightning_kokkos/__init__.py +18 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/lightning_kokkos/_adjoint_jacobian.py +137 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/lightning_kokkos/_measurements.py +97 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/lightning_kokkos/_state_vector.py +340 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/lightning_kokkos/lightning_kokkos.py +459 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/lightning_kokkos/lightning_kokkos.toml +131 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning/lightning_qubit/lightning_qubit.toml +131 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning_kokkos.egg-info/PKG-INFO +214 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning_kokkos.egg-info/SOURCES.txt +510 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning_kokkos.egg-info/dependency_links.txt +1 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning_kokkos.egg-info/entry_points.txt +2 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning_kokkos.egg-info/requires.txt +12 -0
- pennylane_lightning_kokkos-0.42.0/pennylane_lightning_kokkos.egg-info/top_level.txt +2 -0
- pennylane_lightning_kokkos-0.42.0/pyproject.toml +50 -0
- pennylane_lightning_kokkos-0.42.0/requirements.txt +20 -0
- pennylane_lightning_kokkos-0.42.0/setup.cfg +4 -0
- pennylane_lightning_kokkos-0.42.0/setup.py +194 -0
- pennylane_lightning_kokkos-0.42.0/tests/test_adjoint_jacobian.py +1561 -0
- pennylane_lightning_kokkos-0.42.0/tests/test_apply.py +899 -0
- pennylane_lightning_kokkos-0.42.0/tests/test_arrays.py +36 -0
- pennylane_lightning_kokkos-0.42.0/tests/test_binary_info.py +42 -0
- pennylane_lightning_kokkos-0.42.0/tests/test_comparison.py +307 -0
- pennylane_lightning_kokkos-0.42.0/tests/test_device.py +226 -0
- pennylane_lightning_kokkos-0.42.0/tests/test_eval_jaxpr.py +849 -0
- pennylane_lightning_kokkos-0.42.0/tests/test_execute.py +88 -0
- pennylane_lightning_kokkos-0.42.0/tests/test_expval.py +325 -0
- pennylane_lightning_kokkos-0.42.0/tests/test_gates.py +933 -0
- pennylane_lightning_kokkos-0.42.0/tests/test_jaxpr_jvp.py +456 -0
- pennylane_lightning_kokkos-0.42.0/tests/test_measurements.py +601 -0
- pennylane_lightning_kokkos-0.42.0/tests/test_measurements_sparse.py +143 -0
- pennylane_lightning_kokkos-0.42.0/tests/test_native_mcm.py +646 -0
- pennylane_lightning_kokkos-0.42.0/tests/test_serialize.py +988 -0
- pennylane_lightning_kokkos-0.42.0/tests/test_serialize_chunk_obs.py +57 -0
- pennylane_lightning_kokkos-0.42.0/tests/test_serialize_no_binaries.py +30 -0
- pennylane_lightning_kokkos-0.42.0/tests/test_templates.py +854 -0
- pennylane_lightning_kokkos-0.42.0/tests/test_var.py +124 -0
- pennylane_lightning_kokkos-0.42.0/tests/test_vjp.py +341 -0
@@ -0,0 +1,2755 @@
|
|
1
|
+
# Release 0.42.0
|
2
|
+
|
3
|
+
<h3>New features since last release</h3>
|
4
|
+
|
5
|
+
- Added distributed simulation using MPI to the `lightning.kokkos` device,
|
6
|
+
enabling larger quantum circuits by distributing workloads across multiple CPUs or GPUs.
|
7
|
+
[(#1114)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1114)
|
8
|
+
|
9
|
+
- Mid-circuit measurements using the tree-traversal algorithm are now supported
|
10
|
+
in the `lightning.qubit`, `lightning.kokkos` and `lightning.gpu` devices,
|
11
|
+
providing both significant memory savings and sampling efficiency!
|
12
|
+
[(#1166)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1166)
|
13
|
+
|
14
|
+
<h3>Improvements 🛠</h3>
|
15
|
+
|
16
|
+
- Lightning devices can now accept a `seed` argument to enable deterministic shots measurements.
|
17
|
+
[(#1171)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1171)
|
18
|
+
|
19
|
+
- PennyLane-Lightning is compatible with JAX version 0.5.3+.
|
20
|
+
[(#1152)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1152)
|
21
|
+
[(#1161)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1161)
|
22
|
+
|
23
|
+
- Refactored `MPIManager` class from `lightning.gpu` to base class.
|
24
|
+
[(#1162)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1162)
|
25
|
+
|
26
|
+
<h3>Breaking changes 💔</h3>
|
27
|
+
|
28
|
+
- The `LightningBaseStateVector`, `LightningBaseAdjointJacobian`, `LightningBaseMeasurements`,
|
29
|
+
`LightningInterpreter` and `QuantumScriptSerializer` base classes now can be found at `pennylane_lightning.lightning_base`.
|
30
|
+
The new `lightning_base` module further enables the relocation of core files from `pennylane_lightning/core/src/*` to `pennylane_lightning/core/*`.
|
31
|
+
The license classifier and `project.license` as a TOML table are deprecated in favor of a SPDX license expression and removed in `pyproject.toml`.
|
32
|
+
To speedup the recompilation of C++ source code, `ccache` is also added to `Makefile`.
|
33
|
+
[(#1098)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1098)
|
34
|
+
|
35
|
+
- Updated `pyproject` to adhere to PyPA binary distribution format for built wheels.
|
36
|
+
[(#1193)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1193)
|
37
|
+
|
38
|
+
<h3>Deprecations 👋</h3>
|
39
|
+
|
40
|
+
- Added and subsequently removed native support for `MultiControlledX` gates in `lightning.tensor`.
|
41
|
+
[(#1169)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1169)
|
42
|
+
[(#1183)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1183)
|
43
|
+
|
44
|
+
<h3>Documentation 📝</h3>
|
45
|
+
|
46
|
+
- Converted the `README` to markdown (as in the `pennylane` and `catalyst` repositories), and added a header image.
|
47
|
+
[(#1139)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1139)
|
48
|
+
[(#1141)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1141)
|
49
|
+
[(#1142)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1142)
|
50
|
+
|
51
|
+
- Edited and prepared `CHANGELOG.md` for the release `v0.42.0`.
|
52
|
+
[(#1199)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1199)
|
53
|
+
[(#1204)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1204)
|
54
|
+
|
55
|
+
- Fixed typo in `lightning.gpu` documentation adjoint-jacobian section.
|
56
|
+
[(#1179)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1179)
|
57
|
+
|
58
|
+
<h3>Bug fixes 🐛</h3>
|
59
|
+
|
60
|
+
- Fixed the implementation of multi-controlled gates with a single target wire for arbitrary control values in `lightning.tensor`.
|
61
|
+
[(#1169)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1169)
|
62
|
+
|
63
|
+
- Updated requirements to only download JAX version 0.5.3 for non-X86 MacOS.
|
64
|
+
[(#1163)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1163)
|
65
|
+
|
66
|
+
- Fixed Docker build for `lighting.kokkos` with ROCM library for AMD GPUs. Updated ROCM from 5.7 to 6.2.4.
|
67
|
+
[(#1158)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1158)
|
68
|
+
|
69
|
+
- Fixed use of Torch with `AmplitudeEmbedding` by applying `qml.broadcast_expand` before decomposition in the preprocessing stage.
|
70
|
+
[(#1175)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1175)
|
71
|
+
|
72
|
+
<h3>Internal changes ⚙️</h3>
|
73
|
+
|
74
|
+
- Updated tests with `device(..., shots=...)` to use `qml.set_shots` to ensure compatibility with the latest version of PennyLane.
|
75
|
+
[(#1173)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1173)
|
76
|
+
|
77
|
+
- Fixed `applyMultiRZ` for `lightning.kokkos` device to use Kokkos function instead of lambda.
|
78
|
+
[(#1194)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1194)
|
79
|
+
|
80
|
+
- Enabled `AmplitudeEmbedding` Python tests for `lightning.kokkos` and `lightning.gpu` devices.
|
81
|
+
[(#1192)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1192)
|
82
|
+
|
83
|
+
- Updated docker build CI for stable version to use v0.41.1.
|
84
|
+
[(#1188)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1188)
|
85
|
+
|
86
|
+
- Removed flaky tests and added random seeding to measurement tests.
|
87
|
+
[(#1172)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1172)
|
88
|
+
[(#1196)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1196)
|
89
|
+
|
90
|
+
- Improved CI to use local catalyst repository instead of fetching on Github CI.
|
91
|
+
[(#1164)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1164)
|
92
|
+
|
93
|
+
- Updated the Lightning build dependencies.
|
94
|
+
[(#1168)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1168)
|
95
|
+
|
96
|
+
- Updated dev requirements to use JAX version 0.6.0 for CI tests.
|
97
|
+
[(#1161)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1161)
|
98
|
+
|
99
|
+
- Updated stable requirements to use JAX version 0.4.28 for CI tests.
|
100
|
+
[(#1160)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1160)
|
101
|
+
|
102
|
+
- Bumped `readthedocs` Github action runner to use Ubuntu-24.04.
|
103
|
+
[(#1151)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1151)
|
104
|
+
|
105
|
+
- Updated the `clang-format` and `clang-tidy` versions to v20 for compatibility with Catalyst.
|
106
|
+
[(#1153)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1153)
|
107
|
+
|
108
|
+
- Removed `max_workers` argument for `default.qubit` device in Python tests to reduce CI testing time.
|
109
|
+
[(##1174)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1174)
|
110
|
+
|
111
|
+
- Bumped Github action runner to use `Ubuntu-24.04` or `Ubuntu-latest`.
|
112
|
+
Fixed all `ubuntu-latest` action runners to `ubuntu-24.04`.
|
113
|
+
[(#1167)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1167)
|
114
|
+
|
115
|
+
- Merged the `v0.41.0-rc` branch to the `master` and bumped the version.
|
116
|
+
[(#1132)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1132)
|
117
|
+
|
118
|
+
<h3>Contributors ✍️</h3>
|
119
|
+
|
120
|
+
This release contains contributions from (in alphabetical order):
|
121
|
+
|
122
|
+
Runor Agbaire,
|
123
|
+
Ali Asadi,
|
124
|
+
Yushao Chen,
|
125
|
+
Christina Lee,
|
126
|
+
Joseph Lee,
|
127
|
+
Mehrdad Malekmohammadi,
|
128
|
+
Anton Naim Ibrahim,
|
129
|
+
Luis Alfredo Nuñez Meneses,
|
130
|
+
Mudit Pandey,
|
131
|
+
Shuli Shu,
|
132
|
+
Marc Vandelle,
|
133
|
+
Jake Zaia
|
134
|
+
|
135
|
+
---
|
136
|
+
|
137
|
+
# Release 0.41.1
|
138
|
+
|
139
|
+
<h3>Breaking changes 💔</h3>
|
140
|
+
|
141
|
+
- Build Catalyst Lightning plugins against Catalyst Runtime v0.11.0.
|
142
|
+
[(#1148)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1148)
|
143
|
+
|
144
|
+
<h3>Documentation 📝</h3>
|
145
|
+
|
146
|
+
- `pennylane.ai` search is enabled, so users are redirected to the PennyLane search page from the PennyLane-Lightning docs.
|
147
|
+
[(#1135)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1135)
|
148
|
+
|
149
|
+
- Fix doxygen doc builds for `AVXCommon::FuncReturn`.
|
150
|
+
[(#1134)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1134)
|
151
|
+
|
152
|
+
- Move the installation sections from `README.rst` to dedicated pages.
|
153
|
+
[(#1131)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1131)
|
154
|
+
|
155
|
+
<h3>Internal changes ⚙️</h3>
|
156
|
+
|
157
|
+
- Updates for depending deprecations to `Observable`, `is_trainable`, and `AnyWires` in pennylane.
|
158
|
+
[(#1138)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1138)
|
159
|
+
[(#1146)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1146)
|
160
|
+
|
161
|
+
- Improve performance of computing expectation values of Pauli Sentences for `lightning.kokkos`.
|
162
|
+
[(#1126)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1126)
|
163
|
+
|
164
|
+
- Import custom PennyLane errors from `pennylane.exceptions` rather than top-level.
|
165
|
+
[(#1122)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1122)
|
166
|
+
|
167
|
+
- Added flags to all Codecov reports and a default carryforward flag for all flags.
|
168
|
+
[(1144)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1144)
|
169
|
+
|
170
|
+
- All Catalyst plugins have been updated to be compatible with the next version of Catalyst (v0.12) with changes to the `QuantumDevice` interface.
|
171
|
+
[(#1143)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1143)
|
172
|
+
[(#1147)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1147)
|
173
|
+
|
174
|
+
<h3>Contributors ✍️</h3>
|
175
|
+
|
176
|
+
This release contains contributions from (in alphabetical order):
|
177
|
+
|
178
|
+
Ali Asadi,
|
179
|
+
Amintor Dusko,
|
180
|
+
Andrew Gardhouse,
|
181
|
+
David Ittah,
|
182
|
+
Joseph Lee,
|
183
|
+
Anton Naim Ibrahim,
|
184
|
+
Luis Alfredo Nuñez Meneses,
|
185
|
+
Andrija Paurevic,
|
186
|
+
|
187
|
+
---
|
188
|
+
|
189
|
+
# Release 0.41.0
|
190
|
+
|
191
|
+
### New features since last release
|
192
|
+
|
193
|
+
* Add native support for `qml.PCPhase` for `lightning.qubit` and `lightning.gpu`.
|
194
|
+
[(#1107)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1107)
|
195
|
+
|
196
|
+
* Integrate sparse kernels into the Lightning-Qubit dynamic dispatcher, enhance the Python layers, and expand the testing process for dense and sparse operations.
|
197
|
+
[(#1094)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1094)
|
198
|
+
|
199
|
+
* Add `PSWAP` gate native implementation to PennyLane-Lightning devices.
|
200
|
+
[(#1088)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1088)
|
201
|
+
|
202
|
+
* Implement new C++ kernels for efficient in-place multiplication of sparse matrices to state vectors, supporting both controlled and non-controlled gates, and add comprehensive tests for this new functionality.
|
203
|
+
[(#1085)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1085)
|
204
|
+
|
205
|
+
* Add support for sparse `qml.QubitUnitary` gates for Lightning state-vector simulators.
|
206
|
+
[(#1068)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1068)
|
207
|
+
|
208
|
+
* Lightning devices support dynamically allocated wires (e.g. `qml.device("lightning.qubit")`).
|
209
|
+
[(#1043)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1043)
|
210
|
+
|
211
|
+
* Add support for Python 3.13 Lightning wheel builds.
|
212
|
+
[(#1001)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1001)
|
213
|
+
|
214
|
+
* Add native `SX` and `C(SX)` gates to all lightning devices.
|
215
|
+
[(#731)](https://github.com/PennyLaneAI/pennylane-lightning/pull/731)
|
216
|
+
|
217
|
+
### Breaking changes
|
218
|
+
|
219
|
+
* Update the minimum required version of PennyLane to `v0.40.0`.
|
220
|
+
[(#1033)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1033)
|
221
|
+
|
222
|
+
### Improvements
|
223
|
+
|
224
|
+
* Install Pytorch 2.5.1 CPU in CIs and update `make python` command.
|
225
|
+
[[#1118]](https://github.com/PennyLaneAI/pennylane-lightning/pull/1118)
|
226
|
+
|
227
|
+
* Update TF, Keras and Torch versions in the CIs based on PennyLane's pinned versions.
|
228
|
+
[(#1112)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1112)
|
229
|
+
|
230
|
+
* Build Lightning-GPU and Lightning-Tensor wheels against Python 3.10 and 3.13 on non-release PRs.
|
231
|
+
[(#1112)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1112)
|
232
|
+
|
233
|
+
* Use cuQuantum API for calculating expectation value of Pauli sentences in Lightning-GPU.
|
234
|
+
[(#1104)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1104)
|
235
|
+
|
236
|
+
* Update CIs to use `requirements-tests.txt` instead of `requirements-dev.txt`.
|
237
|
+
[(#1105)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1105)
|
238
|
+
|
239
|
+
* Hide internal C++ APIs in Lightning docs.
|
240
|
+
[(#1096)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1096)
|
241
|
+
|
242
|
+
* Implement the `jaxpr_jvp` method to compute the jvp of a jaxpr using `lightning.qubit`.
|
243
|
+
This method currently only support the adjoint differentiation method.
|
244
|
+
[(#1087)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1087)
|
245
|
+
[(#1106)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1106)
|
246
|
+
|
247
|
+
* Modify `expval` of named operators in Lightning-Qubit for in-place computation of expectation value, to avoid creating an intermediate statevector
|
248
|
+
[(#1079)] (https://github.com/PennyLaneAI/pennylane-lightning/pull/1079)
|
249
|
+
[(#565)] (https://github.com/PennyLaneAI/pennylane-lightning/pull/565)
|
250
|
+
|
251
|
+
* Device (`"lightning.qubit"`, `"lightning.gpu"`, `"lightning.kokkos"`) pre-processing is now included in the execution pipeline when program capture is enabled.
|
252
|
+
[(#1084)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1084)
|
253
|
+
|
254
|
+
* Add semgrep/bandit security scanning for pull requests.
|
255
|
+
[(#1100)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1100)
|
256
|
+
|
257
|
+
* Hide anonymous namespaces in Lightning docs.
|
258
|
+
[(#1097)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1097)
|
259
|
+
|
260
|
+
* Expand test structure to efficiently handle sparse data.
|
261
|
+
[(#1085)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1085)
|
262
|
+
|
263
|
+
* Remove redundant `reset_state` calls for circuit execution when state vector is freshly initialized.
|
264
|
+
[(#1076)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1076)
|
265
|
+
|
266
|
+
* Introduce a generalized sparse gate selection system via the `_observable_is_sparse` method in the base measurement class, enabling future expansion for any number of sparse observables.
|
267
|
+
[(#1068)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1068)
|
268
|
+
|
269
|
+
* Optimize the copy of a input state-vector into Lightning-GPU.
|
270
|
+
[(#1071)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1071)
|
271
|
+
|
272
|
+
* Add new GitHub workflow to enable benchmarking within pull request.
|
273
|
+
[(#1073)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1073)
|
274
|
+
|
275
|
+
* Fix wheel naming in Docker builds for `setuptools v75.8.1` compatibility.
|
276
|
+
[(#1075)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1075)
|
277
|
+
|
278
|
+
* Use native C++ kernels for controlled-adjoint and adjoint-controlled of supported operations.
|
279
|
+
[(#1063)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1063)
|
280
|
+
|
281
|
+
* In Lightning-Tensor, allow `qml.MPSPrep` to accept an MPS with `len(MPS) = n_wires-1`.
|
282
|
+
[(#1064)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1064)
|
283
|
+
|
284
|
+
* Capture execution via `dev.eval_jaxpr` can now be used with `jax.jit` and `jax.vmap`.
|
285
|
+
[(#1055)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1055)
|
286
|
+
|
287
|
+
* Add an `execution_config` keyword argument to `LightningBase.eval_jaxpr` to accommodate a Device API change.
|
288
|
+
[(#1067)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1067)
|
289
|
+
|
290
|
+
* Remove the old device API references in the Lightning repo and test suite.
|
291
|
+
[(#1057)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1057)
|
292
|
+
|
293
|
+
* Update GPU workflow to use the new self-hosted GPU runner infrastructure.
|
294
|
+
[(#1061)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1061)
|
295
|
+
|
296
|
+
* Optimize MPO operation in `lightning.tensor`.
|
297
|
+
[(#1054)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1054)
|
298
|
+
|
299
|
+
* Update `qml.ControlledQubitUnitary` tests following the latest updates in PennyLane.
|
300
|
+
[(#1047)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1047)
|
301
|
+
|
302
|
+
* Remove unnecessary adjoint pytest skip for Lightning-Kokkos.
|
303
|
+
[(#1048)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1048)
|
304
|
+
|
305
|
+
* Add `isort` to the precommit hook.
|
306
|
+
[(#1052)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1052)
|
307
|
+
|
308
|
+
* Update source code to use `black` formatter 25.1.0.
|
309
|
+
[(#1059)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1059)
|
310
|
+
|
311
|
+
* Replace the type checking using the property `return_type` of `MeasurementProcess` with direct `isinstance` checks.
|
312
|
+
[(#1044)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1044)
|
313
|
+
|
314
|
+
* Update Lightning integration tests following the `gradient_kwargs` deprecation in Pennylane.
|
315
|
+
[(#1045)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1045)
|
316
|
+
|
317
|
+
* Update `qml.MultiControlledX` tests following the latest updates in PennyLane.
|
318
|
+
[(#1040)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1040)
|
319
|
+
|
320
|
+
* Merge the `v0.40.0-rc` branch to the master and bump version.
|
321
|
+
[(#1038)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1038)
|
322
|
+
|
323
|
+
* Reduce the number of shots in the PennyLane Python tests on CIs, from 20k to 10k.
|
324
|
+
[(#1046)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1046)
|
325
|
+
|
326
|
+
* Program transformed by `qml.defer_measurements` can be executed on `lightning.qubit`. Supports `ctrl` and `adjoint` with program capture in `lightning.qubit`.
|
327
|
+
[(#1069)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1069)
|
328
|
+
|
329
|
+
### Documentation
|
330
|
+
|
331
|
+
* Modify `CHANGELOG.md` to prepare it for release v0.41.0
|
332
|
+
[(#1117)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1117)
|
333
|
+
|
334
|
+
* Update install instructions for `lightning.gpu`.
|
335
|
+
[(#1037)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1037)
|
336
|
+
|
337
|
+
### Bug fixes
|
338
|
+
|
339
|
+
* Fix the issue with decomposing controlled `qml.SProd` and `qml.Exp` operations.
|
340
|
+
[(#1120)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1120)
|
341
|
+
|
342
|
+
* Fix the validation for all wires present after adding the extra wires from apply `mid_circuit_measurements`.
|
343
|
+
[(#1119)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1119)
|
344
|
+
|
345
|
+
* Fix the issue with pip installing PennyLane (and Lightning-Qubit) on Windows.
|
346
|
+
[(#1116)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1116)
|
347
|
+
|
348
|
+
* Fix the stable/stable issue with missing `pytest-split`.
|
349
|
+
[(#1112)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1112)
|
350
|
+
|
351
|
+
* Add missing GH workflow step id, python setup, and virtual environment for aarch64 cuda.
|
352
|
+
[(#1113)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1113)
|
353
|
+
|
354
|
+
* Fix the development wheel upload step for Python 3.13 by following the same syntax as for the other Python wheels.
|
355
|
+
[(#1111)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1111)
|
356
|
+
|
357
|
+
* Add a workflow to run `label-external-pull-request` to label pull requests from external forks.
|
358
|
+
[(#1110)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1110)
|
359
|
+
|
360
|
+
* Fix the `test_preprocess` test skip condition for `lightning.tensor`.
|
361
|
+
[(#1092)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1092)
|
362
|
+
|
363
|
+
* Fix measurements with empty wires and operators for statevectors with dynamically allocated wires.
|
364
|
+
[(#1081)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1081)
|
365
|
+
|
366
|
+
* Fix unit tests that were being skipped in `testApplyControlledPhaseShift`.
|
367
|
+
[(#1083)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1083)
|
368
|
+
|
369
|
+
* Fix Github CI for aarch64 cuda to clean up after runs.
|
370
|
+
[(#1074)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1074)
|
371
|
+
|
372
|
+
* Increase maximum time for aarch64-CUDA Github CI action.
|
373
|
+
[(#1072)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1072)
|
374
|
+
|
375
|
+
* Fix `SyntaxWarning` from `is` with a literal in Python tests.
|
376
|
+
[(#1070)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1070)
|
377
|
+
|
378
|
+
* Fix CI to collect Python code coverage for Lightning-Qubit and Lightning-Kokkos CPU.
|
379
|
+
[(#1053)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1053)
|
380
|
+
|
381
|
+
* Upgrade the version of QEMU image to fix AARCH64 wheel action.
|
382
|
+
[(#1056)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1056)
|
383
|
+
|
384
|
+
* Patch `MultiControlledX` tests to fix stable/latest failures after the v0.40.0 release.
|
385
|
+
[(#1046)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1046)
|
386
|
+
|
387
|
+
* Update Github CI to use Ubuntu 24 and remove `libopenblas-base` package.
|
388
|
+
[(#1041)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1041)
|
389
|
+
|
390
|
+
* Update the `eval_jaxpr` method to handle the new signatures for the `cond`, `while`, and `for` primitives.
|
391
|
+
[(#1051)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1051)
|
392
|
+
|
393
|
+
### Contributors
|
394
|
+
|
395
|
+
This release contains contributions from (in alphabetical order):
|
396
|
+
|
397
|
+
Runor Agbaire,
|
398
|
+
Catalina Albornoz,
|
399
|
+
Ali Asadi,
|
400
|
+
Saeed Bohloul,
|
401
|
+
Astral Cai,
|
402
|
+
Yushao Chen,
|
403
|
+
Amintor Dusko,
|
404
|
+
Pietropaolo Frisoni,
|
405
|
+
Christina Lee,
|
406
|
+
Joseph Lee,
|
407
|
+
Rashid N H M,
|
408
|
+
Luis Alfredo Nuñez Meneses,
|
409
|
+
Lee J. O'Riordan,
|
410
|
+
Mudit Pandey,
|
411
|
+
Andrija Paurevic,
|
412
|
+
Alex Preciado,
|
413
|
+
Shuli Shu,
|
414
|
+
Jake Zaia
|
415
|
+
|
416
|
+
---
|
417
|
+
|
418
|
+
# Release 0.40.0
|
419
|
+
|
420
|
+
### New features since last release
|
421
|
+
|
422
|
+
* Add Exact Tensor Network (TN) C++ backend to Lightning-Tensor.
|
423
|
+
[(#977)](https://github.com/PennyLaneAI/pennylane-lightning/pull/977)
|
424
|
+
|
425
|
+
* Add native N-controlled generators and adjoint support to `lightning.gpu`'s single-GPU backend.
|
426
|
+
[(#970)](https://github.com/PennyLaneAI/pennylane-lightning/pull/970)
|
427
|
+
|
428
|
+
* Add a Catalyst-specific wrapping class for Lightning-Qubit.
|
429
|
+
[(#960)](https://github.com/PennyLaneAI/pennylane-lightning/pull/960)
|
430
|
+
[(#999)](https://github.com/PennyLaneAI/pennylane-lightning/pull/999)
|
431
|
+
|
432
|
+
* Add native N-controlled gate/matrix operations and adjoint support to `lightning.kokkos`.
|
433
|
+
[(#950)](https://github.com/PennyLaneAI/pennylane-lightning/pull/950)
|
434
|
+
|
435
|
+
* Add native N-controlled gates support to `lightning.gpu`'s single-GPU backend.
|
436
|
+
[(#938)](https://github.com/PennyLaneAI/pennylane-lightning/pull/938)
|
437
|
+
|
438
|
+
### Breaking changes
|
439
|
+
|
440
|
+
* Remove all instances of the legacy operator arithmetic (the `Hamiltonian` and `Tensor` deprecated classes in PennyLane).
|
441
|
+
[(#994)](https://github.com/PennyLaneAI/pennylane-lightning/pull/994)
|
442
|
+
[(#997)](https://github.com/PennyLaneAI/pennylane-lightning/pull/997)
|
443
|
+
|
444
|
+
* Remove all instances of `qml.QubitStateVector` as deprecated in PennyLane.
|
445
|
+
[(#985)](https://github.com/PennyLaneAI/pennylane-lightning/pull/985)
|
446
|
+
|
447
|
+
### Improvements
|
448
|
+
|
449
|
+
* Add CI wheels checks for `aarch64` wheels of Lightning-GPU and Lightning-Tensor.
|
450
|
+
[(#1031)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1031)
|
451
|
+
|
452
|
+
* Replace the `dummy_tensor_update` method with the `cutensornetStateCaptureMPS` API to ensure that applying gates is allowed after the `cutensornetStateCompute` call.
|
453
|
+
[(#1028)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1028)
|
454
|
+
|
455
|
+
* Add unit tests for measurement with shots for Lightning-Tensor (`method="tn"`).
|
456
|
+
[(#1027)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1027)
|
457
|
+
|
458
|
+
* Add CUDA dependencies to Lightning-GPU and Lightning-Tensor Python wheels.
|
459
|
+
[(#1025)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1025)
|
460
|
+
|
461
|
+
* Update the python layer UI of Lightning-Tensor.
|
462
|
+
[(#1022)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1022)
|
463
|
+
|
464
|
+
* Catalyst device interfaces support dynamic shots, and no longer parses the device init op's attribute dictionary for a static shots literal.
|
465
|
+
[(#1017)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1017)
|
466
|
+
|
467
|
+
* Update the logic for enabling `grad_on_execution` during device execution.
|
468
|
+
[(#1016)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1016)
|
469
|
+
|
470
|
+
* Reduce flaky test and increase test shots count.
|
471
|
+
[(#1015)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1015)
|
472
|
+
|
473
|
+
* Add Python bindings for Lightning-Tensor (Exact Tensor Network).
|
474
|
+
[(#1014)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1014)
|
475
|
+
|
476
|
+
* Reverse Lightning-Qubit generators vector insertion order.
|
477
|
+
[(#1009)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1009)
|
478
|
+
|
479
|
+
* Update Kokkos version support to 4.5.
|
480
|
+
[(#1007)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1007)
|
481
|
+
|
482
|
+
* Enable N-controlled gate and matrix support to `lightning.gpu` simulator for Catalyst.
|
483
|
+
[(#1005)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1005)
|
484
|
+
|
485
|
+
* Generalize seeding mechanism for all measurements.
|
486
|
+
[(#1003)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1003)
|
487
|
+
|
488
|
+
* `lightning.qubit`, `lightning.gpu`, and `lightning.kokkos` now define
|
489
|
+
the `eval_jaxpr` method for integration with the experimental
|
490
|
+
capture project.
|
491
|
+
[(#1002)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1002)
|
492
|
+
|
493
|
+
* Update Kokkos version support to 4.4.1 and enable Lightning-Kokkos[CUDA] C++ tests on CI.
|
494
|
+
[(#1000)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1000)
|
495
|
+
|
496
|
+
* Add C++ unit tests for Lightning-Tensor (Exact Tensor Network).
|
497
|
+
[(#998)](https://github.com/PennyLaneAI/pennylane-lightning/pull/998)
|
498
|
+
|
499
|
+
* Add native BLAS support to the C++ layer via dynamic `scipy-openblas32` loading.
|
500
|
+
[(#995)](https://github.com/PennyLaneAI/pennylane-lightning/pull/995)
|
501
|
+
|
502
|
+
* Update installation instruction for Lightning-GPU-MPI to explicitly ask users to add `path/to/libmpi.so` to the `LD_LIBRARY_PATH`. Update the runtime error message to ensure users know how to fix.
|
503
|
+
[(#993)](https://github.com/PennyLaneAI/pennylane-lightning/pull/993)
|
504
|
+
|
505
|
+
* Update the Lightning TOML files for the devices to use the new schema for declaring device capabilities.
|
506
|
+
[(#988)](https://github.com/PennyLaneAI/pennylane-lightning/pull/988)
|
507
|
+
|
508
|
+
* Optimize lightning.tensor by adding direct MPS sites data set with `qml.MPSPrep`.
|
509
|
+
[(#983)](https://github.com/PennyLaneAI/pennylane-lightning/pull/983)
|
510
|
+
|
511
|
+
* Unify excitation gates memory layout to row-major for both Lightning-GPU and Lightning-Tensor.
|
512
|
+
[(#959)](https://github.com/PennyLaneAI/pennylane-lightning/pull/959)
|
513
|
+
|
514
|
+
* Update the Lightning-Kokkos CUDA backend for compatibility with Catalyst.
|
515
|
+
[(#942)](https://github.com/PennyLaneAI/pennylane-lightning/pull/942)
|
516
|
+
|
517
|
+
### Documentation
|
518
|
+
|
519
|
+
* Update and improve `README.rst` and documentations.
|
520
|
+
[(#1035)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1035)
|
521
|
+
|
522
|
+
* Add the exact tensor network to the `README.rst` and update link to `HIP`.
|
523
|
+
[(#1034)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1034)
|
524
|
+
|
525
|
+
* Add the exact tensor network to the Lightning-Tensor docs.
|
526
|
+
[(#1021)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1021)
|
527
|
+
|
528
|
+
* Update Lightning-Tensor installation docs and usage suggestions.
|
529
|
+
[(#979)](https://github.com/PennyLaneAI/pennylane-lightning/pull/979)
|
530
|
+
|
531
|
+
### Bug fixes
|
532
|
+
|
533
|
+
* Fix Python CUDA dependencies by adding path to `nvidia/nvjitlink/lib` to RPATH.
|
534
|
+
[(#1031)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1031)
|
535
|
+
|
536
|
+
* Add `RTLD_NODELETE` flag to `dlopen` in order to mitigate the segfault issues for arm64-macos Catalyst support.
|
537
|
+
[(#1030)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1030)
|
538
|
+
|
539
|
+
* Set RPATH with `@loader_path` instead of `$ORIGIN` for macOS.
|
540
|
+
[(#1029)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1029)
|
541
|
+
|
542
|
+
* Update CUDA version to 12.4 for GPU tests on CI.
|
543
|
+
[(#1023)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1023)
|
544
|
+
|
545
|
+
* Pin `jax[cpu]==0.4.28` for compatibility with PennyLane and Catalyst.
|
546
|
+
[(#1019)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1019)
|
547
|
+
|
548
|
+
* Fix Lightning-Kokkos `[[maybe_unused]]` and `exp2` errors with hipcc.
|
549
|
+
[(#1018)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1018)
|
550
|
+
|
551
|
+
* Fix Lightning-Kokkos editable mode path.
|
552
|
+
[(#1010)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1010)
|
553
|
+
|
554
|
+
* Fix the missing `ninja` in Linux AARCH64 wheels recipe.
|
555
|
+
[(#1007)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1007)
|
556
|
+
|
557
|
+
* Fix version switch condition the GPU workflow tests for LGPU and LKokkos.
|
558
|
+
[(#1006)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1006)
|
559
|
+
|
560
|
+
* Fix issue with `lightning.gpu` Rot operation with adjoint.
|
561
|
+
[(#1004)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1004)
|
562
|
+
|
563
|
+
* Fix the Lightning-Kokkos[CUDA] C++ API `cudaFree` segfaults in `applyMatrix`.
|
564
|
+
[(#1000)](https://github.com/PennyLaneAI/pennylane-lightning/pull/1000)
|
565
|
+
|
566
|
+
* Fix issue with adjoint-jacobian of adjoint ops.
|
567
|
+
[(#996)](https://github.com/PennyLaneAI/pennylane-lightning/pull/996)
|
568
|
+
|
569
|
+
* Fix the `upload-pypi` token issues for Linux and MacOS (x86_64 & AARCH64) wheels.
|
570
|
+
[(#989)](https://github.com/PennyLaneAI/pennylane-lightning/pull/989)
|
571
|
+
|
572
|
+
* Fix Pennylane dependency branch (`v0.39_rc0` to `master`).
|
573
|
+
[(#984)](https://github.com/PennyLaneAI/pennylane-lightning/pull/984)
|
574
|
+
|
575
|
+
* Fix PTM stable latest. Removing FIXME patch for v0.39.
|
576
|
+
[(#982)](https://github.com/PennyLaneAI/pennylane-lightning/pull/982)
|
577
|
+
|
578
|
+
### Contributors
|
579
|
+
|
580
|
+
This release contains contributions from (in alphabetical order):
|
581
|
+
|
582
|
+
Ali Asadi,
|
583
|
+
Astral Cai,
|
584
|
+
Amintor Dusko,
|
585
|
+
Christina Lee,
|
586
|
+
Joseph Lee,
|
587
|
+
Anton Naim Ibrahim,
|
588
|
+
Luis Alfredo Nuñez Meneses,
|
589
|
+
Mudit Pandey,
|
590
|
+
Andrija Paurevic,
|
591
|
+
Shuli Shu,
|
592
|
+
Raul Torres,
|
593
|
+
Haochen Paul Wang
|
594
|
+
|
595
|
+
---
|
596
|
+
|
597
|
+
# Release 0.39.0
|
598
|
+
|
599
|
+
### New features since last release
|
600
|
+
|
601
|
+
* Add support for out-of-order `qml.probs` in `lightning.gpu`.
|
602
|
+
[(#941)](https://github.com/PennyLaneAI/pennylane-lightning/pull/941)
|
603
|
+
|
604
|
+
* Add mid-circuit measurements support to `lightning.gpu`'s single-GPU backend.
|
605
|
+
[(#931)](https://github.com/PennyLaneAI/pennylane-lightning/pull/931)
|
606
|
+
|
607
|
+
* Integrate Lightning-GPU with Catalyst so that hybrid programs can be seamlessly QJIT-compiled and executed on this device following `pip install pennylane-lightning-gpu`.
|
608
|
+
[(#928)](https://github.com/PennyLaneAI/pennylane-lightning/pull/928)
|
609
|
+
|
610
|
+
* Add `qml.Projector` observable support via diagonalization to Lightning-GPU.
|
611
|
+
[(#894)](https://github.com/PennyLaneAI/pennylane-lightning/pull/894)
|
612
|
+
|
613
|
+
* Add 1-target wire controlled gate support to `lightning.tensor`. Note that `cutensornet` only supports 1-target wire controlled gate as of `v24.08`. A controlled gate with more than 1 target wire should be converted to dense matrix.
|
614
|
+
[(#880)](https://github.com/PennyLaneAI/pennylane-lightning/pull/880)
|
615
|
+
|
616
|
+
* Build and upload Lightning-Tensor wheels (x86_64, AARCH64) to PyPI.
|
617
|
+
[(#862)](https://github.com/PennyLaneAI/pennylane-lightning/pull/862)
|
618
|
+
[(#905)](https://github.com/PennyLaneAI/pennylane-lightning/pull/905)
|
619
|
+
|
620
|
+
* Add Matrix Product Operator (MPO) for all gates support to `lightning.tensor`. Note current C++ implementation only works for MPO sites data provided by users.
|
621
|
+
[(#859)](https://github.com/PennyLaneAI/pennylane-lightning/pull/859)
|
622
|
+
|
623
|
+
* Add shots measurement support to `lightning.tensor`.
|
624
|
+
[(#852)](https://github.com/PennyLaneAI/pennylane-lightning/pull/852)
|
625
|
+
|
626
|
+
* Lightning-GPU and Lightning-Kokkos migrated to the new device API.
|
627
|
+
[(#853)](https://github.com/PennyLaneAI/pennylane-lightning/pull/853)
|
628
|
+
[(#810)](https://github.com/PennyLaneAI/pennylane-lightning/pull/810)
|
629
|
+
|
630
|
+
### Breaking changes
|
631
|
+
|
632
|
+
* Update MacOS wheel build to 13.0 for X86_64 and ARM due to the deprecation of MacOS-12 CI runners.
|
633
|
+
[(#969)](https://github.com/PennyLaneAI/pennylane-lightning/pull/969)
|
634
|
+
|
635
|
+
* Deprecate `initSV()` and add `resetStateVector()` from the C++ API Lightning-GPU. This is to remove the `reset_state` additional call in the Python layer.
|
636
|
+
[(#933)](https://github.com/PennyLaneAI/pennylane-lightning/pull/933)
|
637
|
+
|
638
|
+
* Deprecate PI gates implementation in Lightning-Qubit. The PI gates were the first implementation of gate kernels in `lightning.qubit` using pre-computed indices, prior to the development of LM (less memory) and AVX kernels. This deprecation is in favour of reducing compilation time and ensuring that Lightning-Qubit only relies on LM kernels in the dynamic dispatcher across all platforms.
|
639
|
+
[(#925)](https://github.com/PennyLaneAI/pennylane-lightning/pull/925)
|
640
|
+
|
641
|
+
* Remove PowerPC wheel build recipe for Lightning-Qubit.
|
642
|
+
[(#902)](https://github.com/PennyLaneAI/pennylane-lightning/pull/902)
|
643
|
+
|
644
|
+
* Update MacOS wheel builds to require Monterey (12.0) or greater for x86_64 and ARM. This was required to update Pybind11 to the latest release (2.13.5) for enabling Numpy 2.0 support in Lightning.
|
645
|
+
[(#901)](https://github.com/PennyLaneAI/pennylane-lightning/pull/901)
|
646
|
+
|
647
|
+
* Remove support for Python 3.9 for all Lightning simulators.
|
648
|
+
[(#891)](https://github.com/PennyLaneAI/pennylane-lightning/pull/891)
|
649
|
+
|
650
|
+
### Improvements
|
651
|
+
|
652
|
+
* Update the `lightning.tensor` Python layer unit tests, as `lightning.tensor` cannot be cleaned up like other state-vector devices because the data is attached to the graph. It is recommended to use one device per circuit for `lightning.tensor`.
|
653
|
+
[(#971)](https://github.com/PennyLaneAI/pennylane-lightning/pull/971)
|
654
|
+
|
655
|
+
* Add joint check for the N-controlled wires support in `lightning.qubit`.
|
656
|
+
[(#949)](https://github.com/PennyLaneAI/pennylane-lightning/pull/949)
|
657
|
+
|
658
|
+
* Optimize `GlobalPhase` and `C(GlobalPhase)` gate implementation in `lightning.gpu`.
|
659
|
+
[(#946)](https://github.com/PennyLaneAI/pennylane-lightning/pull/946)
|
660
|
+
|
661
|
+
* Add missing `liblightning_kokkos_catalyst.so` when building Lightning-Kokkos in editable installation.
|
662
|
+
[(#945)](https://github.com/PennyLaneAI/pennylane-lightning/pull/945)
|
663
|
+
|
664
|
+
* Optimize the cartesian product to reduce the amount of memory necessary to set the `StatePrep` in Lightning-Tensor.
|
665
|
+
[(#943)](https://github.com/PennyLaneAI/pennylane-lightning/pull/943)
|
666
|
+
|
667
|
+
* Update the `qml.probs` data-return in Lightning-GPU C++ API to align with other state-vector devices.
|
668
|
+
[(#941)](https://github.com/PennyLaneAI/pennylane-lightning/pull/941)
|
669
|
+
|
670
|
+
* Add zero-state initialization to both `StateVectorCudaManaged` and `StateVectorCudaMPI` constructors to remove the `reset_state` in the Python layer ctor and refactor `setBasisState(state, wires)` in the C++ API.
|
671
|
+
[(#933)](https://github.com/PennyLaneAI/pennylane-lightning/pull/933)
|
672
|
+
|
673
|
+
* Add `setStateVector(state, wire)` support to the Lightning-GPU C++ API.
|
674
|
+
[(#930)](https://github.com/PennyLaneAI/pennylane-lightning/pull/930)
|
675
|
+
|
676
|
+
* The `generate_samples` methods of `lightning.qubit` and `lightning.kokkos` can now take in a seed number to make the generated samples deterministic. This can be useful when, among other things, fixing flaky tests in CI.
|
677
|
+
[(#927)](https://github.com/PennyLaneAI/pennylane-lightning/pull/927)
|
678
|
+
|
679
|
+
* Remove dynamic decomposition rules for all Lightning devices.
|
680
|
+
[(#926)](https://github.com/PennyLaneAI/pennylane-lightning/pull/926)
|
681
|
+
|
682
|
+
* Always decompose `qml.QFT` in all Lightning devices.
|
683
|
+
[(#924)](https://github.com/PennyLaneAI/pennylane-lightning/pull/924)
|
684
|
+
|
685
|
+
* Uniform Python format to adhere PennyLane style.
|
686
|
+
[(#924)](https://github.com/PennyLaneAI/pennylane-lightning/pull/924)
|
687
|
+
|
688
|
+
* Add the `ci:use-gpu-runner` GitHub label to `lightning.kokkos` GPU Testing CIs.
|
689
|
+
[(#916)](https://github.com/PennyLaneAI/pennylane-lightning/pull/916)
|
690
|
+
|
691
|
+
* Update the test suite to remove deprecated code.
|
692
|
+
[(#912)](https://github.com/PennyLaneAI/pennylane-lightning/pull/912)
|
693
|
+
|
694
|
+
* Merge `lightning.gpu` and `lightning.tensor` GPU tests in single Python and C++ CIs controlled by the `ci:use-gpu-runner` label.
|
695
|
+
[(#911)](https://github.com/PennyLaneAI/pennylane-lightning/pull/911)
|
696
|
+
|
697
|
+
* Skip the compilation of Lightning simulators and development requirements to boost the build of public docs up to 5x.
|
698
|
+
[(#904)](https://github.com/PennyLaneAI/pennylane-lightning/pull/904)
|
699
|
+
|
700
|
+
* Build Lightning wheels in `Release` mode to reduce the binary sizes.
|
701
|
+
[(#903)](https://github.com/PennyLaneAI/pennylane-lightning/pull/903)
|
702
|
+
|
703
|
+
* Update Pybind11 to 2.13.5.
|
704
|
+
[(#901)](https://github.com/PennyLaneAI/pennylane-lightning/pull/901)
|
705
|
+
|
706
|
+
* Migrate wheels artifacts to v4.
|
707
|
+
[(#893)](https://github.com/PennyLaneAI/pennylane-lightning/pull/893)
|
708
|
+
|
709
|
+
* Update GitHub actions in response to a high-severity vulnerability.
|
710
|
+
[(#887)](https://github.com/PennyLaneAI/pennylane-lightning/pull/887)
|
711
|
+
|
712
|
+
* Optimize and simplify controlled kernels in Lightning-Qubit.
|
713
|
+
[(#882)](https://github.com/PennyLaneAI/pennylane-lightning/pull/882)
|
714
|
+
|
715
|
+
* Optimize gate cache recording for Lightning-Tensor C++ API.
|
716
|
+
[(#879)](https://github.com/PennyLaneAI/pennylane-lightning/pull/879)
|
717
|
+
|
718
|
+
* Unify Lightning-Kokkos and Lightning-Qubit devices under a Lightning-Base abstracted class.
|
719
|
+
[(#876)](https://github.com/PennyLaneAI/pennylane-lightning/pull/876)
|
720
|
+
|
721
|
+
* Smarter defaults for the `split_obs` argument in the serializer. The serializer splits linear combinations into chunks instead of all their terms.
|
722
|
+
[(#873)](https://github.com/PennyLaneAI/pennylane-lightning/pull/873/)
|
723
|
+
|
724
|
+
* Prefer `tomlkit` over `toml` for building Lightning wheels, and choose `tomli` and `tomllib` over `toml` when installing the package.
|
725
|
+
[(#857)](https://github.com/PennyLaneAI/pennylane-lightning/pull/857)
|
726
|
+
|
727
|
+
* Lightning-Kokkos gains native support for the `PauliRot` gate.
|
728
|
+
[(#855)](https://github.com/PennyLaneAI/pennylane-lightning/pull/855)
|
729
|
+
|
730
|
+
### Documentation
|
731
|
+
|
732
|
+
* Update Lightning-Tensor installation docs and usage suggestions.
|
733
|
+
[(#971)](https://github.com/PennyLaneAI/pennylane-lightning/pull/971)
|
734
|
+
[(#972)](https://github.com/PennyLaneAI/pennylane-lightning/pull/971)
|
735
|
+
|
736
|
+
* Update `README.rst` installation instructions for `lightning.gpu` and `lightning.tensor`.
|
737
|
+
[(#957)](https://github.com/PennyLaneAI/pennylane-lightning/pull/957)
|
738
|
+
|
739
|
+
* Update `lightning.tensor` documentation to include all the new features added since pull request #756. The new features are: 1. Finite-shot measurements; 2. Expval-base quantities; 3. Support for `qml.state()` and `qml.stateprep()`; 4. Support for all gates support via Matrix Product Operator (MPO).
|
740
|
+
[(#909)](https://github.com/PennyLaneAI/pennylane-lightning/pull/909)
|
741
|
+
|
742
|
+
### Bug fixes
|
743
|
+
|
744
|
+
* Fix Lightning Kokkos test_device for `kokkos_args` fail for MacOS due to `np.complex256`
|
745
|
+
[(#974)](https://github.com/PennyLaneAI/pennylane-lightning/pull/974)
|
746
|
+
|
747
|
+
* Fix PTM stable-latest related to `default.qubit.legacy` and the `latest` flag usage.
|
748
|
+
[(#961)](https://github.com/PennyLaneAI/pennylane-lightning/pull/961)
|
749
|
+
[(#966)](https://github.com/PennyLaneAI/pennylane-lightning/pull/966)
|
750
|
+
|
751
|
+
* Fix build failure for Lightning-Kokkos editable installation on MacOS due to `liblightning_kokkos_catalyst.so` copy and `liblightning_kokkos_catalyst.so` not copied to correct build path for editable installation.
|
752
|
+
[(#947)](https://github.com/PennyLaneAI/pennylane-lightning/pull/947)
|
753
|
+
[(#968)](https://github.com/PennyLaneAI/pennylane-lightning/pull/968)
|
754
|
+
|
755
|
+
* Add concept restriction to ensure `ConstMult` inline function only hit with arithmetic-values times complex values. Fixes build failures with the test suite when enabling OpenMP, and disabling BLAS and Python under clang.
|
756
|
+
[(#936)](https://github.com/PennyLaneAI/pennylane-lightning/pull/936)
|
757
|
+
|
758
|
+
* Bug fix for `applyMatrix` in Lightning-Tensor. Matrix operator data is not stored in the `cuGateCache` object to support `TensorProd` obs with multiple `Hermitian` obs.
|
759
|
+
[(#932)](https://github.com/PennyLaneAI/pennylane-lightning/pull/932)
|
760
|
+
|
761
|
+
* Bug fix for `_pauli_word` of `QuantumScriptSerializer`. `_pauli_word` can process `PauliWord` object: `I`.
|
762
|
+
[(#919)](https://github.com/PennyLaneAI/pennylane-lightning/pull/919)
|
763
|
+
|
764
|
+
* Bug fix for analytic `qml.probs` in the Lightning-Tensor C++ API.
|
765
|
+
[(#906)](https://github.com/PennyLaneAI/pennylane-lightning/pull/906)
|
766
|
+
|
767
|
+
### Contributors
|
768
|
+
|
769
|
+
This release contains contributions from (in alphabetical order):
|
770
|
+
|
771
|
+
Ali Asadi, Amintor Dusko, Diego Guala, Joseph Lee, Luis Alfredo Nuñez Meneses, Vincent Michaud-Rioux, Lee J. O'Riordan, Mudit Pandey, Shuli Shu, Haochen Paul Wang
|
772
|
+
|
773
|
+
---
|
774
|
+
|
775
|
+
# Release 0.38.0
|
776
|
+
|
777
|
+
### New features since last release
|
778
|
+
|
779
|
+
* Add `qml.StatePrep()` and `qml.QubitStateVector()` support to `lightning.tensor`.
|
780
|
+
[(#849)](https://github.com/PennyLaneAI/pennylane-lightning/pull/849)
|
781
|
+
|
782
|
+
* Add analytic `qml.probs()` measurement support to `lightning.tensor`.
|
783
|
+
[(#830)](https://github.com/PennyLaneAI/pennylane-lightning/pull/830)
|
784
|
+
|
785
|
+
* Add `qml.state()` measurement support to `lightning.tensor`.
|
786
|
+
[(#827)](https://github.com/PennyLaneAI/pennylane-lightning/pull/827)
|
787
|
+
|
788
|
+
* Add Lightning-GPU Linux (AArch64 + GraceHopper) wheels to PyPI.
|
789
|
+
[(#815)](https://github.com/PennyLaneAI/pennylane-lightning/pull/815)
|
790
|
+
|
791
|
+
* Add `var` support to `lightning.tensor`. Note that `var` support is added via `obs**2` and this implementation scales as `O(num_obs**2)`.
|
792
|
+
[(#804)](https://github.com/PennyLaneAI/pennylane-lightning/pull/804)
|
793
|
+
|
794
|
+
### Breaking changes
|
795
|
+
|
796
|
+
* Update python packaging to follow PEP 517/518/621/660 standards.
|
797
|
+
[(#832)](https://github.com/PennyLaneAI/pennylane-lightning/pull/832)
|
798
|
+
|
799
|
+
* Add `getData()` in the `lightning.tensor` C++ backend. Users are responsible for ensuring sufficient host memory is allocated for the full state vector.
|
800
|
+
[(#827)](https://github.com/PennyLaneAI/pennylane-lightning/pull/827)
|
801
|
+
|
802
|
+
* Remove `NDpermuter.hpp` which is no longer required.
|
803
|
+
[(#795)](https://github.com/PennyLaneAI/pennylane-lightning/pull/795)
|
804
|
+
|
805
|
+
* Remove temporary steps from the CI, such as downgrading Scipy to <1.14 and installing Kokkos v4.2 for `lightning-version == 'stable'`.
|
806
|
+
[(#792)](https://github.com/PennyLaneAI/pennylane-lightning/pull/792)
|
807
|
+
|
808
|
+
* Do not run GPU tests and Docker workflows on release.
|
809
|
+
[(#788)](https://github.com/PennyLaneAI/pennylane-lightning/pull/788)
|
810
|
+
|
811
|
+
* Update python packaging to follow PEP 517/518/621/660 standards.
|
812
|
+
[(#832)](https://github.com/PennyLaneAI/pennylane-lightning/pull/832)
|
813
|
+
|
814
|
+
### Improvements
|
815
|
+
|
816
|
+
* Updated calls of ``size_t`` to ``std::size_t`` everywhere.
|
817
|
+
[(#816)](https://github.com/PennyLaneAI/pennylane-lightning/pull/816)
|
818
|
+
|
819
|
+
* Update Lightning tests to support the generalization of basis state preparation.
|
820
|
+
[(#864)](https://github.com/PennyLaneAI/pennylane-lightning/pull/864)
|
821
|
+
|
822
|
+
* Add `SetState` and `SetBasisState` to `Lightning-KokkosSimulator`.
|
823
|
+
[(#861)](https://github.com/PennyLaneAI/pennylane-lightning/pull/861)
|
824
|
+
|
825
|
+
* Remove use of the deprecated `Operator.expand` in favour of `Operator.decomposition`.
|
826
|
+
[(#846)](https://github.com/PennyLaneAI/pennylane-lightning/pull/846)
|
827
|
+
|
828
|
+
* The `setBasisState` and `setStateVector` methods of `StateVectorLQubit` and `StateVectorKokkos` are overloaded to support PennyLane-like parameters.
|
829
|
+
[(#843)](https://github.com/PennyLaneAI/pennylane-lightning/pull/843)
|
830
|
+
|
831
|
+
* Move `setBasisState`, `setStateVector` and `resetStateVector` from `StateVectorLQubitManaged` to `StateVectorLQubit`.
|
832
|
+
[(#841)](https://github.com/PennyLaneAI/pennylane-lightning/pull/841)
|
833
|
+
|
834
|
+
* Update `generate_samples` in Lightning-Kokkos and Lightning-GPU to support `qml.measurements.Shots` type instances.
|
835
|
+
[(#839)](https://github.com/PennyLaneAI/pennylane-lightning/pull/839)
|
836
|
+
|
837
|
+
* Add a Catalyst-specific wrapping class for Lightning Kokkos.
|
838
|
+
[(#837)](https://github.com/PennyLaneAI/pennylane-lightning/pull/837)
|
839
|
+
[(#770)](https://github.com/PennyLaneAI/pennylane-lightning/pull/770)
|
840
|
+
|
841
|
+
* Lightning-Qubit natively supports the `PauliRot` gate.
|
842
|
+
[(#834)](https://github.com/PennyLaneAI/pennylane-lightning/pull/834)
|
843
|
+
|
844
|
+
* Multiple calls to the `append_mps_final_state()` API is allowed in `lightning.tensor`.
|
845
|
+
[(#830)](https://github.com/PennyLaneAI/pennylane-lightning/pull/830)
|
846
|
+
|
847
|
+
* Add `initial_state_prep` option to Catalyst TOML file.
|
848
|
+
[(#826)](https://github.com/PennyLaneAI/pennylane-lightning/pull/826)
|
849
|
+
|
850
|
+
* `ENABLE_LAPACK` is `OFF` by default for all Lightning backends.
|
851
|
+
[(#825)](https://github.com/PennyLaneAI/pennylane-lightning/pull/825)
|
852
|
+
|
853
|
+
* Update `ctrl_decomp_zyz` tests with `len(control_wires) > 1`.
|
854
|
+
[(#821)](https://github.com/PennyLaneAI/pennylane-lightning/pull/821)
|
855
|
+
|
856
|
+
* Update the Catalyst-specific wrapping class for Lightning Kokkos to track Catalyst's new support for MCM seeding.
|
857
|
+
[(#819)](https://github.com/PennyLaneAI/pennylane-lightning/pull/819)
|
858
|
+
|
859
|
+
* Replace ``size_t`` by ``std::size_t`` everywhere.
|
860
|
+
[(#816)](https://github.com/PennyLaneAI/pennylane-lightning/pull/816/)
|
861
|
+
|
862
|
+
* Shot batching is made more efficient by executing all the shots in one go on Lightning-Qubit.
|
863
|
+
[(#814)](https://github.com/PennyLaneAI/pennylane-lightning/pull/814)
|
864
|
+
|
865
|
+
* Lightning-Qubit calls `generate_samples(wires)` on a minimal subset of wires when executing in finite-shot mode.
|
866
|
+
[(#813)](https://github.com/PennyLaneAI/pennylane-lightning/pull/813)
|
867
|
+
|
868
|
+
* Update `LightingQubit.preprocess` to work with changes to preprocessing for mid-circuit measurements.
|
869
|
+
[(#812)](https://github.com/PennyLaneAI/pennylane-lightning/pull/812)
|
870
|
+
|
871
|
+
* Avoid unnecessary memory reset in Lightning-Qubit's state vector class constructor.
|
872
|
+
[(#811)](https://github.com/PennyLaneAI/pennylane-lightning/pull/811)
|
873
|
+
|
874
|
+
* Add `generate_samples(wires)` support in Lightning-Qubit, which samples faster for a subset of wires.
|
875
|
+
[(#809)](https://github.com/PennyLaneAI/pennylane-lightning/pull/809)
|
876
|
+
|
877
|
+
* Optimize the OpenMP parallelization of Lightning-Qubit's `probs` for all number of targets.
|
878
|
+
[(#807)](https://github.com/PennyLaneAI/pennylane-lightning/pull/807)
|
879
|
+
|
880
|
+
* Optimize `probs(wires)` of Lightning-Kokkos using various kernels. Which kernel is to be used depends on the device, number of qubits and number of target wires.
|
881
|
+
[(#802)](https://github.com/PennyLaneAI/pennylane-lightning/pull/802)
|
882
|
+
|
883
|
+
* Add GPU device compute capability check for Lightning-Tensor.
|
884
|
+
[(#803)](https://github.com/PennyLaneAI/pennylane-lightning/pull/803)
|
885
|
+
|
886
|
+
* Refactor CUDA utils Python bindings to a separate module.
|
887
|
+
[(#801)](https://github.com/PennyLaneAI/pennylane-lightning/pull/801)
|
888
|
+
|
889
|
+
* Parallelize Lightning-Qubit `probs` with OpenMP when using the `-DLQ_ENABLE_KERNEL_OMP=1` CMake argument.
|
890
|
+
[(#800)](https://github.com/PennyLaneAI/pennylane-lightning/pull/800)
|
891
|
+
|
892
|
+
* Implement `probs(wires)` using a bit-shift implementation akin to the gate kernels in Lightning-Qubit.
|
893
|
+
[(#795)](https://github.com/PennyLaneAI/pennylane-lightning/pull/795)
|
894
|
+
|
895
|
+
* Enable setting the PennyLane version when invoking, for example, `make docker-build version=master pl_version=master`.
|
896
|
+
[(#791)](https://github.com/PennyLaneAI/pennylane-lightning/pull/791)
|
897
|
+
|
898
|
+
### Documentation
|
899
|
+
|
900
|
+
* The installation instructions for all lightning plugins have been improved.
|
901
|
+
[(#858)](https://github.com/PennyLaneAI/pennylane-lightning/pull/858)
|
902
|
+
[(#851)](https://github.com/PennyLaneAI/pennylane-lightning/pull/851)
|
903
|
+
|
904
|
+
* Updated the README and added citation format for Lightning arXiv preprint.
|
905
|
+
[(#818)](https://github.com/PennyLaneAI/pennylane-lightning/pull/818)
|
906
|
+
|
907
|
+
### Bug fixes
|
908
|
+
|
909
|
+
* Point to the right Lightning root folder independently from the invocation location, when configuring the project.
|
910
|
+
[(#874)](https://github.com/PennyLaneAI/pennylane-lightning/pull/874)
|
911
|
+
|
912
|
+
* Update dependencies and `build` command options following changes in the build system.
|
913
|
+
[(#863)](https://github.com/PennyLaneAI/pennylane-lightning/pull/863)
|
914
|
+
|
915
|
+
* Replace structured bindings by variables in `GateImplementationsLM.hpp`.
|
916
|
+
[(#856)](https://github.com/PennyLaneAI/pennylane-lightning/pull/856)
|
917
|
+
|
918
|
+
* Remove wrong `-m` when calling `setup.py`.
|
919
|
+
[(#854)](https://github.com/PennyLaneAI/pennylane-lightning/pull/854)
|
920
|
+
|
921
|
+
* Fix plugin-test-matrix CI/CD workflows.
|
922
|
+
[(#850)](https://github.com/PennyLaneAI/pennylane-lightning/pull/850)
|
923
|
+
|
924
|
+
* Set the `immutable` parameter value as `false` for the `cutensornetStateApplyTensorOperator` to allow the following `cutensornetStateUpdateTensorOperator` call.
|
925
|
+
[(#845)](https://github.com/PennyLaneAI/pennylane-lightning/pull/845)
|
926
|
+
|
927
|
+
* Fix cuQuantum SDK path pass-though in CMake.
|
928
|
+
[(#831)](https://github.com/PennyLaneAI/pennylane-lightning/pull/831)
|
929
|
+
|
930
|
+
* Fix CUDA sync issues on AArch64 + GraceHopper.
|
931
|
+
[(#823)](https://github.com/PennyLaneAI/pennylane-lightning/pull/823)
|
932
|
+
|
933
|
+
* Check for the number of wires for Hermitian observables in Lightning-Tensor. Only 1-wire Hermitian observables are supported as of `cuTensorNet-v24.03.0`.
|
934
|
+
[(#806)](https://github.com/PennyLaneAI/pennylane-lightning/pull/806)
|
935
|
+
|
936
|
+
* Set `PL_BACKEND` for the entire `build-wheel-lightning-gpu` Docker-build stage to properly build the Lightning-GPU wheel.
|
937
|
+
[(#791)](https://github.com/PennyLaneAI/pennylane-lightning/pull/791)
|
938
|
+
|
939
|
+
* Fix conditions for skipping build & push steps in the Docker build workflows.
|
940
|
+
[(#790)](https://github.com/PennyLaneAI/pennylane-lightning/pull/790)
|
941
|
+
|
942
|
+
* Downgrade Scipy on Lightning stable version tests.
|
943
|
+
[(#783)](https://github.com/PennyLaneAI/pennylane-lightning/pull/783)
|
944
|
+
|
945
|
+
* Fix checkout command in test workflows for rc branches.
|
946
|
+
[(#777)](https://github.com/PennyLaneAI/pennylane-lightning/pull/777)
|
947
|
+
|
948
|
+
* Point to the right Lightning root folder independently from the invocation location, when configuring the project.
|
949
|
+
[(#874)](https://github.com/PennyLaneAI/pennylane-lightning/pull/874)
|
950
|
+
|
951
|
+
### Contributors
|
952
|
+
|
953
|
+
This release contains contributions from (in alphabetical order):
|
954
|
+
|
955
|
+
Ali Asadi, Astral Cai, Ahmed Darwish, Amintor Dusko, Vincent Michaud-Rioux, Luis Alfredo Nuñez Meneses, Erick Ochoa Lopez, Lee J. O'Riordan, Mudit Pandey, Shuli Shu, Raul Torres, Paul Haochen Wang
|
956
|
+
|
957
|
+
---
|
958
|
+
|
959
|
+
# Release 0.37.0
|
960
|
+
|
961
|
+
### New features since last release
|
962
|
+
|
963
|
+
* Implement Python interface to the `lightning.tensor` device.
|
964
|
+
[(#748)](https://github.com/PennyLaneAI/pennylane-lightning/pull/748)
|
965
|
+
|
966
|
+
* Add `inverse` support for gate operations in `lightning.tensor` in the C++ layer.
|
967
|
+
[(#753)](https://github.com/PennyLaneAI/pennylane-lightning/pull/753)
|
968
|
+
|
969
|
+
* Add `observable` and `expval` support to the `cutensornet`-backed `lightning.tensor` C++ layer.
|
970
|
+
[(#728)](https://github.com/PennyLaneAI/pennylane-lightning/pull/728)
|
971
|
+
|
972
|
+
* Add gate support to `cutensornet`-backed `lightning.tensor` C++ layer.
|
973
|
+
[(#718)](https://github.com/PennyLaneAI/pennylane-lightning/pull/718)
|
974
|
+
|
975
|
+
* Add `cutensornet`-backed `MPS` C++ layer to `lightning.tensor`.
|
976
|
+
[(#704)](https://github.com/PennyLaneAI/pennylane-lightning/pull/704)
|
977
|
+
|
978
|
+
* Add support for `C(BlockEncode)` to Lightning devices.
|
979
|
+
[(#743)](https://github.com/PennyLaneAI/pennylane-lightning/pull/743)
|
980
|
+
|
981
|
+
### Breaking changes
|
982
|
+
|
983
|
+
* Removed the `QuimbMPS` class and the corresponding backend from `lightning.tensor`.
|
984
|
+
[(#737)](https://github.com/PennyLaneAI/pennylane-lightning/pull/737)
|
985
|
+
|
986
|
+
* Changed the name of `default.tensor` to `lightning.tensor` with the `quimb` backend.
|
987
|
+
[(#730)](https://github.com/PennyLaneAI/pennylane-lightning/pull/730)
|
988
|
+
|
989
|
+
* `dynamic_one_shot` uses shot-vectors in the auxiliary tape to tell the device how many times to repeat the tape. Lightning-Qubit is updated accordingly.
|
990
|
+
[(#724)](https://github.com/PennyLaneAI/pennylane-lightning/pull/724)
|
991
|
+
|
992
|
+
* `dynamic_one_shot` deals with post-selection during the post-processing phase, so Lightning-Qubit does not return `None`-valued measurements for mismatching samples anymore.
|
993
|
+
[(#720)](https://github.com/PennyLaneAI/pennylane-lightning/pull/720)
|
994
|
+
|
995
|
+
### Improvements
|
996
|
+
|
997
|
+
* Release candidate branches automatically use the new large GitHub runner pool.
|
998
|
+
[(#769)](https://github.com/PennyLaneAI/pennylane-lightning/pull/769)
|
999
|
+
|
1000
|
+
* Lightning-Kokkos dev wheels for MacOS (x86_64, ARM64) and Linux (AArch64) are uploaded to TestPyPI upon merging a pull request.
|
1001
|
+
[(#765)](https://github.com/PennyLaneAI/pennylane-lightning/pull/765)
|
1002
|
+
|
1003
|
+
* Lightning-Kokkos Linux (x86_64) dev wheels are pushed to [Test PyPI](https://test.pypi.org/project/PennyLane-Lightning-Kokkos/) upon merging a pull request.
|
1004
|
+
[(#763)](https://github.com/PennyLaneAI/pennylane-lightning/pull/763)
|
1005
|
+
|
1006
|
+
* Change the type of tensor network objects passed to `ObservablesTNCuda` and `MeasurementsTNCuda` classes from `StateTensorT` to `TensorNetT`.
|
1007
|
+
[(#759)](https://github.com/PennyLaneAI/pennylane-lightning/pull/759)
|
1008
|
+
|
1009
|
+
* Silence `NDPermuter` linting warnings.
|
1010
|
+
[(#750)](https://github.com/PennyLaneAI/pennylane-lightning/pull/750)
|
1011
|
+
|
1012
|
+
* Rationalize MCM tests, removing most end-to-end tests from the native MCM test file, but keeping one that validates multiple mid-circuit measurements with any allowed return.
|
1013
|
+
[(#754)](https://github.com/PennyLaneAI/pennylane-lightning/pull/754)
|
1014
|
+
|
1015
|
+
* Rename `lightning.tensor` C++ libraries.
|
1016
|
+
[(#755)](https://github.com/PennyLaneAI/pennylane-lightning/pull/755)
|
1017
|
+
|
1018
|
+
* Set `state_tensor` as `const` for the `MeasurementTNCuda` class.
|
1019
|
+
[(#753)](https://github.com/PennyLaneAI/pennylane-lightning/pull/753)
|
1020
|
+
|
1021
|
+
* Updated Kokkos version and support to 4.3.01.
|
1022
|
+
[(#725)](https://github.com/PennyLaneAI/pennylane-lightning/pull/725)
|
1023
|
+
|
1024
|
+
* Lightning-Kokkos' functors are rewritten as functions wrapping around generic gate and generator functors templated over a coefficient interaction function. This reduces boilerplate while clarifying how the various kernels differ from one another.
|
1025
|
+
[(#640)](https://github.com/PennyLaneAI/pennylane-lightning/pull/640)
|
1026
|
+
|
1027
|
+
* Update C++ and Python GitHub actions names to include the matrix info.
|
1028
|
+
[(#717)](https://github.com/PennyLaneAI/pennylane-lightning/pull/717)
|
1029
|
+
|
1030
|
+
* Remove `CPhase` in favour of `CPhaseShift` in Lightning devices.
|
1031
|
+
[(#717)](https://github.com/PennyLaneAI/pennylane-lightning/pull/717)
|
1032
|
+
|
1033
|
+
* The various OpenMP configurations of Lightning-Qubit are tested in parallel on different Github Actions runners.
|
1034
|
+
[(#712)](https://github.com/PennyLaneAI/pennylane-lightning/pull/712)
|
1035
|
+
|
1036
|
+
* Update Linux wheels to use `manylinux_2_28` images.
|
1037
|
+
[(#667)](https://github.com/PennyLaneAI/pennylane-lightning/pull/667)
|
1038
|
+
|
1039
|
+
* Add support for `qml.expval` and `qml.var` in the `lightning.tensor` device for the `quimb` interface and the MPS method.
|
1040
|
+
[(#686)](https://github.com/PennyLaneAI/pennylane-lightning/pull/686)
|
1041
|
+
|
1042
|
+
* Changed the name of `lightning.tensor` to `default.tensor` with the `quimb` backend.
|
1043
|
+
[(#719)](https://github.com/PennyLaneAI/pennylane-lightning/pull/719)
|
1044
|
+
|
1045
|
+
* `lightning.qubit` and `lightning.kokkos` adhere to user-specified mid-circuit measurement configuration options.
|
1046
|
+
[(#736)](https://github.com/PennyLaneAI/pennylane-lightning/pull/736)
|
1047
|
+
|
1048
|
+
* Patch the C++ `Measurements.probs(wires)` method in Lightning-Qubit and Lightning-Kokkos to `Measurements.probs()` when called with all wires.
|
1049
|
+
This will trigger a more optimized implementation for calculating the probabilities of the entire system.
|
1050
|
+
[(#744)](https://github.com/PennyLaneAI/pennylane-lightning/pull/744)
|
1051
|
+
|
1052
|
+
* Remove the daily schedule from the "Compat Check w/PL - release/release" GitHub action.
|
1053
|
+
[(#746)](https://github.com/PennyLaneAI/pennylane-lightning/pull/746)
|
1054
|
+
|
1055
|
+
* Remove the required `scipy` config file for Lightning-Qubit. The support is now maintained by passing `SCIPY_LIBS_PATH` to the compiler.
|
1056
|
+
[(#775)](https://github.com/PennyLaneAI/pennylane-lightning/pull/775)
|
1057
|
+
|
1058
|
+
### Documentation
|
1059
|
+
|
1060
|
+
* Add installation instructions and documentation for `lightning.tensor`.
|
1061
|
+
[(#756)](https://github.com/PennyLaneAI/pennylane-lightning/pull/756)
|
1062
|
+
|
1063
|
+
### Bug fixes
|
1064
|
+
|
1065
|
+
* Don't route `probs(wires=[])` to `probs(all_wires)` in Lightning-Kokkos.
|
1066
|
+
[(#762)](https://github.com/PennyLaneAI/pennylane-lightning/pull/762)
|
1067
|
+
|
1068
|
+
* `ControlledQubitUnitary` is present in the Python device but not the TOML files. It is added to the decomposition gates since it can be implemented in its alternate form of `C(QubitUnitary)`.
|
1069
|
+
[(#767)](https://github.com/PennyLaneAI/pennylane-lightning/pull/767)
|
1070
|
+
|
1071
|
+
* Update the Lightning TOML files to indicate that non-commuting observables are supported.
|
1072
|
+
[(#764)](https://github.com/PennyLaneAI/pennylane-lightning/pull/764)
|
1073
|
+
|
1074
|
+
* Fix regex matching issue with auto on-boarding of release candidate branch to using the large runner queue.
|
1075
|
+
[(#774)](https://github.com/PennyLaneAI/pennylane-lightning/pull/774)
|
1076
|
+
|
1077
|
+
* Fix random CI failures for `lightning.tensor` Python unit tests and ignore `lightning_tensor` paths.
|
1078
|
+
[(#761)](https://github.com/PennyLaneAI/pennylane-lightning/pull/761)
|
1079
|
+
|
1080
|
+
* `lightning.qubit` and `lightning.kokkos` use `qml.ops.Conditional.base` instead of `qml.ops.Conditional.then_op`.
|
1081
|
+
[(#752)](https://github.com/PennyLaneAI/pennylane-lightning/pull/752)
|
1082
|
+
|
1083
|
+
* The preprocessing step in `lightning.qubit` now uses interface information to properly support the hardware-like postselection for mid-circuit measurements.
|
1084
|
+
[(#760)](https://github.com/PennyLaneAI/pennylane-lightning/pull/760)
|
1085
|
+
|
1086
|
+
* Fix AVX streaming operation support with newer GCC.
|
1087
|
+
[(#729)](https://github.com/PennyLaneAI/pennylane-lightning/pull/729)
|
1088
|
+
|
1089
|
+
* Revert changes calling the templated `IMAG`, `ONE`, `ZERO` functions in Kokkos kernels since they are incompatible with device execution.
|
1090
|
+
[(#733)](https://github.com/PennyLaneAI/pennylane-lightning/pull/733)
|
1091
|
+
|
1092
|
+
* The `tests_lkcpu_python.yml` workflow properly checks out the release or stable version of Lightning-Qubit during the test job.
|
1093
|
+
[(#723)](https://github.com/PennyLaneAI/pennylane-lightning/pull/723)
|
1094
|
+
|
1095
|
+
* Fix PennyLane Lightning-Kokkos and Lightning-Qubit tests for stable/stable configuration.
|
1096
|
+
[(#734)](https://github.com/PennyLaneAI/pennylane-lightning/pull/734)
|
1097
|
+
|
1098
|
+
* Remove the Autoray dependency from requirement files.
|
1099
|
+
[(#736)](https://github.com/PennyLaneAI/pennylane-lightning/pull/736)
|
1100
|
+
|
1101
|
+
* Fix the `cuda-runtime-12-0` dependency issue on RHEL8.
|
1102
|
+
[(#739)](https://github.com/PennyLaneAI/pennylane-lightning/pull/739)
|
1103
|
+
|
1104
|
+
* Fix the memory segmentation fault when initializing zero-wire Lightning-Kokkos.
|
1105
|
+
[(#757)](https://github.com/PennyLaneAI/pennylane-lightning/pull/757)
|
1106
|
+
|
1107
|
+
* Remove `pennylane.ops.op_math.controlled_decompositions.ctrl_decomp_zyz` tests with `len(control_wires) > 1`.
|
1108
|
+
[(#757)](https://github.com/PennyLaneAI/pennylane-lightning/pull/757)
|
1109
|
+
|
1110
|
+
* Add support for Scipy v1.14.
|
1111
|
+
[(#776)](https://github.com/PennyLaneAI/pennylane-lightning/pull/776)
|
1112
|
+
|
1113
|
+
* Add pickle support for the `DevPool` object in `lightning.gpu`.
|
1114
|
+
[(#772)](https://github.com/PennyLaneAI/pennylane-lightning/pull/772)
|
1115
|
+
|
1116
|
+
### Contributors
|
1117
|
+
|
1118
|
+
This release contains contributions from (in alphabetical order):
|
1119
|
+
|
1120
|
+
Ali Asadi, Amintor Dusko, Lillian Frederiksen, Pietropaolo Frisoni, David Ittah, Vincent Michaud-Rioux, Lee James O'Riordan, Mudit Pandey, Shuli Shu, Jay Soni
|
1121
|
+
|
1122
|
+
---
|
1123
|
+
|
1124
|
+
# Release 0.36.0
|
1125
|
+
|
1126
|
+
### New features since last release
|
1127
|
+
|
1128
|
+
* Add `cutensornet`-backed `MPS` C++ layer to `lightning.tensor`.
|
1129
|
+
[(#704)](https://github.com/PennyLaneAI/pennylane-lightning/pull/704)
|
1130
|
+
|
1131
|
+
* Add Python class for the `lightning.tensor` device which uses the new device API and the interface for `quimb` based on the MPS method.
|
1132
|
+
[(#671)](https://github.com/PennyLaneAI/pennylane-lightning/pull/671)
|
1133
|
+
|
1134
|
+
* Add compile-time support for AVX2/512 streaming operations in `lightning.qubit`.
|
1135
|
+
[(#664)](https://github.com/PennyLaneAI/pennylane-lightning/pull/664)
|
1136
|
+
|
1137
|
+
* `lightning.kokkos` supports mid-circuit measurements.
|
1138
|
+
[(#672)](https://github.com/PennyLaneAI/pennylane-lightning/pull/672)
|
1139
|
+
|
1140
|
+
* Add dynamic linking to LAPACK/OpenBlas shared objects in `scipy.libs` for both C++ and Python layer.
|
1141
|
+
[(#653)](https://github.com/PennyLaneAI/pennylane-lightning/pull/653)
|
1142
|
+
|
1143
|
+
* `lightning.qubit` supports mid-circuit measurements.
|
1144
|
+
[(#650)](https://github.com/PennyLaneAI/pennylane-lightning/pull/650)
|
1145
|
+
|
1146
|
+
* Add finite shots support in `lightning.qubit2`.
|
1147
|
+
[(#630)](https://github.com/PennyLaneAI/pennylane-lightning/pull/630)
|
1148
|
+
|
1149
|
+
* Add `collapse` and `normalize` methods to the `StateVectorLQubit` classes, enabling "branching" of the wavefunction. Add methods to create and seed an RNG in the `Measurements` modules.
|
1150
|
+
[(#645)](https://github.com/PennyLaneAI/pennylane-lightning/pull/645)
|
1151
|
+
|
1152
|
+
* Add two new Python classes (LightningStateVector and LightningMeasurements) to support `lightning.qubit2`.
|
1153
|
+
[(#613)](https://github.com/PennyLaneAI/pennylane-lightning/pull/613)
|
1154
|
+
|
1155
|
+
* Add analytic-mode `qml.probs` and `qml.var` support in `lightning.qubit2`.
|
1156
|
+
[(#627)](https://github.com/PennyLaneAI/pennylane-lightning/pull/627)
|
1157
|
+
|
1158
|
+
* Add `LightningAdjointJacobian` to support `lightning.qubit2`.
|
1159
|
+
[(#631)](https://github.com/PennyLaneAI/pennylane-lightning/pull/631)
|
1160
|
+
|
1161
|
+
* Add `lightning.qubit2` device which uses the new device API.
|
1162
|
+
[(#607)](https://github.com/PennyLaneAI/pennylane-lightning/pull/607)
|
1163
|
+
[(#628)](https://github.com/PennyLaneAI/pennylane-lightning/pull/628)
|
1164
|
+
|
1165
|
+
* Add Vector-Jacobian Product calculation support to `lightning.qubit`.
|
1166
|
+
[(#644)](https://github.com/PennyLaneAI/pennylane-lightning/pull/644)
|
1167
|
+
|
1168
|
+
* Add support for using new operator arithmetic as the default.
|
1169
|
+
[(#649)](https://github.com/PennyLaneAI/pennylane-lightning/pull/649)
|
1170
|
+
|
1171
|
+
### Breaking changes
|
1172
|
+
|
1173
|
+
* Split Lightning-Qubit and Lightning-Kokkos CPU Python tests with `pytest-split`. Remove `SERIAL` from Kokkos' `exec_model` matrix. Remove `all` from Lightning-Kokkos' `pl_backend` matrix. Move `clang-tidy` checks to `tidy.yml`. Avoid editable `pip` installations.
|
1174
|
+
[(#696)](https://github.com/PennyLaneAI/pennylane-lightning/pull/696)
|
1175
|
+
* Update `lightning.gpu` and `lightning.kokkos` to raise an error instead of falling back to `default.qubit`.
|
1176
|
+
[(#689)](https://github.com/PennyLaneAI/pennylane-lightning/pull/689)
|
1177
|
+
|
1178
|
+
* Add `paths` directives to test workflows to avoid running tests that cannot be impacted by changes.
|
1179
|
+
[(#699)](https://github.com/PennyLaneAI/pennylane-lightning/pull/699)
|
1180
|
+
[(#695)](https://github.com/PennyLaneAI/pennylane-lightning/pull/695)
|
1181
|
+
|
1182
|
+
* Move common components of `/src/simulator/lightning_gpu/utils/` to `/src/utils/cuda_utils/`.
|
1183
|
+
[(#676)](https://github.com/PennyLaneAI/pennylane-lightning/pull/676)
|
1184
|
+
|
1185
|
+
* Deprecate static LAPACK linking support.
|
1186
|
+
[(#653)](https://github.com/PennyLaneAI/pennylane-lightning/pull/653)
|
1187
|
+
|
1188
|
+
* Migrate `lightning.qubit` to the new device API.
|
1189
|
+
[(#646)](https://github.com/PennyLaneAI/pennylane-lightning/pull/646)
|
1190
|
+
|
1191
|
+
* Introduce `ci:build_wheels` label, which controls wheel building on `pull_request` and other triggers.
|
1192
|
+
[(#648)](https://github.com/PennyLaneAI/pennylane-lightning/pull/648)
|
1193
|
+
|
1194
|
+
* Remove building wheels for Lightning Kokkos on Windows.
|
1195
|
+
[(#693)](https://github.com/PennyLaneAI/pennylane-lightning/pull/693)
|
1196
|
+
|
1197
|
+
### Improvements
|
1198
|
+
|
1199
|
+
* Add tests for Windows Wheels, fix ill-defined caching, and set the proper backend for `lightning.kokkos` wheels.
|
1200
|
+
[(#693)](https://github.com/PennyLaneAI/pennylane-lightning/pull/693)
|
1201
|
+
|
1202
|
+
* Replace string comparisons by `isinstance` checks where possible.
|
1203
|
+
[(#691)](https://github.com/PennyLaneAI/pennylane-lightning/pull/691)
|
1204
|
+
|
1205
|
+
* Refactor `cuda_utils` to remove its dependency on `custatevec.h`.
|
1206
|
+
[(#681)](https://github.com/PennyLaneAI/pennylane-lightning/pull/681)
|
1207
|
+
|
1208
|
+
* Add `test_templates.py` module where Grover and QSVT are tested.
|
1209
|
+
[(#684)](https://github.com/PennyLaneAI/pennylane-lightning/pull/684)
|
1210
|
+
|
1211
|
+
* Create `cuda_utils` for common usage of CUDA related backends.
|
1212
|
+
[(#676)](https://github.com/PennyLaneAI/pennylane-lightning/pull/676)
|
1213
|
+
|
1214
|
+
* Refactor `lightning_gpu_utils` unit tests to remove the dependency on statevector class.
|
1215
|
+
[(#675)](https://github.com/PennyLaneAI/pennylane-lightning/pull/675)
|
1216
|
+
|
1217
|
+
* Upgrade GitHub actions versions from v3 to v4.
|
1218
|
+
[(#669)](https://github.com/PennyLaneAI/pennylane-lightning/pull/669)
|
1219
|
+
|
1220
|
+
* Initialize the private attributes `gates_indices_` and `generators_indices_` of `StateVectorKokkos` using the definitions of the `Pennylane::Gates::Constant` namespace.
|
1221
|
+
[(#641)](https://github.com/PennyLaneAI/pennylane-lightning/pull/641)
|
1222
|
+
|
1223
|
+
* Add `isort` to `requirements-dev.txt` and run before `black` upon `make format` to sort Python imports.
|
1224
|
+
[(#623)](https://github.com/PennyLaneAI/pennylane-lightning/pull/623)
|
1225
|
+
|
1226
|
+
* Improve support for new operator arithmetic with `QuantumScriptSerializer.serialize_observables`.
|
1227
|
+
[(#670)](https://github.com/PennyLaneAI/pennylane-lightning/pull/670)
|
1228
|
+
|
1229
|
+
* Add `workflow_dispatch` to wheels recipes; allowing developers to build wheels manually on a branch instead of temporarily changing the headers.
|
1230
|
+
[(#679)](https://github.com/PennyLaneAI/pennylane-lightning/pull/679)
|
1231
|
+
|
1232
|
+
* Add the `ENABLE_LAPACK` compilation flag to toggle dynamic linking to LAPACK library.
|
1233
|
+
[(#678)](https://github.com/PennyLaneAI/pennylane-lightning/pull/678)
|
1234
|
+
|
1235
|
+
### Documentation
|
1236
|
+
|
1237
|
+
### Bug fixes
|
1238
|
+
|
1239
|
+
* Fix wire order permutations when using `qml.probs` with out-of-order wires in Lightning-Qubit.
|
1240
|
+
[(#707)](https://github.com/PennyLaneAI/pennylane-lightning/pull/707)
|
1241
|
+
|
1242
|
+
* Lightning-Qubit once again respects the wire order specified on device instantiation.
|
1243
|
+
[(#705)](https://github.com/PennyLaneAI/pennylane-lightning/pull/705)
|
1244
|
+
|
1245
|
+
* `dynamic_one_shot` was refactored to use `SampleMP` measurements as a way to return the mid-circuit measurement samples. `LightningQubit's `simulate` is modified accordingly.
|
1246
|
+
[(#694)](https://github.com/PennyLaneAI/pennylane-lightning/pull/694)
|
1247
|
+
|
1248
|
+
* Lightning-Qubit correctly decomposes state prep operations when used in the middle of a circuit.
|
1249
|
+
[(#687)](https://github.com/PennyLaneAI/pennylane-lightning/pull/687)
|
1250
|
+
|
1251
|
+
* Lightning-Qubit correctly decomposes `qml.QFT` and `qml.GroverOperator` if `len(wires)` is greater than 9 and 12 respectively.
|
1252
|
+
[(#687)](https://github.com/PennyLaneAI/pennylane-lightning/pull/687)
|
1253
|
+
|
1254
|
+
* Specify `isort` `--py` (Python version) and `-l` (max line length) to stabilize `isort` across Python versions and environments.
|
1255
|
+
[(#647)](https://github.com/PennyLaneAI/pennylane-lightning/pull/647)
|
1256
|
+
|
1257
|
+
* Fix random `coverage xml` CI issues.
|
1258
|
+
[(#635)](https://github.com/PennyLaneAI/pennylane-lightning/pull/635)
|
1259
|
+
|
1260
|
+
* `lightning.qubit` correctly decomposed state preparation operations with adjoint differentiation.
|
1261
|
+
[(#661)](https://github.com/PennyLaneAI/pennylane-lightning/pull/661)
|
1262
|
+
|
1263
|
+
* Fix the failed observable serialization unit tests.
|
1264
|
+
[(#683)](https://github.com/PennyLaneAI/pennylane-lightning/pull/683)
|
1265
|
+
|
1266
|
+
* Update the Lightning-Qubit new device API to work with Catalyst.
|
1267
|
+
[(#665)](https://github.com/PennyLaneAI/pennylane-lightning/pull/665)
|
1268
|
+
|
1269
|
+
* Update the version of `codecov-action` to v4 and fix the CodeCov issue with the PL-Lightning check-compatibility actions.
|
1270
|
+
[(#682)](https://github.com/PennyLaneAI/pennylane-lightning/pull/682)
|
1271
|
+
|
1272
|
+
* Refactor of dev prerelease auto-update-version workflow.
|
1273
|
+
[(#685)](https://github.com/PennyLaneAI/pennylane-lightning/pull/685)
|
1274
|
+
|
1275
|
+
* Remove gates unsupported by catalyst from TOML file.
|
1276
|
+
[(#698)](https://github.com/PennyLaneAI/pennylane-lightning/pull/698)
|
1277
|
+
|
1278
|
+
* Increase tolerance for a flaky test.
|
1279
|
+
[(#703)](https://github.com/PennyLaneAI/pennylane-lightning/pull/703)
|
1280
|
+
|
1281
|
+
* Remove `ControlledQubitUnitary` in favour of `C(QubitUnitary)` from the list of supported operations and the device TOML file. The `stopping_condition` method guarantees the consistency of decompositions.
|
1282
|
+
[(#758)](https://github.com/PennyLaneAI/pennylane-lightning/pull/758)
|
1283
|
+
|
1284
|
+
* Raise a clear error message with initialization of `lightning.kokkos` with zero-qubit on Windows.
|
1285
|
+
[(#758)](https://github.com/PennyLaneAI/pennylane-lightning/pull/758)
|
1286
|
+
|
1287
|
+
|
1288
|
+
### Contributors
|
1289
|
+
|
1290
|
+
This release contains contributions from (in alphabetical order):
|
1291
|
+
|
1292
|
+
Ali Asadi, Amintor Dusko, Pietropaolo Frisoni, Thomas Germain, Christina Lee, Erick Ochoa Lopez, Vincent Michaud-Rioux, Rashid N H M, Lee James O'Riordan, Mudit Pandey, Shuli Shu
|
1293
|
+
|
1294
|
+
---
|
1295
|
+
|
1296
|
+
# Release 0.35.1
|
1297
|
+
|
1298
|
+
### Improvements
|
1299
|
+
|
1300
|
+
* Use the `adjoint` gate parameter to apply `qml.Adjoint` operations instead of matrix methods in `lightning.qubit`.
|
1301
|
+
[(#632)](https://github.com/PennyLaneAI/pennylane-lightning/pull/632)
|
1302
|
+
|
1303
|
+
### Bug fixes
|
1304
|
+
|
1305
|
+
* Fix `qml.Adjoint` support in `lightning.gpu` and `lightning.kokkos`.
|
1306
|
+
[(#632)](https://github.com/PennyLaneAI/pennylane-lightning/pull/632)
|
1307
|
+
|
1308
|
+
* Fix finite shots support in `lightning.qubit`, `lightning.gpu` and `lightning.kokkos`. The bug would impact calculations with measurements on observables with non-trivial diagonalizing gates and calculations with shot vectors.
|
1309
|
+
[(#632)](https://github.com/PennyLaneAI/pennylane-lightning/pull/632)
|
1310
|
+
|
1311
|
+
### Contributors
|
1312
|
+
|
1313
|
+
This release contains contributions from (in alphabetical order):
|
1314
|
+
|
1315
|
+
Vincent Michaud-Rioux
|
1316
|
+
|
1317
|
+
---
|
1318
|
+
|
1319
|
+
# Release 0.35.0
|
1320
|
+
|
1321
|
+
### New features since last release
|
1322
|
+
|
1323
|
+
* All backends now support `GlobalPhase` and `C(GlobalPhase)` in forward pass.
|
1324
|
+
[(#579)](https://github.com/PennyLaneAI/pennylane-lightning/pull/579)
|
1325
|
+
|
1326
|
+
* Add Hermitian observable support for shot-noise measurement and Lapack support.
|
1327
|
+
[(#569)](https://github.com/PennyLaneAI/pennylane-lightning/pull/569)
|
1328
|
+
|
1329
|
+
### Breaking changes
|
1330
|
+
|
1331
|
+
* Migrate `lightning.gpu` to CUDA 12.
|
1332
|
+
[(#606)](https://github.com/PennyLaneAI/pennylane-lightning/pull/606)
|
1333
|
+
|
1334
|
+
### Improvements
|
1335
|
+
|
1336
|
+
* Expand error values and strings returned from CUDA libraries.
|
1337
|
+
[(#617)](https://github.com/PennyLaneAI/pennylane-lightning/pull/617)
|
1338
|
+
|
1339
|
+
* `C(MultiRZ)` and `C(Rot)` gates are natively supported (with `LM` kernels).
|
1340
|
+
[(#614)](https://github.com/PennyLaneAI/pennylane-lightning/pull/614)
|
1341
|
+
|
1342
|
+
* Add adjoint support for `GlobalPhase` in Lightning-GPU and Lightning-Kokkos.
|
1343
|
+
[(#615)](https://github.com/PennyLaneAI/pennylane-lightning/pull/615)
|
1344
|
+
|
1345
|
+
* Lower the overheads of Windows CI tests.
|
1346
|
+
[(#610)](https://github.com/PennyLaneAI/pennylane-lightning/pull/610)
|
1347
|
+
|
1348
|
+
* Decouple LightningQubit memory ownership from numpy and migrate it to Lightning-Qubit managed state-vector class.
|
1349
|
+
[(#601)](https://github.com/PennyLaneAI/pennylane-lightning/pull/601)
|
1350
|
+
|
1351
|
+
* Expand support for Projector observables on Lightning-Kokkos.
|
1352
|
+
[(#601)](https://github.com/PennyLaneAI/pennylane-lightning/pull/601)
|
1353
|
+
|
1354
|
+
* Split Docker build cron job into two jobs: master and latest. This is mainly for reporting in the `plugin-test-matrix` repo.
|
1355
|
+
[(#600)](https://github.com/PennyLaneAI/pennylane-lightning/pull/600)
|
1356
|
+
|
1357
|
+
* The `BlockEncode` operation from PennyLane is now supported on all Lightning devices.
|
1358
|
+
[(#599)](https://github.com/PennyLaneAI/pennylane-lightning/pull/599)
|
1359
|
+
|
1360
|
+
* OpenMP acceleration can now be enabled at compile time for all `lightning.qubit` gate kernels using the `-DLQ_ENABLE_KERNEL_OMP=1` CMake argument.
|
1361
|
+
[(#510)](https://github.com/PennyLaneAI/pennylane-lightning/pull/510)
|
1362
|
+
|
1363
|
+
* Enable building Docker images for any branch or tag. Set the Docker build cron job to build images for the latest release and `master`.
|
1364
|
+
[(#598)](https://github.com/PennyLaneAI/pennylane-lightning/pull/598)
|
1365
|
+
|
1366
|
+
* Enable choosing the PennyLane-Lightning version and disabling push to Docker Hub in the Docker build workflow. Add a cron job calling the Docker build workflow.
|
1367
|
+
[(#597)](https://github.com/PennyLaneAI/pennylane-lightning/pull/597)
|
1368
|
+
|
1369
|
+
* Pull Kokkos v4.2.00 from the official Kokkos repository to test Lightning-Kokkos with the CUDA backend.
|
1370
|
+
[(#596)](https://github.com/PennyLaneAI/pennylane-lightning/pull/596)
|
1371
|
+
|
1372
|
+
* Remove deprecated MeasurementProcess.name.
|
1373
|
+
[(#605)](https://github.com/PennyLaneAI/pennylane-lightning/pull/605)
|
1374
|
+
|
1375
|
+
### Documentation
|
1376
|
+
|
1377
|
+
* Update requirements to build the documentation.
|
1378
|
+
[(#594)](https://github.com/PennyLaneAI/pennylane-lightning/pull/594)
|
1379
|
+
|
1380
|
+
### Bug fixes
|
1381
|
+
|
1382
|
+
* Downgrade auditwheel due to changes with library exclusion list.
|
1383
|
+
[(#620)](https://github.com/PennyLaneAI/pennylane-lightning/pull/620)
|
1384
|
+
|
1385
|
+
* List `GlobalPhase` gate in each device's TOML file.
|
1386
|
+
[(#615)](https://github.com/PennyLaneAI/pennylane-lightning/pull/615)
|
1387
|
+
|
1388
|
+
* Lightning-GPU's gate cache failed to distinguish between certain gates.
|
1389
|
+
For example, `MultiControlledX([0, 1, 2], "111")` and `MultiControlledX([0, 2], "00")` were applied as the same operation.
|
1390
|
+
This could happen with (at least) the following gates: `QubitUnitary`,`ControlledQubitUnitary`,`MultiControlledX`,`DiagonalQubitUnitary`,`PSWAP`,`OrbitalRotation`.
|
1391
|
+
[(#579)](https://github.com/PennyLaneAI/pennylane-lightning/pull/579)
|
1392
|
+
|
1393
|
+
* Ensure the stopping condition decompositions are respected for larger templated QFT and Grover operators.
|
1394
|
+
[(#609)](https://github.com/PennyLaneAI/pennylane-lightning/pull/609)
|
1395
|
+
|
1396
|
+
* Move concurrency group specifications from reusable Docker build workflow to the root workflows.
|
1397
|
+
[(#604)](https://github.com/PennyLaneAI/pennylane-lightning/pull/604)
|
1398
|
+
|
1399
|
+
* Fix `lightning-kokkos-cuda` Docker build and add CI workflow to build images and push to Docker Hub.
|
1400
|
+
[(#593)](https://github.com/PennyLaneAI/pennylane-lightning/pull/593)
|
1401
|
+
|
1402
|
+
* Update jax.config imports.
|
1403
|
+
[(#619)](https://github.com/PennyLaneAI/pennylane-lightning/pull/619)
|
1404
|
+
|
1405
|
+
* Fix apply state vector when using a Lightning handle.
|
1406
|
+
[(#622)](https://github.com/PennyLaneAI/pennylane-lightning/pull/622)
|
1407
|
+
|
1408
|
+
* Pinning Pytest to a version compatible with Flaky.
|
1409
|
+
[(#624)](https://github.com/PennyLaneAI/pennylane-lightning/pull/624)
|
1410
|
+
|
1411
|
+
### Contributors
|
1412
|
+
|
1413
|
+
This release contains contributions from (in alphabetical order):
|
1414
|
+
|
1415
|
+
Amintor Dusko, David Ittah, Vincent Michaud-Rioux, Lee J. O'Riordan, Shuli Shu, Matthew Silverman
|
1416
|
+
|
1417
|
+
---
|
1418
|
+
|
1419
|
+
# Release 0.34.0
|
1420
|
+
|
1421
|
+
### New features since last release
|
1422
|
+
|
1423
|
+
* Support added for Python 3.12 wheel builds.
|
1424
|
+
[(#541)](https://github.com/PennyLaneAI/pennylane-lightning/pull/541)
|
1425
|
+
|
1426
|
+
* Lightning-Qubit support arbitrary controlled gates (any wires and any control values). The kernels are implemented in the `LM` module.
|
1427
|
+
[(#576)](https://github.com/PennyLaneAI/pennylane-lightning/pull/576)
|
1428
|
+
|
1429
|
+
* Shot-noise related methods now accommodate observable objects with arbitrary eigenvalues. Add a Kronecker product method for two diagonal matrices.
|
1430
|
+
[(#570)](https://github.com/PennyLaneAI/pennylane-lightning/pull/570)
|
1431
|
+
|
1432
|
+
* Add shot-noise support for probs in the C++ layer. Probabilities are calculated from generated samples. All Lightning backends support this feature. Please note that target wires should be sorted in ascending manner.
|
1433
|
+
[(#568)](https://github.com/PennyLaneAI/pennylane-lightning/pull/568)
|
1434
|
+
|
1435
|
+
* Add `LM` kernels to apply arbitrary controlled operations efficiently.
|
1436
|
+
[(#516)](https://github.com/PennyLaneAI/pennylane-lightning/pull/516)
|
1437
|
+
|
1438
|
+
* Add shots support for variance value, probs, sample, counts calculation for given observables (`NamedObs`, `TensorProd` and `Hamiltonian`) based on Pauli words, `Identity` and `Hadamard` in the C++ layer. All Lightning backends support this support feature.
|
1439
|
+
[(#561)](https://github.com/PennyLaneAI/pennylane-lightning/pull/561)
|
1440
|
+
|
1441
|
+
* Add shots support for expectation value calculation for given observables (`NamedObs`, `TensorProd` and `Hamiltonian`) based on Pauli words, `Identity` and `Hadamard` in the C++ layer by adding `measure_with_samples` to the measurement interface. All Lightning backends support this support feature.
|
1442
|
+
[(#556)](https://github.com/PennyLaneAI/pennylane-lightning/pull/556)
|
1443
|
+
|
1444
|
+
* `qml.QubitUnitary` operators can be included in a circuit differentiated with the adjoint method. Lightning handles circuits with arbitrary non-differentiable `qml.QubitUnitary` operators. 1,2-qubit `qml.QubitUnitary` operators with differentiable parameters can be differentiated using decomposition.
|
1445
|
+
[(#540)] (https://github.com/PennyLaneAI/pennylane-lightning/pull/540)
|
1446
|
+
|
1447
|
+
### Breaking changes
|
1448
|
+
|
1449
|
+
* Set the default version of Kokkos to 4.2.00 throughout the project (CMake, CI, etc.)
|
1450
|
+
[(#578)] (https://github.com/PennyLaneAI/pennylane-lightning/pull/578)
|
1451
|
+
|
1452
|
+
* Overload `applyOperation` with a fifth `matrix` argument to all state vector classes to support arbitrary operations in `AdjointJacobianBase`.
|
1453
|
+
[(#540)] (https://github.com/PennyLaneAI/pennylane-lightning/pull/540)
|
1454
|
+
|
1455
|
+
### Improvements
|
1456
|
+
|
1457
|
+
* Ensure aligned memory used for numpy arrays with state-vector without reallocations.
|
1458
|
+
[(#572)](https://github.com/PennyLaneAI/pennylane-lightning/pull/572)
|
1459
|
+
|
1460
|
+
* Unify error messages of shot measurement related unsupported observables to better Catalyst.
|
1461
|
+
[(#577)](https://github.com/PennyLaneAI/pennylane-lightning/pull/577)
|
1462
|
+
|
1463
|
+
* Add configuration files to improve compatibility with Catalyst.
|
1464
|
+
[(#566)](https://github.com/PennyLaneAI/pennylane-lightning/pull/566)
|
1465
|
+
|
1466
|
+
* Refactor shot-noise related methods of MeasurementsBase class in the C++ layer and eigenvalues are not limited to `1` and `-1`. Add `getObs()` method to Observables class. Refactor `applyInPlaceShots` to allow users to get eigenvalues of Observables object. Deprecated `_preprocess_state` method in `MeasurementsBase` class for safer use of the `LightningQubitRaw` backend.
|
1467
|
+
[(#570)](https://github.com/PennyLaneAI/pennylane-lightning/pull/570)
|
1468
|
+
|
1469
|
+
* Modify `setup.py` to use backend-specific build directory (`f"build_{backend}"`) to accelerate rebuilding backends in alternance.
|
1470
|
+
[(#540)] (https://github.com/PennyLaneAI/pennylane-lightning/pull/540)
|
1471
|
+
|
1472
|
+
* Update Dockerfile and rewrite the `build-wheel-lightning-gpu` stage to build Lightning-GPU from the `pennylane-lightning` monorepo.
|
1473
|
+
[(#539)] (https://github.com/PennyLaneAI/pennylane-lightning/pull/539)
|
1474
|
+
|
1475
|
+
* Add the MPI test CI workflows of Lightning-GPU in compatibility cron jobs.
|
1476
|
+
[(#536)] (https://github.com/PennyLaneAI/pennylane-lightning/pull/536)
|
1477
|
+
|
1478
|
+
* Add MPI synchronization in places to safely handle communicated data.
|
1479
|
+
[(#538)](https://github.com/PennyLaneAI/pennylane-lightning/pull/538)
|
1480
|
+
|
1481
|
+
* Add release option in compatibility cron jobs to test the release candidates of PennyLane and the Lightning plugins against one another.
|
1482
|
+
[(#531)] (https://github.com/PennyLaneAI/pennylane-lightning/pull/531)
|
1483
|
+
|
1484
|
+
* Add GPU workflows in compatibility cron jobs to test Lightning-GPU and Lightning-Kokkos with the Kokkos CUDA backend.
|
1485
|
+
[(#528)] (https://github.com/PennyLaneAI/pennylane-lightning/pull/528)
|
1486
|
+
|
1487
|
+
### Documentation
|
1488
|
+
|
1489
|
+
* Fixed a small typo in the documentation page for the PennyLane-Lightning GPU device.
|
1490
|
+
[(#563)](https://github.com/PennyLaneAI/pennylane-lightning/pull/563)
|
1491
|
+
|
1492
|
+
* Add OpenGraph social preview for Lightning docs.
|
1493
|
+
[(#574)](https://github.com/PennyLaneAI/pennylane-lightning/pull/574)
|
1494
|
+
|
1495
|
+
### Bug fixes
|
1496
|
+
|
1497
|
+
* Fix CodeCov file contention issue when uploading data from many workloads.
|
1498
|
+
[(#584)](https://github.com/PennyLaneAI/pennylane-lightning/pull/584)
|
1499
|
+
|
1500
|
+
* Ensure the `lightning.gpu` intermediate wheel builds are uploaded to TestPyPI.
|
1501
|
+
[(#575)](https://github.com/PennyLaneAI/pennylane-lightning/pull/575)
|
1502
|
+
|
1503
|
+
* Allow support for newer clang-tidy versions on non-x86_64 platforms.
|
1504
|
+
[(#567)](https://github.com/PennyLaneAI/pennylane-lightning/pull/567)
|
1505
|
+
|
1506
|
+
* Do not run C++ tests when testing for compatibility with PennyLane, hence fixing plugin-matrix failures. Fix Lightning-GPU workflow trigger.
|
1507
|
+
[(#571)](https://github.com/PennyLaneAI/pennylane-lightning/pull/571)
|
1508
|
+
|
1509
|
+
* Revert single-node multi-GPU batching behaviour to match https://github.com/PennyLaneAI/pennylane-lightning-gpu/pull/27.
|
1510
|
+
[(#564)](https://github.com/PennyLaneAI/pennylane-lightning/pull/564)
|
1511
|
+
|
1512
|
+
* Move deprecated `stateprep` `QuantumScript` argument into the operation list in `mpitests/test_adjoint_jacobian.py`.
|
1513
|
+
[(#540)] (https://github.com/PennyLaneAI/pennylane-lightning/pull/540)
|
1514
|
+
|
1515
|
+
* Fix MPI Python unit tests for the adjoint method.
|
1516
|
+
[(#538)](https://github.com/PennyLaneAI/pennylane-lightning/pull/538)
|
1517
|
+
|
1518
|
+
* Fix the issue with assigning kernels to ops before registering kernels on macOS
|
1519
|
+
[(#582)](https://github.com/PennyLaneAI/pennylane-lightning/pull/582)
|
1520
|
+
|
1521
|
+
* Update `MANIFEST.in` to include device config files and `CHANGELOG.md`
|
1522
|
+
[(#585)](https://github.com/PennyLaneAI/pennylane-lightning/pull/585)
|
1523
|
+
|
1524
|
+
### Contributors
|
1525
|
+
|
1526
|
+
This release contains contributions from (in alphabetical order):
|
1527
|
+
|
1528
|
+
Ali Asadi, Isaac De Vlugt, Amintor Dusko, Vincent Michaud-Rioux, Erick Ochoa Lopez, Lee James O'Riordan, Shuli Shu
|
1529
|
+
|
1530
|
+
---
|
1531
|
+
|
1532
|
+
# Release 0.33.1
|
1533
|
+
|
1534
|
+
* pip-installed CUDA runtime libraries can now be accessed from a virtualenv.
|
1535
|
+
[(#543)](https://github.com/PennyLaneAI/pennylane-lightning/pull/543)
|
1536
|
+
|
1537
|
+
### Bug fixes
|
1538
|
+
|
1539
|
+
* The pybind11 compiled module RPATH linkage has been restored to pre-0.33 behaviour.
|
1540
|
+
[(#543)](https://github.com/PennyLaneAI/pennylane-lightning/pull/543)
|
1541
|
+
|
1542
|
+
### Contributors
|
1543
|
+
|
1544
|
+
This release contains contributions from (in alphabetical order):
|
1545
|
+
|
1546
|
+
Lee J. O'Riordan
|
1547
|
+
|
1548
|
+
---
|
1549
|
+
|
1550
|
+
# Release 0.33.0
|
1551
|
+
|
1552
|
+
### New features since last release
|
1553
|
+
|
1554
|
+
* Add documentation updates for the `lightning.gpu` backend.
|
1555
|
+
[(#525)] (https://github.com/PennyLaneAI/pennylane-lightning/pull/525)
|
1556
|
+
|
1557
|
+
* Add `SparseHamiltonian` support for Lightning-Qubit and Lightning-GPU.
|
1558
|
+
[(#526)] (https://github.com/PennyLaneAI/pennylane-lightning/pull/526)
|
1559
|
+
|
1560
|
+
* Add `SparseHamiltonian` support for Lightning-Kokkos.
|
1561
|
+
[(#527)] (https://github.com/PennyLaneAI/pennylane-lightning/pull/527)
|
1562
|
+
|
1563
|
+
* Integrate python/pybind layer of distributed Lightning-GPU into the Lightning monorepo with Python unit tests.
|
1564
|
+
[(#518)] (https://github.com/PennyLaneAI/pennylane-lightning/pull/518)
|
1565
|
+
|
1566
|
+
* Integrate the distributed C++ backend of Lightning-GPU into the Lightning monorepo.
|
1567
|
+
[(#514)] (https://github.com/PennyLaneAI/pennylane-lightning/pull/514)
|
1568
|
+
|
1569
|
+
* Integrate Lightning-GPU into the Lightning monorepo. The new backend is named `lightning.gpu` and includes all single-GPU features.
|
1570
|
+
[(#499)] (https://github.com/PennyLaneAI/pennylane-lightning/pull/499)
|
1571
|
+
|
1572
|
+
* Build Linux wheels for Lightning-GPU (CUDA-11).
|
1573
|
+
[(#517)](https://github.com/PennyLaneAI/pennylane-lightning/pull/517)
|
1574
|
+
|
1575
|
+
* Add `Dockerfile` in `docker` and `make docker` workflow in `Makefile`. The Docker images and documentation are available on [DockerHub](https://hub.docker.com/repository/docker/pennylaneai/pennylane).
|
1576
|
+
[(#496)](https://github.com/PennyLaneAI/pennylane-lightning/pull/496)
|
1577
|
+
|
1578
|
+
* Add mid-circuit state preparation operation tests.
|
1579
|
+
[(#495)](https://github.com/PennyLaneAI/pennylane-lightning/pull/495)
|
1580
|
+
|
1581
|
+
### Breaking changes
|
1582
|
+
|
1583
|
+
* Add `tests_gpu.yml` workflow to test the Lightning-Kokkos backend with CUDA-12.
|
1584
|
+
[(#494)](https://github.com/PennyLaneAI/pennylane-lightning/pull/494)
|
1585
|
+
|
1586
|
+
* Implement `LM::GeneratorDoubleExcitation`, `LM::GeneratorDoubleExcitationMinus`, `LM::GeneratorDoubleExcitationPlus` kernels. Lightning-Qubit default kernels are now strictly from the `LM` implementation, which requires less memory and is faster for large state vectors.
|
1587
|
+
[(#512)](https://github.com/PennyLaneAI/pennylane-lightning/pull/512)
|
1588
|
+
|
1589
|
+
* Add workflows validating compatibility between PennyLane and Lightning's most recent stable releases and development (latest) versions.
|
1590
|
+
[(#507)](https://github.com/PennyLaneAI/pennylane-lightning/pull/507)
|
1591
|
+
[(#498)](https://github.com/PennyLaneAI/pennylane-lightning/pull/498)
|
1592
|
+
|
1593
|
+
* Introduce `timeout-minutes` in various workflows, mainly to avoid Windows builds hanging for several hours.
|
1594
|
+
[(#503)](https://github.com/PennyLaneAI/pennylane-lightning/pull/503)
|
1595
|
+
|
1596
|
+
* Cast integral-valued arrays to the device's complex type on entry in `_preprocess_state_vector` to ensure the state is correctly represented with floating-point numbers.
|
1597
|
+
[(#501)](https://github.com/PennyLaneAI/pennylane-lightning/pull/501)
|
1598
|
+
|
1599
|
+
* Update `DefaultQubit` to `DefaultQubitLegacy` on Lightning fallback.
|
1600
|
+
[(#500)](https://github.com/PennyLaneAI/pennylane-lightning/pull/500)
|
1601
|
+
|
1602
|
+
* Enums defined in `GateOperation.hpp` start at `1` (previously `0`). `::BEGIN` is introduced in a few places where it was assumed `0` accordingly.
|
1603
|
+
[(#485)](https://github.com/PennyLaneAI/pennylane-lightning/pull/485)
|
1604
|
+
|
1605
|
+
* Enable pre-commit hooks to format all Python files and linting of all Python source files.
|
1606
|
+
[(#485)](https://github.com/PennyLaneAI/pennylane-lightning/pull/485)
|
1607
|
+
|
1608
|
+
### Improvements
|
1609
|
+
|
1610
|
+
* Improve Python testing for Lightning-GPU (+MPI) by adding jobs in Actions files and adding Python tests to increase code coverage.
|
1611
|
+
[(#522)](https://github.com/PennyLaneAI/pennylane-lightning/pull/522)
|
1612
|
+
|
1613
|
+
* Add support for `pip install pennylane-lightning[kokkos]` for the OpenMP backend.
|
1614
|
+
[(#515)](https://github.com/PennyLaneAI/pennylane-lightning/pull/515)
|
1615
|
+
|
1616
|
+
* Update `setup.py` to allow for multi-package co-existence. The `PennyLane_Lightning` package now is the responsible for the core functionality, and will be depended upon by all other extensions.
|
1617
|
+
[(#504)] (https://github.com/PennyLaneAI/pennylane-lightning/pull/504)
|
1618
|
+
|
1619
|
+
* Redesign Lightning-Kokkos `StateVectorKokkos` class to use Kokkos `RangePolicy` together with special functors in `applyMultiQubitOp` to apply 1- to 4-wire generic unitary gates. For more than 4 wires, the general implementation using Kokkos `TeamPolicy` is employed to yield the best all-around performance.
|
1620
|
+
[(#490)] (https://github.com/PennyLaneAI/pennylane-lightning/pull/490)
|
1621
|
+
|
1622
|
+
* Redesign Lightning-Kokkos `Measurements` class to use Kokkos `RangePolicy` together with special functors to obtain the expectation value of 1- to 4-wire generic unitary gates. For more than 4 wires, the general implementation using Kokkos `TeamPolicy` is employed to yield the best all-around performance.
|
1623
|
+
[(#489)] (https://github.com/PennyLaneAI/pennylane-lightning/pull/489)
|
1624
|
+
|
1625
|
+
* Add tests to increase Lightning-Kokkos coverage.
|
1626
|
+
[(#485)](https://github.com/PennyLaneAI/pennylane-lightning/pull/485)
|
1627
|
+
|
1628
|
+
* Add memory locality tag reporting and adjoint diff dispatch for `lightning.qubit` statevector classes.
|
1629
|
+
[(#492)](https://github.com/PennyLaneAI/pennylane-lightning/pull/492)
|
1630
|
+
|
1631
|
+
* Add support for dependent external packages to C++ core.
|
1632
|
+
[(#482)](https://github.com/PennyLaneAI/pennylane-lightning/pull/482)
|
1633
|
+
|
1634
|
+
* Add support for building multiple backend simulators.
|
1635
|
+
[(#497)](https://github.com/PennyLaneAI/pennylane-lightning/pull/497)
|
1636
|
+
|
1637
|
+
### Documentation
|
1638
|
+
|
1639
|
+
### Bug fixes
|
1640
|
+
|
1641
|
+
* Fix CI issues running python-cov with MPI.
|
1642
|
+
[(#535)](https://github.com/PennyLaneAI/pennylane-lightning/pull/535)
|
1643
|
+
|
1644
|
+
* Re-add support for `pip install pennylane-lightning[gpu]`.
|
1645
|
+
[(#515)](https://github.com/PennyLaneAI/pennylane-lightning/pull/515)
|
1646
|
+
|
1647
|
+
* Switch most Lightning-Qubit default kernels to `LM`. Add `LM::multiQubitOp` tests, failing when targeting out-of-order wires clustered close to `num_qubits-1`. Fix the `LM::multiQubitOp` kernel implementation by introducing a generic `revWireParity` routine and replacing the `bitswap`-based implementation. Mimic the changes fixing the corresponding `multiQubitOp` and `expval` functors in Lightning-Kokkos.
|
1648
|
+
[(#511)](https://github.com/PennyLaneAI/pennylane-lightning/pull/511)
|
1649
|
+
|
1650
|
+
* Fix RTD builds by removing unsupported `system_packages` configuration option.
|
1651
|
+
[(#491)](https://github.com/PennyLaneAI/pennylane-lightning/pull/491)
|
1652
|
+
|
1653
|
+
### Contributors
|
1654
|
+
|
1655
|
+
This release contains contributions from (in alphabetical order):
|
1656
|
+
|
1657
|
+
Ali Asadi, Amintor Dusko, Vincent Michaud-Rioux, Lee J. O'Riordan, Shuli Shu
|
1658
|
+
|
1659
|
+
---
|
1660
|
+
|
1661
|
+
# Release 0.32.0
|
1662
|
+
|
1663
|
+
### New features since last release
|
1664
|
+
|
1665
|
+
* The `lightning.kokkos` backend supports Nvidia GPU execution (with Kokkos v4 and CUDA v12).
|
1666
|
+
[(#477)](https://github.com/PennyLaneAI/pennylane-lightning/pull/477)
|
1667
|
+
|
1668
|
+
* Complete overhaul of repository structure to facilitates integration of multiple backends. Refactoring efforts we directed to improve development performance, code reuse and decrease overall overhead to propagate changes through backends. New C++ modular build strategy allows for faster test builds restricted to a module. Update CI/CD actions concurrency strategy. Change minimal Python version to 3.9.
|
1669
|
+
[(#472)] (https://github.com/PennyLaneAI/pennylane-lightning/pull/472)
|
1670
|
+
|
1671
|
+
* Wheels are built with native support for sparse Hamiltonians.
|
1672
|
+
[(#470)] (https://github.com/PennyLaneAI/pennylane-lightning/pull/470)
|
1673
|
+
|
1674
|
+
* Add native support to sparse Hamiltonians in the absence of Kokkos & Kokkos-kernels.
|
1675
|
+
[(#465)] (https://github.com/PennyLaneAI/pennylane-lightning/pull/465)
|
1676
|
+
|
1677
|
+
### Breaking changes
|
1678
|
+
|
1679
|
+
* Rename `QubitStateVector` to `StatePrep` in the Lightning-Qubit and `Lightning-Kokkos` classes.
|
1680
|
+
[(#486)](https://github.com/PennyLaneAI/pennylane-lightning/pull/486)
|
1681
|
+
|
1682
|
+
* Modify `adjointJacobian` methods to accept a (maybe unused) reference `StateVectorT`, allowing device-backed simulators to directly access state vector data for adjoint differentiation instead of copying it back-and-forth into `JacobianData` (host memory).
|
1683
|
+
[(#477)](https://github.com/PennyLaneAI/pennylane-lightning/pull/477)
|
1684
|
+
|
1685
|
+
### Improvements
|
1686
|
+
|
1687
|
+
* Refactor LKokkos `Measurements` class to use (fast) specialized functors whenever possible.
|
1688
|
+
[(#481)] (https://github.com/PennyLaneAI/pennylane-lightning/pull/481)
|
1689
|
+
|
1690
|
+
* Merge Lightning Qubit and Lightning Kokkos backends in the new repository.
|
1691
|
+
[(#472)] (https://github.com/PennyLaneAI/pennylane-lightning/pull/472)
|
1692
|
+
|
1693
|
+
* Integrated new unified docs for Lightning Kokkos and Lightning Qubit packages.
|
1694
|
+
[(#473)] (https://github.com/PennyLaneAI/pennylane-lightning/pull/473)
|
1695
|
+
|
1696
|
+
### Documentation
|
1697
|
+
|
1698
|
+
### Bug fixes
|
1699
|
+
|
1700
|
+
* Ensure PennyLane has an `active_return` attribute before calling it.
|
1701
|
+
[(#483)] (https://github.com/PennyLaneAI/pennylane-lightning/pull/483)
|
1702
|
+
|
1703
|
+
* Do no import `sqrt2_v` from `<numbers>` in `Util.hpp` to resolve issue with Lightning-GPU builds.
|
1704
|
+
[(#479)](https://github.com/PennyLaneAI/pennylane-lightning/pull/479)
|
1705
|
+
|
1706
|
+
* Update the CMake internal references to enable sub-project compilation with affecting the parent package.
|
1707
|
+
[(#478)](https://github.com/PennyLaneAI/pennylane-lightning/pull/478)
|
1708
|
+
|
1709
|
+
* `apply` no longer mutates the inputted list of operations.
|
1710
|
+
[(#474)](https://github.com/PennyLaneAI/pennylane-lightning/pull/474)
|
1711
|
+
|
1712
|
+
### Contributors
|
1713
|
+
|
1714
|
+
This release contains contributions from (in alphabetical order):
|
1715
|
+
|
1716
|
+
Amintor Dusko, Christina Lee, Vincent Michaud-Rioux, Lee J. O'Riordan
|
1717
|
+
|
1718
|
+
---
|
1719
|
+
|
1720
|
+
# Release 0.31.0
|
1721
|
+
|
1722
|
+
### New features since last release
|
1723
|
+
|
1724
|
+
* Update Kokkos support to 4.0.01.
|
1725
|
+
[(#439)] (https://github.com/PennyLaneAI/pennylane-lightning/pull/439)
|
1726
|
+
|
1727
|
+
### Breaking changes
|
1728
|
+
|
1729
|
+
* Update tests to be compliant with PennyLane v0.31.0 development changes and deprecations.
|
1730
|
+
[(#448)](https://github.com/PennyLaneAI/pennylane-lightning/pull/448)
|
1731
|
+
|
1732
|
+
### Improvements
|
1733
|
+
|
1734
|
+
* Remove logic from `setup.py` and transfer paths and env variable definitions into workflow files.
|
1735
|
+
[(#450)](https://github.com/PennyLaneAI/pennylane-lightning/pull/450)
|
1736
|
+
|
1737
|
+
* Detect MKL or CBLAS if `ENABLE_BLAS=ON` making sure that BLAS is linked as expected.
|
1738
|
+
[(#449)](https://github.com/PennyLaneAI/pennylane-lightning/pull/449)
|
1739
|
+
|
1740
|
+
### Documentation
|
1741
|
+
|
1742
|
+
* Fix LightningQubit class parameter documentation.
|
1743
|
+
[(#456)](https://github.com/PennyLaneAI/pennylane-lightning/pull/456)
|
1744
|
+
|
1745
|
+
### Bug fixes
|
1746
|
+
|
1747
|
+
* Ensure cross-platform wheels continue to build with updates in git safety checks.
|
1748
|
+
[(#452)](https://github.com/PennyLaneAI/pennylane-lightning/pull/452)
|
1749
|
+
|
1750
|
+
* Fixing Python version bug introduce in [(#450)](https://github.com/PennyLaneAI/pennylane-lightning/pull/450)
|
1751
|
+
when `Python_EXECUTABLE` was removed from `setup.py`.
|
1752
|
+
[(#461)](https://github.com/PennyLaneAI/pennylane-lightning/pull/461)
|
1753
|
+
|
1754
|
+
* Ensure aligned allocator definition works with C++20 compilers.
|
1755
|
+
[(#438)](https://github.com/PennyLaneAI/pennylane-lightning/pull/438)
|
1756
|
+
|
1757
|
+
* Prevent multiple threads from calling `Kokkos::initialize` or `Kokkos::finalize`.
|
1758
|
+
[(#439)](https://github.com/PennyLaneAI/pennylane-lightning/pull/439)
|
1759
|
+
|
1760
|
+
### Contributors
|
1761
|
+
|
1762
|
+
This release contains contributions from (in alphabetical order):
|
1763
|
+
|
1764
|
+
Vincent Michaud-Rioux, Lee J. O'Riordan, Chae-Yeun Park
|
1765
|
+
|
1766
|
+
---
|
1767
|
+
|
1768
|
+
# Release 0.30.0
|
1769
|
+
|
1770
|
+
### New features since last release
|
1771
|
+
|
1772
|
+
* Add MCMC sampler.
|
1773
|
+
[(#384)] (https://github.com/PennyLaneAI/pennylane-lightning/pull/384)
|
1774
|
+
|
1775
|
+
* Serialize PennyLane's arithmetic operators when they are used as observables
|
1776
|
+
that are expressed in the Pauli basis.
|
1777
|
+
[(#424)](https://github.com/PennyLaneAI/pennylane-lightning/pull/424)
|
1778
|
+
|
1779
|
+
### Breaking changes
|
1780
|
+
|
1781
|
+
* Lightning now works with the new return types specification that is now default in PennyLane.
|
1782
|
+
See [the PennyLane `qml.enable_return`](https://docs.pennylane.ai/en/stable/code/api/pennylane.enable_return.html?highlight=enable_return) documentation for more information on this change.
|
1783
|
+
[(#427)](https://github.com/PennyLaneAI/pennylane-lightning/pull/427)
|
1784
|
+
|
1785
|
+
Instead of creating potentially ragged numpy array, devices and `QNode`'s now return an object of the same type as that
|
1786
|
+
returned by the quantum function.
|
1787
|
+
|
1788
|
+
```
|
1789
|
+
>>> dev = qml.device('lightning.qubit', wires=1)
|
1790
|
+
>>> @qml.qnode(dev, diff_method="adjoint")
|
1791
|
+
... def circuit(x):
|
1792
|
+
... qml.RX(x, wires=0)
|
1793
|
+
... return qml.expval(qml.PauliY(0)), qml.expval(qml.PauliZ(0))
|
1794
|
+
>>> x = qml.numpy.array(0.5)
|
1795
|
+
>>> circuit(qml.numpy.array(0.5))
|
1796
|
+
(array(-0.47942554), array(0.87758256))
|
1797
|
+
```
|
1798
|
+
|
1799
|
+
Interfaces like Jax or Torch handle tuple outputs without issues:
|
1800
|
+
|
1801
|
+
```
|
1802
|
+
>>> jax.jacobian(circuit)(jax.numpy.array(0.5))
|
1803
|
+
(Array(-0.87758255, dtype=float32, weak_type=True),
|
1804
|
+
Array(-0.47942555, dtype=float32, weak_type=True))
|
1805
|
+
```
|
1806
|
+
|
1807
|
+
Autograd cannot differentiate an output tuple, so results must be converted to an array before
|
1808
|
+
use with `qml.jacobian`:
|
1809
|
+
|
1810
|
+
```
|
1811
|
+
>>> qml.jacobian(lambda y: qml.numpy.array(circuit(y)))(x)
|
1812
|
+
array([-0.87758256, -0.47942554])
|
1813
|
+
```
|
1814
|
+
|
1815
|
+
Alternatively, the quantum function itself can return a numpy array of measurements:
|
1816
|
+
|
1817
|
+
```
|
1818
|
+
>>> dev = qml.device('lightning.qubit', wires=1)
|
1819
|
+
>>> @qml.qnode(dev, diff_method="adjoint")
|
1820
|
+
>>> def circuit2(x):
|
1821
|
+
... qml.RX(x, wires=0)
|
1822
|
+
... return np.array([qml.expval(qml.PauliY(0)), qml.expval(qml.PauliZ(0))])
|
1823
|
+
>>> qml.jacobian(circuit2)(np.array(0.5))
|
1824
|
+
array([-0.87758256, -0.47942554])
|
1825
|
+
```
|
1826
|
+
|
1827
|
+
### Improvements
|
1828
|
+
|
1829
|
+
* Remove deprecated `set-output` commands from workflow files.
|
1830
|
+
[(#437)](https://github.com/PennyLaneAI/pennylane-lightning/pull/437)
|
1831
|
+
|
1832
|
+
* Lightning wheels are now checked with `twine check` post-creation for PyPI compatibility.
|
1833
|
+
[(#430)](https://github.com/PennyLaneAI/pennylane-lightning/pull/430)
|
1834
|
+
|
1835
|
+
* Lightning has been made compatible with the change in return types specification.
|
1836
|
+
[(#427)](https://github.com/PennyLaneAI/pennylane-lightning/pull/427)
|
1837
|
+
|
1838
|
+
* Lightning is compatible with clang-tidy version 16.
|
1839
|
+
[(#429)](https://github.com/PennyLaneAI/pennylane-lightning/pull/429)
|
1840
|
+
|
1841
|
+
### Contributors
|
1842
|
+
|
1843
|
+
This release contains contributions from (in alphabetical order):
|
1844
|
+
|
1845
|
+
Christina Lee, Vincent Michaud-Rioux, Lee James O'Riordan, Chae-Yeun Park, Matthew Silverman
|
1846
|
+
|
1847
|
+
---
|
1848
|
+
|
1849
|
+
# Release 0.29.0
|
1850
|
+
|
1851
|
+
### Improvements
|
1852
|
+
|
1853
|
+
* Remove runtime dependency on ninja build system.
|
1854
|
+
[(#414)](https://github.com/PennyLaneAI/pennylane-lightning/pull/414)
|
1855
|
+
|
1856
|
+
* Allow better integration and installation support with CMake targeted binary builds.
|
1857
|
+
[(#403)](https://github.com/PennyLaneAI/pennylane-lightning/pull/403)
|
1858
|
+
|
1859
|
+
* Remove explicit Numpy and Scipy requirements.
|
1860
|
+
[(#412)](https://github.com/PennyLaneAI/pennylane-lightning/pull/412)
|
1861
|
+
|
1862
|
+
* Get `llvm` installation root from the environment variable `LLVM_ROOT_DIR` (or fallback to `brew`).
|
1863
|
+
[(#413)](https://github.com/PennyLaneAI/pennylane-lightning/pull/413)
|
1864
|
+
|
1865
|
+
* Update AVX2/512 kernel infrastructure for additional gate/generator operations.
|
1866
|
+
[(#404)](https://github.com/PennyLaneAI/pennylane-lightning/pull/404)
|
1867
|
+
|
1868
|
+
* Remove unnecessary lines for resolving CodeCov issue.
|
1869
|
+
[(#415)](https://github.com/PennyLaneAI/pennylane-lightning/pull/415)
|
1870
|
+
|
1871
|
+
* Add more AVX2/512 gate operations.
|
1872
|
+
[(#393)](https://github.com/PennyLaneAI/pennylane-lightning/pull/393)
|
1873
|
+
|
1874
|
+
### Documentation
|
1875
|
+
|
1876
|
+
### Bug fixes
|
1877
|
+
|
1878
|
+
* Ensure error raised when asking for out of order marginal probabilities. Prevents the return of incorrect results.
|
1879
|
+
[(#416)](https://github.com/PennyLaneAI/pennylane-lightning/pull/416)
|
1880
|
+
|
1881
|
+
* Fix Github shields in README.
|
1882
|
+
[(#402)](https://github.com/PennyLaneAI/pennylane-lightning/pull/402)
|
1883
|
+
|
1884
|
+
### Contributors
|
1885
|
+
|
1886
|
+
Amintor Dusko, Vincent Michaud-Rioux, Lee James O'Riordan, Chae-Yeun Park
|
1887
|
+
|
1888
|
+
---
|
1889
|
+
|
1890
|
+
# Release 0.28.2
|
1891
|
+
|
1892
|
+
### Bug fixes
|
1893
|
+
|
1894
|
+
* Fix Python module versioning for Linux wheels.
|
1895
|
+
[(#408)](https://github.com/PennyLaneAI/pennylane-lightning/pull/408)
|
1896
|
+
|
1897
|
+
### Contributors
|
1898
|
+
|
1899
|
+
This release contains contributions from (in alphabetical order):
|
1900
|
+
|
1901
|
+
Amintor Dusko, Shuli Shu, Trevor Vincent
|
1902
|
+
|
1903
|
+
---
|
1904
|
+
|
1905
|
+
# Release 0.28.1
|
1906
|
+
|
1907
|
+
### Bug fixes
|
1908
|
+
|
1909
|
+
* Fix Pybind11 module versioning and locations for Windows wheels.
|
1910
|
+
[(#400)](https://github.com/PennyLaneAI/pennylane-lightning/pull/400)
|
1911
|
+
|
1912
|
+
### Contributors
|
1913
|
+
|
1914
|
+
This release contains contributions from (in alphabetical order):
|
1915
|
+
|
1916
|
+
Lee J. O'Riordan
|
1917
|
+
|
1918
|
+
---
|
1919
|
+
|
1920
|
+
# Release 0.28.0
|
1921
|
+
|
1922
|
+
### Breaking changes
|
1923
|
+
|
1924
|
+
* Deprecate support for Python 3.7.
|
1925
|
+
[(#391)](https://github.com/PennyLaneAI/pennylane-lightning/pull/391)
|
1926
|
+
|
1927
|
+
### Improvements
|
1928
|
+
|
1929
|
+
* Improve Lightning package structure for external use as a C++ library.
|
1930
|
+
[(#369)](https://github.com/PennyLaneAI/pennylane-lightning/pull/369)
|
1931
|
+
|
1932
|
+
* Improve the stopping condition method.
|
1933
|
+
[(#386)](https://github.com/PennyLaneAI/pennylane-lightning/pull/386)
|
1934
|
+
|
1935
|
+
### Bug fixes
|
1936
|
+
|
1937
|
+
- Pin CMake to 3.24.x in wheel-builder to avoid Python not found error in CMake 3.25, when building wheels for PennyLane-Lightning-GPU.
|
1938
|
+
[(#387)](https://github.com/PennyLaneAI/pennylane-lightning/pull/387)
|
1939
|
+
|
1940
|
+
### Contributors
|
1941
|
+
|
1942
|
+
This release contains contributions from (in alphabetical order):
|
1943
|
+
|
1944
|
+
Amintor Dusko, Lee J. O'Riordan
|
1945
|
+
|
1946
|
+
---
|
1947
|
+
|
1948
|
+
# Release 0.27.0
|
1949
|
+
|
1950
|
+
### New features since last release
|
1951
|
+
|
1952
|
+
* Enable building of Python 3.11 wheels and upgrade Python on CI/CD workflows to 3.8.
|
1953
|
+
[(#381)](https://github.com/PennyLaneAI/pennylane-lightning/pull/381)
|
1954
|
+
|
1955
|
+
### Breaking changes
|
1956
|
+
|
1957
|
+
### Improvements
|
1958
|
+
|
1959
|
+
* Update clang-tools version in Github workflows.
|
1960
|
+
[(#351)](https://github.com/PennyLaneAI/pennylane-lightning/pull/351)
|
1961
|
+
|
1962
|
+
* Improve tests and checks CI/CD pipelines.
|
1963
|
+
[(#353)](https://github.com/PennyLaneAI/pennylane-lightning/pull/353)
|
1964
|
+
|
1965
|
+
* Implement 3 Qubits gates (CSWAP & Toffoli) & 4 Qubits gates (DoubleExcitation, DoubleExcitationMinus, DoubleExcitationPlus) in LM manner.
|
1966
|
+
[(#362)](https://github.com/PennyLaneAI/pennylane-lightning/pull/362)
|
1967
|
+
|
1968
|
+
* Upgrade Kokkos and Kokkos Kernels to 3.7.00, and improve sparse matrix-vector multiplication performance and memory usage.
|
1969
|
+
[(#361)](https://github.com/PennyLaneAI/pennylane-lightning/pull/361)
|
1970
|
+
|
1971
|
+
* Update Linux (ubuntu-latest) architecture x86_64 wheel-builder from GCC 10.x to GCC 11.x.
|
1972
|
+
[(#373)](https://github.com/PennyLaneAI/pennylane-lightning/pull/373)
|
1973
|
+
|
1974
|
+
* Update gcc and g++ 10.x to 11.x in CI tests. This update brings improved support for newer C++ features.
|
1975
|
+
[(#370)](https://github.com/PennyLaneAI/pennylane-lightning/pull/370)
|
1976
|
+
|
1977
|
+
* Change Lightning to inherit from QubitDevice instead of DefaultQubit.
|
1978
|
+
[(#365)](https://github.com/PennyLaneAI/pennylane-lightning/pull/365)
|
1979
|
+
|
1980
|
+
### Documentation
|
1981
|
+
|
1982
|
+
### Bug fixes
|
1983
|
+
|
1984
|
+
* Use mutex when accessing cache in KernelMap.
|
1985
|
+
[(#382)](https://github.com/PennyLaneAI/pennylane-lightning/pull/382)
|
1986
|
+
|
1987
|
+
### Contributors
|
1988
|
+
|
1989
|
+
This release contains contributions from (in alphabetical order):
|
1990
|
+
|
1991
|
+
Amintor Dusko, Chae-Yeun Park, Monit Sharma, Shuli Shu
|
1992
|
+
|
1993
|
+
---
|
1994
|
+
|
1995
|
+
# Release 0.26.1
|
1996
|
+
|
1997
|
+
### Bug fixes
|
1998
|
+
|
1999
|
+
* Fixes the transposition method used in the probability calculation.
|
2000
|
+
[(#377)](https://github.com/PennyLaneAI/pennylane-lightning/pull/377)
|
2001
|
+
|
2002
|
+
### Contributor
|
2003
|
+
|
2004
|
+
Amintor Dusko
|
2005
|
+
|
2006
|
+
---
|
2007
|
+
# Release 0.26.0
|
2008
|
+
|
2009
|
+
### Improvements
|
2010
|
+
|
2011
|
+
* Introduces requirements-dev.txt and improves dockerfile.
|
2012
|
+
[(#330)](https://github.com/PennyLaneAI/pennylane-lightning/pull/330)
|
2013
|
+
|
2014
|
+
* Support `expval` for a Hamiltonian.
|
2015
|
+
[(#333)](https://github.com/PennyLaneAI/pennylane-lightning/pull/333)
|
2016
|
+
|
2017
|
+
* Implements caching for Kokkos installation.
|
2018
|
+
[(#316)](https://github.com/PennyLaneAI/pennylane-lightning/pull/316)
|
2019
|
+
|
2020
|
+
* Supports measurements of operator arithmetic classes such as `Sum`, `Prod`,
|
2021
|
+
and `SProd` by deferring handling of them to `DefaultQubit`.
|
2022
|
+
[(#349)](https://github.com/PennyLaneAI/pennylane-lightning/pull/349)
|
2023
|
+
|
2024
|
+
```
|
2025
|
+
@qml.qnode(qml.device('lightning.qubit', wires=2))
|
2026
|
+
def circuit():
|
2027
|
+
obs = qml.s_prod(2.1, qml.PauliZ(0)) + qml.op_sum(qml.PauliX(0), qml.PauliZ(1))
|
2028
|
+
return qml.expval(obs)
|
2029
|
+
```
|
2030
|
+
|
2031
|
+
### Bug fixes
|
2032
|
+
|
2033
|
+
* Test updates to reflect new measurement error messages.
|
2034
|
+
[(#334)](https://github.com/PennyLaneAI/pennylane-lightning/pull/334)
|
2035
|
+
|
2036
|
+
* Updates to the release tagger to fix incompatibilities with RTD.
|
2037
|
+
[(#344)](https://github.com/PennyLaneAI/pennylane-lightning/pull/344)
|
2038
|
+
|
2039
|
+
* Update cancel-workflow-action and bot credentials.
|
2040
|
+
[(#345)](https://github.com/PennyLaneAI/pennylane-lightning/pull/345)
|
2041
|
+
|
2042
|
+
### Contributors
|
2043
|
+
|
2044
|
+
This release contains contributions from (in alphabetical order):
|
2045
|
+
|
2046
|
+
Amintor Dusko, Christina Lee, Lee J. O'Riordan, Chae-Yeun Park
|
2047
|
+
|
2048
|
+
---
|
2049
|
+
|
2050
|
+
# Release 0.25.0
|
2051
|
+
|
2052
|
+
### New features since last release
|
2053
|
+
|
2054
|
+
### Breaking changes
|
2055
|
+
|
2056
|
+
* We explicitly disable support for PennyLane's parameter broadcasting.
|
2057
|
+
[#317](https://github.com/PennyLaneAI/pennylane-lightning/pull/317)
|
2058
|
+
|
2059
|
+
* We explicitly remove support for PennyLane's `Sum`, `SProd` and `Prod`
|
2060
|
+
as observables.
|
2061
|
+
[(#326)](https://github.com/PennyLaneAI/pennylane-lightning/pull/326)
|
2062
|
+
|
2063
|
+
### Improvements
|
2064
|
+
|
2065
|
+
* CI builders use a reduced set of resources and redundant tests for PRs.
|
2066
|
+
[(#319)](https://github.com/PennyLaneAI/pennylane-lightning/pull/319)
|
2067
|
+
|
2068
|
+
* Parallelize wheel-builds where applicable.
|
2069
|
+
[(#314)](https://github.com/PennyLaneAI/pennylane-lightning/pull/314)
|
2070
|
+
|
2071
|
+
* AVX2/512 kernels are now available on Linux/MacOS with x86-64 architecture.
|
2072
|
+
[(#313)](https://github.com/PennyLaneAI/pennylane-lightning/pull/313)
|
2073
|
+
|
2074
|
+
### Documentation
|
2075
|
+
|
2076
|
+
* Updated ReadTheDocs runner version from Ubuntu 20.04 to 22.04
|
2077
|
+
[(#327)](https://github.com/PennyLaneAI/pennylane-lightning/pull/327)
|
2078
|
+
|
2079
|
+
### Bug fixes
|
2080
|
+
|
2081
|
+
* Test updates to reflect new additions to PennyLane.
|
2082
|
+
[(#318)](https://github.com/PennyLaneAI/pennylane-lightning/pull/318)
|
2083
|
+
|
2084
|
+
### Contributors
|
2085
|
+
|
2086
|
+
This release contains contributions from (in alphabetical order):
|
2087
|
+
|
2088
|
+
Amintor Dusko, Christina Lee, Rashid N H M, Lee J. O'Riordan, Chae-Yeun Park
|
2089
|
+
|
2090
|
+
---
|
2091
|
+
|
2092
|
+
# Release 0.24.0
|
2093
|
+
|
2094
|
+
### New features since last release
|
2095
|
+
|
2096
|
+
* Add `SingleExcitation` and `DoubleExcitation` qchem gates and generators.
|
2097
|
+
[(#289)](https://github.com/PennyLaneAI/pennylane-lightning/pull/289)
|
2098
|
+
|
2099
|
+
* Add a new dispatch mechanism for future kernels.
|
2100
|
+
[(#291)](https://github.com/PennyLaneAI/pennylane-lightning/pull/291)
|
2101
|
+
|
2102
|
+
* Add `IsingXY` gate operation.
|
2103
|
+
[(#303)](https://github.com/PennyLaneAI/pennylane-lightning/pull/303)
|
2104
|
+
|
2105
|
+
* Support `qml.state()` in vjp and Hamiltonian in adjoint jacobian.
|
2106
|
+
[(#294)](https://github.com/PennyLaneAI/pennylane-lightning/pull/294)
|
2107
|
+
|
2108
|
+
### Breaking changes
|
2109
|
+
|
2110
|
+
* Codebase is now moving to C++20. The default compiler for Linux is now GCC10.
|
2111
|
+
[(#295)](https://github.com/PennyLaneAI/pennylane-lightning/pull/295)
|
2112
|
+
|
2113
|
+
* Minimum macOS version is changed to 10.15 (Catalina).
|
2114
|
+
[(#295)](https://github.com/PennyLaneAI/pennylane-lightning/pull/295)
|
2115
|
+
|
2116
|
+
### Improvements
|
2117
|
+
|
2118
|
+
* Split matrix operations, refactor dispatch mechanisms, and add a benchmark suits.
|
2119
|
+
[(#274)](https://github.com/PennyLaneAI/pennylane-lightning/pull/274)
|
2120
|
+
|
2121
|
+
* Add native support for the calculation of sparse Hamiltonians' expectation values.
|
2122
|
+
Sparse operations are offloaded to [Kokkos](https://github.com/kokkos/kokkos) and
|
2123
|
+
[Kokkos-Kernels](https://github.com/kokkos/kokkos-kernels).
|
2124
|
+
[(#283)](https://github.com/PennyLaneAI/pennylane-lightning/pull/283)
|
2125
|
+
|
2126
|
+
* Device `lightning.qubit` now accepts a datatype for a statevector.
|
2127
|
+
[(#290)](https://github.com/PennyLaneAI/pennylane-lightning/pull/290)
|
2128
|
+
|
2129
|
+
```python
|
2130
|
+
dev1 = qml.device('lightning.qubit', wires=4, c_dtype=np.complex64) # for single precision
|
2131
|
+
dev2 = qml.device('lightning.qubit', wires=4, c_dtype=np.complex128) # for double precision
|
2132
|
+
```
|
2133
|
+
|
2134
|
+
### Documentation
|
2135
|
+
|
2136
|
+
* Use the centralized [Xanadu Sphinx Theme](https://github.com/XanaduAI/xanadu-sphinx-theme)
|
2137
|
+
to style the Sphinx documentation.
|
2138
|
+
[(#287)](https://github.com/PennyLaneAI/pennylane-lightning/pull/287)
|
2139
|
+
|
2140
|
+
### Bug fixes
|
2141
|
+
|
2142
|
+
* Fix the issue with using available `clang-format` version in format.
|
2143
|
+
[(#288)](https://github.com/PennyLaneAI/pennylane-lightning/pull/288)
|
2144
|
+
|
2145
|
+
* Fix a bug in the generator of `DoubleExcitationPlus`.
|
2146
|
+
[(#298)](https://github.com/PennyLaneAI/pennylane-lightning/pull/298)
|
2147
|
+
|
2148
|
+
### Contributors
|
2149
|
+
|
2150
|
+
This release contains contributions from (in alphabetical order):
|
2151
|
+
|
2152
|
+
Mikhail Andrenkov, Ali Asadi, Amintor Dusko, Lee James O'Riordan, Chae-Yeun Park, and Shuli Shu
|
2153
|
+
|
2154
|
+
---
|
2155
|
+
|
2156
|
+
# Release 0.23.0
|
2157
|
+
|
2158
|
+
### New features since last release
|
2159
|
+
|
2160
|
+
* Add `generate_samples()` to lightning.
|
2161
|
+
[(#247)](https://github.com/PennyLaneAI/pennylane-lightning/pull/247)
|
2162
|
+
|
2163
|
+
* Add Lightning GBenchmark Suite.
|
2164
|
+
[(#249)](https://github.com/PennyLaneAI/pennylane-lightning/pull/249)
|
2165
|
+
|
2166
|
+
* Support runtime and compile information.
|
2167
|
+
[(#253)](https://github.com/PennyLaneAI/pennylane-lightning/pull/253)
|
2168
|
+
|
2169
|
+
### Improvements
|
2170
|
+
|
2171
|
+
* Add `ENABLE_BLAS` build to CI checks.
|
2172
|
+
[(#249)](https://github.com/PennyLaneAI/pennylane-lightning/pull/249)
|
2173
|
+
|
2174
|
+
* Add more `clang-tidy` checks and kernel tests.
|
2175
|
+
[(#253)](https://github.com/PennyLaneAI/pennylane-lightning/pull/253)
|
2176
|
+
|
2177
|
+
* Add C++ code coverage to CI.
|
2178
|
+
[(#265)](https://github.com/PennyLaneAI/pennylane-lightning/pull/265)
|
2179
|
+
|
2180
|
+
* Skip over identity operations in `"lightning.qubit"`.
|
2181
|
+
[(#268)](https://github.com/PennyLaneAI/pennylane-lightning/pull/268)
|
2182
|
+
|
2183
|
+
### Bug fixes
|
2184
|
+
|
2185
|
+
* Update tests to remove `JacobianTape`.
|
2186
|
+
[(#260)](https://github.com/PennyLaneAI/pennylane-lightning/pull/260)
|
2187
|
+
|
2188
|
+
* Fix tests for MSVC.
|
2189
|
+
[(#264)](https://github.com/PennyLaneAI/pennylane-lightning/pull/264)
|
2190
|
+
|
2191
|
+
* Fix `#include <cpuid.h>` for PPC and AArch64 in Linux.
|
2192
|
+
[(#266)](https://github.com/PennyLaneAI/pennylane-lightning/pull/266)
|
2193
|
+
|
2194
|
+
* Remove deprecated tape execution methods.
|
2195
|
+
[(#270)](https://github.com/PennyLaneAI/pennylane-lightning/pull/270)
|
2196
|
+
|
2197
|
+
* Update `qml.probs` in `test_measures.py`.
|
2198
|
+
[(#280)](https://github.com/PennyLaneAI/pennylane-lightning/pull/280)
|
2199
|
+
|
2200
|
+
### Contributors
|
2201
|
+
|
2202
|
+
This release contains contributions from (in alphabetical order):
|
2203
|
+
|
2204
|
+
Ali Asadi, Chae-Yeun Park, Lee James O'Riordan, and Trevor Vincent
|
2205
|
+
|
2206
|
+
---
|
2207
|
+
|
2208
|
+
# Release 0.22.1
|
2209
|
+
|
2210
|
+
### Bug fixes
|
2211
|
+
|
2212
|
+
* Ensure `Identity ` kernel is registered to C++ dispatcher.
|
2213
|
+
[(#275)](https://github.com/PennyLaneAI/pennylane-lightning/pull/275)
|
2214
|
+
|
2215
|
+
---
|
2216
|
+
|
2217
|
+
# Release 0.22.0
|
2218
|
+
|
2219
|
+
### New features since last release
|
2220
|
+
|
2221
|
+
* Add Docker support.
|
2222
|
+
[(#234)](https://github.com/PennyLaneAI/pennylane-lightning/pull/234)
|
2223
|
+
|
2224
|
+
### Improvements
|
2225
|
+
|
2226
|
+
* Update quantum tapes serialization and Python tests.
|
2227
|
+
[(#239)](https://github.com/PennyLaneAI/pennylane-lightning/pull/239)
|
2228
|
+
|
2229
|
+
* Clang-tidy is now enabled for both tests and examples builds under Github Actions.
|
2230
|
+
[(#237)](https://github.com/PennyLaneAI/pennylane-lightning/pull/237)
|
2231
|
+
|
2232
|
+
* The return type of `StateVectorBase` data is now derived-class defined.
|
2233
|
+
[(#237)](https://github.com/PennyLaneAI/pennylane-lightning/pull/237)
|
2234
|
+
|
2235
|
+
* Update adjointJacobian and VJP methods.
|
2236
|
+
[(#222)](https://github.com/PennyLaneAI/pennylane-lightning/pull/222)
|
2237
|
+
|
2238
|
+
* Set GitHub workflow to upload wheels to Test PyPI.
|
2239
|
+
[(#220)](https://github.com/PennyLaneAI/pennylane-lightning/pull/220)
|
2240
|
+
|
2241
|
+
* Finalize the new kernel implementation.
|
2242
|
+
[(#212)](https://github.com/PennyLaneAI/pennylane-lightning/pull/212)
|
2243
|
+
|
2244
|
+
### Documentation
|
2245
|
+
|
2246
|
+
* Use of batching with OpenMP threads is documented.
|
2247
|
+
[(#221)](https://github.com/PennyLaneAI/pennylane-lightning/pull/221)
|
2248
|
+
|
2249
|
+
### Bug fixes
|
2250
|
+
|
2251
|
+
* Fix for OOM errors when using adjoint with large numbers of observables.
|
2252
|
+
[(#221)](https://github.com/PennyLaneAI/pennylane-lightning/pull/221)
|
2253
|
+
|
2254
|
+
* Add virtual destructor to C++ state-vector classes.
|
2255
|
+
[(#200)](https://github.com/PennyLaneAI/pennylane-lightning/pull/200)
|
2256
|
+
|
2257
|
+
* Fix a bug in Python tests with operations' `matrix` calls.
|
2258
|
+
[(#238)](https://github.com/PennyLaneAI/pennylane-lightning/pull/238)
|
2259
|
+
|
2260
|
+
* Refactor utility header and fix a bug in linear algebra function with CBLAS.
|
2261
|
+
[(#228)](https://github.com/PennyLaneAI/pennylane-lightning/pull/228)
|
2262
|
+
|
2263
|
+
### Contributors
|
2264
|
+
|
2265
|
+
This release contains contributions from (in alphabetical order):
|
2266
|
+
|
2267
|
+
Ali Asadi, Chae-Yeun Park, Lee James O'Riordan
|
2268
|
+
|
2269
|
+
---
|
2270
|
+
|
2271
|
+
# Release 0.21.0
|
2272
|
+
|
2273
|
+
### New features since last release
|
2274
|
+
|
2275
|
+
* Add C++ only benchmark for a given list of gates.
|
2276
|
+
[(#199)](https://github.com/PennyLaneAI/pennylane-lightning/pull/199)
|
2277
|
+
|
2278
|
+
* Wheel-build support for Python 3.10.
|
2279
|
+
[(#186)](https://github.com/PennyLaneAI/pennylane-lightning/pull/186)
|
2280
|
+
|
2281
|
+
* C++ support for probability, expectation value and variance calculations.
|
2282
|
+
[(#185)](https://github.com/PennyLaneAI/pennylane-lightning/pull/185)
|
2283
|
+
|
2284
|
+
* Add bindings to C++ expval, var, probs.
|
2285
|
+
[(#214)](https://github.com/PennyLaneAI/pennylane-lightning/pull/214)
|
2286
|
+
|
2287
|
+
### Improvements
|
2288
|
+
|
2289
|
+
* `setup.py` adds debug only when --debug is given
|
2290
|
+
[(#208)](https://github.com/PennyLaneAI/pennylane-lightning/pull/208)
|
2291
|
+
|
2292
|
+
* Add new highly-performant C++ kernels for quantum gates.
|
2293
|
+
[(#202)](https://github.com/PennyLaneAI/pennylane-lightning/pull/202)
|
2294
|
+
|
2295
|
+
The new kernels significantly improve the runtime performance of PennyLane-Lightning
|
2296
|
+
for both differentiable and non-differentiable workflows. Here is an example workflow
|
2297
|
+
using the adjoint differentiation method with a circuit of 5 strongly entangling layers:
|
2298
|
+
|
2299
|
+
```python
|
2300
|
+
import pennylane as qml
|
2301
|
+
from pennylane import numpy as np
|
2302
|
+
from pennylane.templates.layers import StronglyEntanglingLayers
|
2303
|
+
from numpy.random import random
|
2304
|
+
np.random.seed(42)
|
2305
|
+
n_layers = 5
|
2306
|
+
n_wires = 6
|
2307
|
+
dev = qml.device("lightning.qubit", wires=n_wires)
|
2308
|
+
|
2309
|
+
@qml.qnode(dev, diff_method="adjoint")
|
2310
|
+
def circuit(weights):
|
2311
|
+
StronglyEntanglingLayers(weights, wires=list(range(n_wires)))
|
2312
|
+
return [qml.expval(qml.PauliZ(i)) for i in range(n_wires)]
|
2313
|
+
|
2314
|
+
init_weights = np.random.random(StronglyEntanglingLayers.shape(n_layers=n_layers, n_wires=n_wires))
|
2315
|
+
params = np.array(init_weights,requires_grad=True)
|
2316
|
+
jac = qml.jacobian(circuit)(params)
|
2317
|
+
```
|
2318
|
+
The latest release shows improved performance on both single and multi-threaded evaluations!
|
2319
|
+
|
2320
|
+
<img src="https://raw.githubusercontent.com/PennyLaneAI/pennylane-lightning/v0.21.0-rc0/doc/_static/lightning_v20_v21_bm.png" width=50%/>
|
2321
|
+
|
2322
|
+
* Ensure debug info is built into dynamic libraries.
|
2323
|
+
[(#201)](https://github.com/PennyLaneAI/pennylane-lightning/pull/201)
|
2324
|
+
|
2325
|
+
### Documentation
|
2326
|
+
|
2327
|
+
* New guidelines on adding and benchmarking C++ kernels.
|
2328
|
+
[(#202)](https://github.com/PennyLaneAI/pennylane-lightning/pull/202)
|
2329
|
+
|
2330
|
+
### Bug fixes
|
2331
|
+
|
2332
|
+
* Update clang-format version
|
2333
|
+
[(#219)](https://github.com/PennyLaneAI/pennylane-lightning/pull/219)
|
2334
|
+
|
2335
|
+
* Fix failed tests on Windows.
|
2336
|
+
[(#218)](https://github.com/PennyLaneAI/pennylane-lightning/pull/218)
|
2337
|
+
|
2338
|
+
* Update clang-format version
|
2339
|
+
[(#219)](https://github.com/PennyLaneAI/pennylane-lightning/pull/219)
|
2340
|
+
|
2341
|
+
* Add virtual destructor to C++ state-vector classes.
|
2342
|
+
[(#200)](https://github.com/PennyLaneAI/pennylane-lightning/pull/200)
|
2343
|
+
|
2344
|
+
* Fix failed tests for the non-binary wheel.
|
2345
|
+
[(#213)](https://github.com/PennyLaneAI/pennylane-lightning/pull/213)
|
2346
|
+
|
2347
|
+
* Add virtual destructor to C++ state-vector classes.
|
2348
|
+
[(#200)](https://github.com/PennyLaneAI/pennylane-lightning/pull/200)
|
2349
|
+
|
2350
|
+
### Contributors
|
2351
|
+
|
2352
|
+
This release contains contributions from (in alphabetical order):
|
2353
|
+
|
2354
|
+
Ali Asadi, Amintor Dusko, Chae-Yeun Park, Lee James O'Riordan
|
2355
|
+
|
2356
|
+
---
|
2357
|
+
|
2358
|
+
# Release 0.20.1
|
2359
|
+
|
2360
|
+
### Bug fixes
|
2361
|
+
|
2362
|
+
* Fix missing header-files causing build errors in algorithms module.
|
2363
|
+
[(#193)](https://github.com/PennyLaneAI/pennylane-lightning/pull/193)
|
2364
|
+
|
2365
|
+
* Fix failed tests for the non-binary wheel.
|
2366
|
+
[(#191)](https://github.com/PennyLaneAI/pennylane-lightning/pull/191)
|
2367
|
+
|
2368
|
+
---
|
2369
|
+
# Release 0.20.2
|
2370
|
+
|
2371
|
+
### Bug fixes
|
2372
|
+
|
2373
|
+
* Introduce CY kernel to Lightning to avoid issues with decomposition.
|
2374
|
+
[(#203)](https://github.com/PennyLaneAI/pennylane-lightning/pull/203)
|
2375
|
+
|
2376
|
+
### Contributors
|
2377
|
+
|
2378
|
+
This release contains contributions from (in alphabetical order):
|
2379
|
+
|
2380
|
+
Lee J. O'Riordan
|
2381
|
+
|
2382
|
+
# Release 0.20.1
|
2383
|
+
|
2384
|
+
### Bug fixes
|
2385
|
+
|
2386
|
+
* Fix missing header-files causing build errors in algorithms module.
|
2387
|
+
[(#193)](https://github.com/PennyLaneAI/pennylane-lightning/pull/193)
|
2388
|
+
|
2389
|
+
* Fix failed tests for the non-binary wheel.
|
2390
|
+
[(#191)](https://github.com/PennyLaneAI/pennylane-lightning/pull/191)
|
2391
|
+
|
2392
|
+
# Release 0.20.0
|
2393
|
+
|
2394
|
+
### New features since last release
|
2395
|
+
|
2396
|
+
* Add wheel-builder support for Python 3.10.
|
2397
|
+
[(#186)](https://github.com/PennyLaneAI/pennylane-lightning/pull/186)
|
2398
|
+
|
2399
|
+
* Add VJP support to PL-Lightning.
|
2400
|
+
[(#181)](https://github.com/PennyLaneAI/pennylane-lightning/pull/181)
|
2401
|
+
|
2402
|
+
* Add complex64 support in PL-Lightning.
|
2403
|
+
[(#177)](https://github.com/PennyLaneAI/pennylane-lightning/pull/177)
|
2404
|
+
|
2405
|
+
* Added examples folder containing aggregate gate performance test.
|
2406
|
+
[(#165)](https://github.com/PennyLaneAI/pennylane-lightning/pull/165)
|
2407
|
+
|
2408
|
+
### Breaking changes
|
2409
|
+
|
2410
|
+
### Improvements
|
2411
|
+
|
2412
|
+
* Update PL-Lightning to support new features in PL.
|
2413
|
+
[(#179)](https://github.com/PennyLaneAI/pennylane-lightning/pull/179)
|
2414
|
+
|
2415
|
+
### Documentation
|
2416
|
+
|
2417
|
+
* Lightning setup.py build process uses CMake.
|
2418
|
+
[(#176)](https://github.com/PennyLaneAI/pennylane-lightning/pull/176)
|
2419
|
+
|
2420
|
+
### Contributors
|
2421
|
+
|
2422
|
+
This release contains contributions from (in alphabetical order):
|
2423
|
+
|
2424
|
+
Ali Asadi, Chae-Yeun Park, Isidor Schoch, Lee James O'Riordan
|
2425
|
+
|
2426
|
+
---
|
2427
|
+
|
2428
|
+
# Release 0.19.0
|
2429
|
+
|
2430
|
+
* Add Cache-Friendly DOTC, GEMV, GEMM along with BLAS Support.
|
2431
|
+
[(#155)](https://github.com/PennyLaneAI/pennylane-lightning/pull/155)
|
2432
|
+
|
2433
|
+
### Improvements
|
2434
|
+
|
2435
|
+
* The performance of parametric gates has been improved.
|
2436
|
+
[(#157)](https://github.com/PennyLaneAI/pennylane-lightning/pull/157)
|
2437
|
+
|
2438
|
+
* AVX support is enabled for Linux users on Intel/AMD platforms.
|
2439
|
+
[(#157)](https://github.com/PennyLaneAI/pennylane-lightning/pull/157)
|
2440
|
+
|
2441
|
+
* PennyLane-Lightning has been updated to conform with clang-tidy
|
2442
|
+
recommendations for modernization, offering performance improvements across
|
2443
|
+
all use-cases.
|
2444
|
+
[(#153)](https://github.com/PennyLaneAI/pennylane-lightning/pull/153)
|
2445
|
+
|
2446
|
+
### Breaking changes
|
2447
|
+
|
2448
|
+
* Linux users on `x86_64` must have a CPU supporting AVX.
|
2449
|
+
[(#157)](https://github.com/PennyLaneAI/pennylane-lightning/pull/157)
|
2450
|
+
|
2451
|
+
### Bug fixes
|
2452
|
+
|
2453
|
+
* OpenMP built with Intel MacOS CI runners causes failures on M1 Macs. OpenMP is currently
|
2454
|
+
disabled in the built wheels until this can be resolved with Github Actions runners.
|
2455
|
+
[(#166)](https://github.com/PennyLaneAI/pennylane-lightning/pull/166)
|
2456
|
+
|
2457
|
+
### Contributors
|
2458
|
+
|
2459
|
+
This release contains contributions from (in alphabetical order):
|
2460
|
+
|
2461
|
+
Ali Asadi, Lee James O'Riordan
|
2462
|
+
|
2463
|
+
---
|
2464
|
+
|
2465
|
+
# Release 0.18.0
|
2466
|
+
|
2467
|
+
### New features since last release
|
2468
|
+
|
2469
|
+
* PennyLane-Lightning now provides a high-performance
|
2470
|
+
[adjoint Jacobian](http://arxiv.org/abs/2009.02823) method for differentiating quantum circuits.
|
2471
|
+
[(#136)](https://github.com/PennyLaneAI/pennylane-lightning/pull/136)
|
2472
|
+
|
2473
|
+
The adjoint method operates after a forward pass by iteratively applying inverse gates to scan
|
2474
|
+
backwards through the circuit. The method is already available in PennyLane's
|
2475
|
+
`default.qubit` device, but the version provided by `lightning.qubit` integrates with the C++
|
2476
|
+
backend and is more performant, as shown in the plot below:
|
2477
|
+
|
2478
|
+
<img src="https://raw.githubusercontent.com/PennyLaneAI/pennylane-lightning/master/doc/_static/lightning_adjoint.png" width=70%/>
|
2479
|
+
|
2480
|
+
The plot compares the average runtime of `lightning.qubit` and `default.qubit` for calculating the
|
2481
|
+
Jacobian of a circuit using the adjoint method for a range of qubit numbers. The circuit
|
2482
|
+
consists of ten `BasicEntanglerLayers` with a `PauliZ` expectation value calculated on each wire,
|
2483
|
+
repeated over ten runs. We see that `lightning.qubit` provides a speedup of around two to eight
|
2484
|
+
times, depending on the number of qubits.
|
2485
|
+
|
2486
|
+
The adjoint method can be accessed using the standard interface. Consider the following circuit:
|
2487
|
+
|
2488
|
+
```python
|
2489
|
+
import pennylane as qml
|
2490
|
+
|
2491
|
+
wires = 3
|
2492
|
+
layers = 2
|
2493
|
+
dev = qml.device("lightning.qubit", wires=wires)
|
2494
|
+
|
2495
|
+
@qml.qnode(dev, diff_method="adjoint")
|
2496
|
+
def circuit(weights):
|
2497
|
+
qml.templates.StronglyEntanglingLayers(weights, wires=range(wires))
|
2498
|
+
return qml.expval(qml.PauliZ(0))
|
2499
|
+
|
2500
|
+
weights = qml.init.strong_ent_layers_normal(layers, wires, seed=1967)
|
2501
|
+
```
|
2502
|
+
|
2503
|
+
The circuit can be executed and its gradient calculated using:
|
2504
|
+
|
2505
|
+
```pycon
|
2506
|
+
>>> print(f"Circuit evaluated: {circuit(weights)}")
|
2507
|
+
Circuit evaluated: 0.9801286266677633
|
2508
|
+
>>> print(f"Circuit gradient:\n{qml.grad(circuit)(weights)}")
|
2509
|
+
Circuit gradient:
|
2510
|
+
[[[-1.11022302e-16 -1.63051504e-01 -4.14810501e-04]
|
2511
|
+
[ 1.11022302e-16 -1.50136528e-04 -1.77922957e-04]
|
2512
|
+
[ 0.00000000e+00 -3.92874550e-02 8.14523075e-05]]
|
2513
|
+
|
2514
|
+
[[-1.14472273e-04 3.85963953e-02 0.00000000e+00]
|
2515
|
+
[-5.76791765e-05 -9.78478343e-02 0.00000000e+00]
|
2516
|
+
[-5.55111512e-17 0.00000000e+00 -1.11022302e-16]]]
|
2517
|
+
```
|
2518
|
+
|
2519
|
+
* PennyLane-Lightning now supports all of the operations and observables of `default.qubit`.
|
2520
|
+
[(#124)](https://github.com/PennyLaneAI/pennylane-lightning/pull/124)
|
2521
|
+
|
2522
|
+
### Improvements
|
2523
|
+
|
2524
|
+
* A new state-vector class `StateVectorManaged` was added, enabling memory use to be bound to
|
2525
|
+
statevector lifetime.
|
2526
|
+
[(#136)](https://github.com/PennyLaneAI/pennylane-lightning/pull/136)
|
2527
|
+
|
2528
|
+
* The repository now has a well-defined component hierarchy, allowing each indepedent unit to be
|
2529
|
+
compiled and linked separately.
|
2530
|
+
[(#136)](https://github.com/PennyLaneAI/pennylane-lightning/pull/136)
|
2531
|
+
|
2532
|
+
* PennyLane-Lightning can now be installed without compiling its C++ binaries and will fall back
|
2533
|
+
to using the `default.qubit` implementation. Skipping compilation is achieved by setting the
|
2534
|
+
`SKIP_COMPILATION` environment variable, e.g., Linux/MacOS: `export SKIP_COMPILATION=True`,
|
2535
|
+
Windows: `set SKIP_COMPILATION=True`. This feature is intended for building a pure-Python wheel of
|
2536
|
+
PennyLane-Lightning as a backup for platforms without a dedicated wheel.
|
2537
|
+
[(#129)](https://github.com/PennyLaneAI/pennylane-lightning/pull/129)
|
2538
|
+
|
2539
|
+
* The C++-backed Python bound methods can now be directly called with wires and supplied parameters.
|
2540
|
+
[(#125)](https://github.com/PennyLaneAI/pennylane-lightning/pull/125)
|
2541
|
+
|
2542
|
+
* Lightning supports arbitrary unitary and non-unitary gate-calls from Python to C++ layer.
|
2543
|
+
[(#121)](https://github.com/PennyLaneAI/pennylane-lightning/pull/121)
|
2544
|
+
|
2545
|
+
### Documentation
|
2546
|
+
|
2547
|
+
* Added preliminary architecture diagram for package.
|
2548
|
+
[(#131)](https://github.com/PennyLaneAI/pennylane-lightning/pull/131)
|
2549
|
+
|
2550
|
+
* C++ API built as part of docs generation.
|
2551
|
+
[(#131)](https://github.com/PennyLaneAI/pennylane-lightning/pull/131)
|
2552
|
+
|
2553
|
+
### Breaking changes
|
2554
|
+
|
2555
|
+
* Wheels for MacOS <= 10.13 will no longer be provided due to XCode SDK C++17 support requirements.
|
2556
|
+
[(#149)](https://github.com/PennyLaneAI/pennylane-lightning/pull/149)
|
2557
|
+
|
2558
|
+
### Bug fixes
|
2559
|
+
|
2560
|
+
* An indexing error in the CRY gate is fixed. [(#136)](https://github.com/PennyLaneAI/pennylane-lightning/pull/136)
|
2561
|
+
|
2562
|
+
* Column-major data in numpy is now correctly converted to row-major upon pass to the C++ layer.
|
2563
|
+
[(#126)](https://github.com/PennyLaneAI/pennylane-lightning/pull/126)
|
2564
|
+
|
2565
|
+
### Contributors
|
2566
|
+
|
2567
|
+
This release contains contributions from (in alphabetical order):
|
2568
|
+
|
2569
|
+
Thomas Bromley, Lee James O'Riordan
|
2570
|
+
|
2571
|
+
---
|
2572
|
+
|
2573
|
+
# Release 0.17.0
|
2574
|
+
|
2575
|
+
### New features
|
2576
|
+
|
2577
|
+
* C++ layer now supports float (32-bit) and double (64-bit) templated complex data.
|
2578
|
+
[(#113)](https://github.com/PennyLaneAI/pennylane-lightning/pull/113)
|
2579
|
+
|
2580
|
+
### Improvements
|
2581
|
+
|
2582
|
+
* The PennyLane device test suite is now included in coverage reports.
|
2583
|
+
[(#123)](https://github.com/PennyLaneAI/pennylane-lightning/pull/123)
|
2584
|
+
|
2585
|
+
* Static versions of jQuery and Bootstrap are no longer included in the CSS theme.
|
2586
|
+
[(#118)](https://github.com/PennyLaneAI/pennylane-lightning/pull/118)
|
2587
|
+
|
2588
|
+
* C++ tests have been ported to use Catch2 framework.
|
2589
|
+
[(#115)](https://github.com/PennyLaneAI/pennylane-lightning/pull/115)
|
2590
|
+
|
2591
|
+
* Testing now exists for both float and double precision methods in C++ layer.
|
2592
|
+
[(#113)](https://github.com/PennyLaneAI/pennylane-lightning/pull/113)
|
2593
|
+
[(#115)](https://github.com/PennyLaneAI/pennylane-lightning/pull/115)
|
2594
|
+
|
2595
|
+
* Compile-time utility methods with `constexpr` have been added.
|
2596
|
+
[(#113)](https://github.com/PennyLaneAI/pennylane-lightning/pull/113)
|
2597
|
+
|
2598
|
+
* Wheel-build support for ARM64 (Linux and MacOS) and PowerPC (Linux) added.
|
2599
|
+
[(#110)](https://github.com/PennyLaneAI/pennylane-lightning/pull/110)
|
2600
|
+
|
2601
|
+
* Add support for Controlled Phase Gate (`ControlledPhaseShift`).
|
2602
|
+
[(#114)](https://github.com/PennyLaneAI/pennylane-lightning/pull/114)
|
2603
|
+
|
2604
|
+
* Move changelog to `.github` and add a changelog reminder.
|
2605
|
+
[(#111)](https://github.com/PennyLaneAI/pennylane-lightning/pull/111)
|
2606
|
+
|
2607
|
+
* Adds CMake build system support.
|
2608
|
+
[(#104)](https://github.com/PennyLaneAI/pennylane-lightning/pull/104)
|
2609
|
+
|
2610
|
+
|
2611
|
+
### Breaking changes
|
2612
|
+
|
2613
|
+
* Removes support for Python 3.6 and adds support for Python 3.9.
|
2614
|
+
[(#127)](https://github.com/PennyLaneAI/pennylane-lightning/pull/127)
|
2615
|
+
[(#128)](https://github.com/PennyLaneAI/pennylane-lightning/pull/128)
|
2616
|
+
|
2617
|
+
* Compilers with C++17 support are now required to build C++ module.
|
2618
|
+
[(#113)](https://github.com/PennyLaneAI/pennylane-lightning/pull/113)
|
2619
|
+
|
2620
|
+
* Gate classes have been removed with functionality added to StateVector class.
|
2621
|
+
[(#113)](https://github.com/PennyLaneAI/pennylane-lightning/pull/113)
|
2622
|
+
|
2623
|
+
* We are no longer building wheels for Python 3.6.
|
2624
|
+
[(#106)](https://github.com/PennyLaneAI/pennylane-lightning/pull/106)
|
2625
|
+
|
2626
|
+
### Bug fixes
|
2627
|
+
|
2628
|
+
* PowerPC wheel-builder now successfully compiles modules.
|
2629
|
+
[(#120)](https://github.com/PennyLaneAI/pennylane-lightning/pull/120)
|
2630
|
+
|
2631
|
+
### Documentation
|
2632
|
+
|
2633
|
+
* Added community guidelines.
|
2634
|
+
[(#109)](https://github.com/PennyLaneAI/pennylane-lightning/pull/109)
|
2635
|
+
|
2636
|
+
### Contributors
|
2637
|
+
|
2638
|
+
This release contains contributions from (in alphabetical order):
|
2639
|
+
|
2640
|
+
Ali Asadi, Christina Lee, Thomas Bromley, Lee James O'Riordan
|
2641
|
+
|
2642
|
+
---
|
2643
|
+
|
2644
|
+
# Release 0.15.1
|
2645
|
+
|
2646
|
+
### Bug fixes
|
2647
|
+
|
2648
|
+
* The PennyLane-Lightning binaries are now built with NumPy 1.19.5, to avoid ABI
|
2649
|
+
compatibility issues with the latest NumPy 1.20 release. See
|
2650
|
+
[the NumPy release notes](https://numpy.org/doc/stable/release/1.20.0-notes.html#size-of-np-ndarray-and-np-void-changed)
|
2651
|
+
for more details.
|
2652
|
+
[(#97)](https://github.com/PennyLaneAI/pennylane-lightning/pull/97)
|
2653
|
+
|
2654
|
+
### Contributors
|
2655
|
+
|
2656
|
+
This release contains contributions from (in alphabetical order):
|
2657
|
+
|
2658
|
+
Josh Izaac, Antal Száva
|
2659
|
+
|
2660
|
+
---
|
2661
|
+
|
2662
|
+
# Release 0.15.0
|
2663
|
+
|
2664
|
+
### Improvements
|
2665
|
+
|
2666
|
+
* For compatibility with PennyLane v0.15, the `analytic` keyword argument
|
2667
|
+
has been removed. Statistics can still be computed analytically by setting
|
2668
|
+
`shots=None`.
|
2669
|
+
[(#93)](https://github.com/PennyLaneAI/pennylane-lightning/pull/93)
|
2670
|
+
|
2671
|
+
* Inverse gates are now supported.
|
2672
|
+
[(#89)](https://github.com/PennyLaneAI/pennylane-lightning/pull/89)
|
2673
|
+
|
2674
|
+
* Add new lightweight backend with performance improvements.
|
2675
|
+
[(#57)](https://github.com/PennyLaneAI/pennylane-lightning/pull/57)
|
2676
|
+
|
2677
|
+
* Remove the previous Eigen-based backend.
|
2678
|
+
[(#67)](https://github.com/PennyLaneAI/pennylane-lightning/pull/67)
|
2679
|
+
|
2680
|
+
### Bug fixes
|
2681
|
+
|
2682
|
+
* Re-add dispatch table after fixing static initialisation order issue.
|
2683
|
+
[(#68)](https://github.com/PennyLaneAI/pennylane-lightning/pull/68)
|
2684
|
+
|
2685
|
+
### Contributors
|
2686
|
+
|
2687
|
+
This release contains contributions from (in alphabetical order):
|
2688
|
+
|
2689
|
+
Thomas Bromley, Theodor Isacsson, Christina Lee, Thomas Loke, Antal Száva.
|
2690
|
+
|
2691
|
+
---
|
2692
|
+
|
2693
|
+
# Release 0.14.1
|
2694
|
+
|
2695
|
+
### Bug fixes
|
2696
|
+
|
2697
|
+
* Fixes a bug where the `QNode` would swap Lightning-Qubit to
|
2698
|
+
`DefaultQubitAutograd` on device execution due to the inherited
|
2699
|
+
`passthru_devices` entry of the `capabilities` dictionary.
|
2700
|
+
[(#61)](https://github.com/PennyLaneAI/pennylane-lightning/pull/61)
|
2701
|
+
|
2702
|
+
### Contributors
|
2703
|
+
|
2704
|
+
This release contains contributions from (in alphabetical order):
|
2705
|
+
|
2706
|
+
Antal Száva
|
2707
|
+
|
2708
|
+
---
|
2709
|
+
|
2710
|
+
# Release 0.14.0
|
2711
|
+
|
2712
|
+
### Improvements
|
2713
|
+
|
2714
|
+
* Extends support from 16 qubits to 50 qubits.
|
2715
|
+
[(#52)](https://github.com/PennyLaneAI/pennylane-lightning/pull/52)
|
2716
|
+
|
2717
|
+
### Bug fixes
|
2718
|
+
|
2719
|
+
* Updates applying basis state preparations to correspond to the
|
2720
|
+
changes in `DefaultQubit`.
|
2721
|
+
[(#55)](https://github.com/PennyLaneAI/pennylane-lightning/pull/55)
|
2722
|
+
|
2723
|
+
### Contributors
|
2724
|
+
|
2725
|
+
This release contains contributions from (in alphabetical order):
|
2726
|
+
|
2727
|
+
Thomas Loke, Tom Bromley, Josh Izaac, Antal Száva
|
2728
|
+
|
2729
|
+
---
|
2730
|
+
|
2731
|
+
# Release 0.12.0
|
2732
|
+
|
2733
|
+
### Bug fixes
|
2734
|
+
|
2735
|
+
* Updates capabilities dictionary to be compatible with core PennyLane
|
2736
|
+
[(#45)](https://github.com/PennyLaneAI/pennylane-lightning/pull/45)
|
2737
|
+
|
2738
|
+
* Fix install of Eigen for CI wheel building
|
2739
|
+
[(#44)](https://github.com/PennyLaneAI/pennylane-lightning/pull/44)
|
2740
|
+
|
2741
|
+
### Contributors
|
2742
|
+
|
2743
|
+
This release contains contributions from (in alphabetical order):
|
2744
|
+
|
2745
|
+
Tom Bromley, Josh Izaac, Antal Száva
|
2746
|
+
|
2747
|
+
---
|
2748
|
+
|
2749
|
+
# Release 0.11.0
|
2750
|
+
|
2751
|
+
Initial release.
|
2752
|
+
|
2753
|
+
This release contains contributions from (in alphabetical order):
|
2754
|
+
|
2755
|
+
Tom Bromley, Josh Izaac, Nathan Killoran, Antal Száva
|