diff --git a/.buildkite/pipeline.yml b/.buildkite/pipeline.yml index 43cfba3e..12135f33 100644 --- a/.buildkite/pipeline.yml +++ b/.buildkite/pipeline.yml @@ -15,8 +15,7 @@ steps: println("+++ :julia: Running tests") Pkg.test("AcceleratedKernels", test_args=["--CUDA"])' agents: - queue: "juliagpu" - cuda: "*" + queue: "cuda" if: build.message !~ /\[skip tests\]/ timeout_in_minutes: 60 @@ -34,8 +33,7 @@ steps: println("+++ :julia: Running tests") Pkg.test("AcceleratedKernels", test_args=["--CUDA"])' agents: - queue: "juliagpu" - cuda: "*" + queue: "cuda" if: build.message !~ /\[skip tests\]/ timeout_in_minutes: 60 @@ -55,8 +53,7 @@ steps: println("+++ :julia: Running tests") Pkg.test("AcceleratedKernels", test_args=["--AMDGPU"])' agents: - queue: "juliagpu" - rocm: "*" + queue: "rocm" rocmgpu: "*" if: build.message !~ /\[skip tests\]/ timeout_in_minutes: 60 @@ -75,8 +72,7 @@ steps: println("+++ :julia: Running tests") Pkg.test("AcceleratedKernels", test_args=["--AMDGPU"])' agents: - queue: "juliagpu" - rocm: "*" + queue: "rocm" rocmgpu: "*" if: build.message !~ /\[skip tests\]/ timeout_in_minutes: 60 @@ -97,8 +93,7 @@ steps: println("+++ :julia: Running tests") Pkg.test("AcceleratedKernels", test_args=["--oneAPI"])' agents: - queue: "juliagpu" - intel: "*" + queue: "oneapi" if: build.message !~ /\[skip tests\]/ timeout_in_minutes: 60 @@ -116,8 +111,7 @@ steps: println("+++ :julia: Running tests") Pkg.test("AcceleratedKernels", test_args=["--oneAPI"])' agents: - queue: "juliagpu" - intel: "*" + queue: "oneapi" if: build.message !~ /\[skip tests\]/ timeout_in_minutes: 60 @@ -137,9 +131,7 @@ steps: println("+++ :julia: Running tests") Pkg.test("AcceleratedKernels", test_args=["--Metal"])' agents: - queue: "juliaecosystem" - os: "macos" - arch: "aarch64" + queue: "metal" if: build.message !~ /\[skip tests\]/ timeout_in_minutes: 60 @@ -157,8 +149,6 @@ steps: println("+++ :julia: Running tests") Pkg.test("AcceleratedKernels", test_args=["--Metal"])' agents: - queue: "juliaecosystem" - os: "macos" - arch: "aarch64" + queue: "metal" if: build.message !~ /\[skip tests\]/ timeout_in_minutes: 60 diff --git a/.github/workflows/CI-CPU.yml b/.github/workflows/CI-CPU.yml index 298d02ce..2944bf2b 100644 --- a/.github/workflows/CI-CPU.yml +++ b/.github/workflows/CI-CPU.yml @@ -31,7 +31,7 @@ jobs: - ubuntu-latest - macOS-latest - windows-latest - - macOS-13 + - macOS-15-intel arch: - x64 - x86 @@ -40,9 +40,9 @@ jobs: - JULIA_NUM_THREADS: 1 - JULIA_NUM_THREADS: 2 exclude: - - os: macOS-13 + - os: macOS-15-intel arch: x86 - - os: macOS-13 + - os: macOS-15-intel arch: aarch64 - os: macOS-latest arch: x86 diff --git a/Project.toml b/Project.toml index 2fccea8b..3b60f510 100644 --- a/Project.toml +++ b/Project.toml @@ -1,7 +1,7 @@ name = "AcceleratedKernels" uuid = "6a4ca0a5-0e36-4168-a932-d9be78d558f1" authors = ["Andrei-Leonard Nicusan and contributors"] -version = "0.4.3" +version = "0.4.4" [deps] ArgCheck = "dce04be8-c92d-5529-be00-80e4d2c0e197" @@ -21,6 +21,6 @@ ArgCheck = "2" GPUArraysCore = "0.2.0" KernelAbstractions = "0.9.34" Markdown = "1" -UnsafeAtomics = "0.3.0" +UnsafeAtomics = "0.3, 0.4" julia = "1.10" oneAPI = "1, 2" diff --git a/test/runtests.jl b/test/runtests.jl index 716fd8e0..e4587649 100644 --- a/test/runtests.jl +++ b/test/runtests.jl @@ -1,8 +1,16 @@ +import Pkg + +# Install the back-end before loading anything, as it may need different versions of +# packages that AcceleratedKernels depends on (e.g. UnsafeAtomics). +for backend in ("CUDA", "oneAPI", "AMDGPU", "Metal") + "--$backend" in ARGS && Pkg.add(backend) +end +"--OpenCL" in ARGS && Pkg.add(["OpenCL", "pocl_jll"]) + import AcceleratedKernels as AK using KernelAbstractions using Test using Random -import Pkg # Set to true when testing backends that support this const TEST_DL = Ref{Bool}(false) @@ -11,13 +19,11 @@ const TEST_DL = Ref{Bool}(false) # julia> import Pkg # julia> Pkg.test(test_args=["--oneAPI"]) if "--CUDA" in ARGS - Pkg.add("CUDA") using CUDA CUDA.versioninfo() const BACKEND = CUDABackend() TEST_DL[] = true elseif "--oneAPI" in ARGS - Pkg.add("oneAPI") using oneAPI oneAPI.versioninfo() const BACKEND = oneAPIBackend() @@ -25,20 +31,15 @@ elseif "--oneAPI" in ARGS # FIXME: need atomic orderings for `DecoupledLookback` in oneAPI # TEST_DL[] = true elseif "--AMDGPU" in ARGS - Pkg.add("AMDGPU") using AMDGPU AMDGPU.versioninfo() const BACKEND = ROCBackend() TEST_DL[] = true elseif "--Metal" in ARGS - Pkg.add("Metal") using Metal Metal.versioninfo() const BACKEND = MetalBackend() elseif "--OpenCL" in ARGS - Pkg.add(name="OpenCL", rev="master") - Pkg.add(name="SPIRVIntrinsics", rev="master") - Pkg.add("pocl_jll") using pocl_jll using OpenCL OpenCL.versioninfo()