Update/py pennylane lightning (#39466)

* Update pennylane-lightning.

* Update Lightning-Kokkos to v0.31

* Constrain scipy version.

* Update var/spack/repos/builtin/packages/py-pennylane-lightning-kokkos/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

* Fix PLK kokkos dep versioning.

* Move kokkos ver outised backend loop and reformat.

* Update package.py

---------

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
This commit is contained in:
Vincent Michaud-Rioux 2023-08-22 20:14:31 -04:00 committed by GitHub
parent 209409189a
commit 6c439ec022
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 21 additions and 17 deletions

View File

@ -13,15 +13,19 @@ class PyPennylaneLightningKokkos(CMakePackage, PythonExtension, CudaPackage, ROC
homepage = "https://docs.pennylane.ai/projects/lightning-kokkos"
git = "https://github.com/PennyLaneAI/pennylane-lightning-kokkos.git"
url = "https://github.com/PennyLaneAI/pennylane-lightning-kokkos/archive/refs/tags/v0.30.0.tar.gz"
url = "https://github.com/PennyLaneAI/pennylane-lightning-kokkos/archive/refs/tags/v0.31.0.tar.gz"
maintainers("AmintorDusko", "vincentmr")
version("main", branch="main")
version("0.31.0", sha256="fe10322fee0fa7df45cd3a81d6c229a79c7dfa7f20ff7d67c65c9a28f494dc89")
version("0.30.0", sha256="7c8f0e0431f8052993cd8033a316f53590c7bf5419445d0725e214b93cbc661b")
version("0.29.1", sha256="f51ba7718defc7bb5064f690f381e04b2ec58cb09f22a171ae5f410860716e30")
depends_on("kokkos@:3.7.2", when="@:0.30", type=("run", "build"))
depends_on("kokkos@4:", when="@0.31:", type=("run", "build"))
# kokkos backends
backends = {
"cuda": [False, "Whether to build CUDA backend"],
@ -36,21 +40,16 @@ class PyPennylaneLightningKokkos(CMakePackage, PythonExtension, CudaPackage, ROC
for backend in backends:
deflt_bool, descr = backends[backend]
variant(backend.lower(), default=deflt_bool, description=descr)
depends_on(
f"kokkos@3.7+{backend.lower()}", when=f"+{backend.lower()}", type=("run", "build")
)
depends_on(f"kokkos+{backend.lower()}", when=f"+{backend.lower()}", type=("run", "build"))
# CUDA
for val in CudaPackage.cuda_arch_values:
depends_on("kokkos@:3.7.01 cuda_arch={0}".format(val), when="cuda_arch={0}".format(val))
depends_on("kokkos cuda_arch={0}".format(val), when="cuda_arch={0}".format(val))
# Use +wrapper when not %clang %cce
depends_on("kokkos@:3.7.01+wrapper", when="%gcc+cuda")
depends_on("kokkos+wrapper", when="%gcc+cuda")
# ROCm
for val in ROCmPackage.amdgpu_targets:
depends_on(
"kokkos@:3.7.01 amdgpu_target={0}".format(val), when="amdgpu_target={0}".format(val)
)
depends_on("kokkos amdgpu_target={0}".format(val), when="amdgpu_target={0}".format(val))
conflicts(
"+cuda",
@ -72,7 +71,9 @@ class PyPennylaneLightningKokkos(CMakePackage, PythonExtension, CudaPackage, ROC
depends_on("py-pybind11", type="link")
depends_on("py-pip", type="build")
depends_on("py-wheel", type="build")
depends_on("py-pennylane@0.28:", type=("build", "run"))
depends_on("py-pennylane@0.30:", type=("build", "run"), when="@0.31:")
depends_on("py-pennylane@0.28:", type=("build", "run"), when="@:0.30.0")
depends_on("py-pennylane-lightning@0.31:~kokkos", type=("build", "run"), when="@0.31.0:")
depends_on("py-pennylane-lightning@0.30:~kokkos", type=("build", "run"), when="@0.30.0:")
depends_on("py-pennylane-lightning@0.28:0.29~kokkos", type=("build", "run"), when="@0.29.1")

View File

@ -12,11 +12,12 @@ class PyPennylaneLightning(CMakePackage, PythonExtension):
homepage = "https://docs.pennylane.ai/projects/lightning"
git = "https://github.com/PennyLaneAI/pennylane-lightning.git"
url = "https://github.com/PennyLaneAI/pennylane-lightning/archive/refs/tags/v0.30.0.tar.gz"
url = "https://github.com/PennyLaneAI/pennylane-lightning/archive/refs/tags/v0.31.0.tar.gz"
maintainers("mlxd", "AmintorDusko")
version("master", branch="master")
version("0.31.0", sha256="b177243625b6fdac0699d163bbc330c92ca87fb9f427643785069273d2a255f6")
version("0.30.0", sha256="0f4032409d20d00991b5d14fe0b2b928baca4a13c5a1b16eab91f61f9273e58d")
version("0.29.0", sha256="da9912f0286d1a54051cc19cf8bdbdcd732795636274c95f376db72a88e52d85")
@ -43,8 +44,8 @@ class PyPennylaneLightning(CMakePackage, PythonExtension):
# variant defined dependencies
depends_on("blas", when="+blas")
depends_on("kokkos@:3.7.01", when="+kokkos")
depends_on("kokkos-kernels@:3.7.01", when="+kokkos")
depends_on("kokkos@:4.0.01", when="+kokkos")
depends_on("kokkos-kernels@:4.0.01", when="+kokkos")
depends_on("llvm-openmp", when="+openmp %apple-clang")
depends_on("python@3.8:", type=("build", "run"))

View File

@ -12,11 +12,12 @@ class PyPennylane(PythonPackage):
homepage = "https://docs.pennylane.ai/"
git = "https://github.com/PennyLaneAI/pennylane.git"
url = "https://github.com/PennyLaneAI/pennylane/archive/refs/tags/v0.30.0.tar.gz"
url = "https://github.com/PennyLaneAI/pennylane/archive/refs/tags/v0.31.0.tar.gz"
maintainers("mlxd", "AmintorDusko", "marcodelapierre")
version("master", branch="master")
version("0.31.0", sha256="f3b68700825c120e44434ed2b2ab71d0be9d3111f3043077ec0598661ec33477")
version("0.30.0", sha256="7fe4821fbc733e3e40d7011e054bd2e31edde3151fd9539025c827a5a3579d6b")
version("0.29.1", sha256="6ecfb305a3898347df8c539a89a67e748766941d159dbef9e34864872f13c45c")
@ -25,16 +26,17 @@ class PyPennylane(PythonPackage):
depends_on("py-setuptools", type="build")
depends_on("py-numpy@:1.23", type=("build", "run"))
depends_on("py-scipy", type=("build", "run"))
depends_on("py-scipy@:1.10", type=("build", "run"))
depends_on("py-networkx", type=("build", "run"))
depends_on("py-rustworkx", type=("build", "run"), when="@0.30.0:")
depends_on("py-retworkx", type=("build", "run"), when="@0.28.0:0.29.1")
depends_on("py-autograd", type=("build", "run"))
depends_on("py-autograd@:1.5", type=("build", "run"))
depends_on("py-toml", type=("build", "run"))
depends_on("py-appdirs", type=("build", "run"))
depends_on("py-semantic-version@2.7:", type=("build", "run"))
depends_on("py-autoray@0.3.1:", type=("build", "run"))
depends_on("py-cachetools", type=("build", "run"))
depends_on("py-pennylane-lightning@0.31.0:", type=("build", "run"), when="@0.31.0:")
depends_on("py-pennylane-lightning@0.30.0:", type=("build", "run"), when="@0.30.0:")
depends_on(
"py-pennylane-lightning@0.28.0:0.29.0", type=("build", "run"), when="@0.28.0:0.29.1"