diff --git a/.buildkite/pipeline.yml b/.buildkite/pipeline.yml index 6490309..80cf236 100644 --- a/.buildkite/pipeline.yml +++ b/.buildkite/pipeline.yml @@ -1,13 +1,9 @@ steps: - label: ":pipeline: Launch Tests" command: buildkite-agent pipeline upload .buildkite/runtests.yml - agents: - queue: "juliagpu" - label: ":pipeline: Launch Benchmarks" if: build.message !~ /skip benchmarks/ - agents: - queue: "juliagpu" plugins: - monorepo-diff#v1.0.1: diff: "git diff --name-only HEAD~1" @@ -20,5 +16,3 @@ steps: - "Project.toml" config: command: "buildkite-agent pipeline upload .buildkite/runbenchmarks.yml" - agents: - queue: "juliagpu" \ No newline at end of file diff --git a/.buildkite/runbenchmarks.yml b/.buildkite/runbenchmarks.yml index ac185e1..c79851a 100644 --- a/.buildkite/runbenchmarks.yml +++ b/.buildkite/runbenchmarks.yml @@ -1,94 +1,6 @@ steps: - group: ":racehorse: Benchmarks" steps: - - label: "CPU: Run Benchmarks (1 thread)" - key: "cpu-benchmarks-1" - plugins: - - JuliaCI/julia#v1: - version: "1.10" - command: | - julia --project=benchmarks -e ' - using Pkg; - Pkg.instantiate(); - Pkg.develop(path=pwd()); - ' - julia --project=benchmarks --threads=1 benchmarks/runbenchmarks.jl - artifacts: - - "benchmarks/results/CPUbenchmarks1threads.json" - agents: - queue: "benchmark" - env: - BENCHMARK_GROUP: CPU - JULIA_NUM_THREADS: 1 - if: build.message !~ /\[skip benchmarks\]/ - timeout_in_minutes: 12 - - - label: "CPU: Run Benchmarks (2 threads)" - key: "cpu-benchmarks-2" - plugins: - - JuliaCI/julia#v1: - version: "1.10" - command: | - julia --project=benchmarks -e ' - using Pkg; - Pkg.instantiate(); - Pkg.develop(path=pwd()); - ' - julia --project=benchmarks --threads=2 benchmarks/runbenchmarks.jl - artifacts: - - "benchmarks/results/CPUbenchmarks2threads.json" - agents: - queue: "benchmark" - env: - BENCHMARK_GROUP: CPU - JULIA_NUM_THREADS: 2 - if: build.message !~ /\[skip benchmarks\]/ - timeout_in_minutes: 12 - - - label: "CPU: Run Benchmarks (4 threads)" - key: "cpu-benchmarks-4" - plugins: - - JuliaCI/julia#v1: - version: "1.10" - command: | - julia --project=benchmarks -e ' - using Pkg; - Pkg.instantiate(); - Pkg.develop(path=pwd()); - ' - julia --project=benchmarks --threads=4 benchmarks/runbenchmarks.jl - artifacts: - - "benchmarks/results/CPUbenchmarks4threads.json" - agents: - queue: "benchmark" - env: - BENCHMARK_GROUP: CPU - JULIA_NUM_THREADS: 4 - if: build.message !~ /\[skip benchmarks\]/ - timeout_in_minutes: 12 - - - label: "CPU: Run Benchmarks (8 threads)" - key: "cpu-benchmarks-8" - plugins: - - JuliaCI/julia#v1: - version: "1.10" - command: | - julia --project=benchmarks -e ' - using Pkg; - Pkg.instantiate(); - Pkg.develop(path=pwd()); - ' - julia --project=benchmarks --threads=8 benchmarks/runbenchmarks.jl - artifacts: - - "benchmarks/results/CPUbenchmarks8threads.json" - agents: - queue: "benchmark" - env: - BENCHMARK_GROUP: CPU - JULIA_NUM_THREADS: 8 - if: build.message !~ /\[skip benchmarks\]/ - timeout_in_minutes: 12 - - label: "CUDA: Run Benchmarks" key: "cuda-benchmarks" plugins: @@ -105,8 +17,7 @@ steps: artifacts: - "benchmarks/results/CUDAbenchmarks.json" agents: - queue: "juliagpu" - cuda: "*" + queue: "cuda" env: BENCHMARK_GROUP: CUDA if: build.message !~ /\[skip benchmarks\]/ @@ -128,8 +39,7 @@ steps: artifacts: - "benchmarks/results/AMDGPUbenchmarks.json" agents: - queue: "juliagpu" - rocm: "*" + queue: "rocm" rocmgpu: "*" env: BENCHMARK_GROUP: AMDGPU @@ -152,8 +62,7 @@ steps: artifacts: - "benchmarks/results/oneAPIbenchmarks.json" agents: - queue: "juliagpu" - intel: "*" + queue: "oneapi" env: BENCHMARK_GROUP: oneAPI if: build.message !~ /\[skip benchmarks\]/ @@ -175,9 +84,7 @@ steps: artifacts: - "benchmarks/results/Metalbenchmarks.json" agents: - queue: "juliaecosystem" - os: "macos" - arch: "aarch64" + queue: "metal" env: BENCHMARK_GROUP: Metal if: build.message !~ /\[skip benchmarks\]/ @@ -188,10 +95,6 @@ steps: - label: "Combine Benchmarks" key: "combine-benchmarks" depends_on: - - "cpu-benchmarks-1" # Update these - - "cpu-benchmarks-2" - - "cpu-benchmarks-4" - - "cpu-benchmarks-8" - "cuda-benchmarks" - "oneapi-benchmarks" - "amdgpu-benchmarks" @@ -208,7 +111,8 @@ steps: artifacts: - "benchmarks/results/combinedbenchmarks.json" agents: - queue: "benchmark" + queue: "cuda" + benchmark: "*" env: if: build.message !~ /\[skip benchmarks\]/ timeout_in_minutes: 12 \ No newline at end of file diff --git a/.buildkite/runtests.yml b/.buildkite/runtests.yml index 91eeff7..4613055 100644 --- a/.buildkite/runtests.yml +++ b/.buildkite/runtests.yml @@ -1,27 +1,4 @@ steps: - - label: "CPU: Julia v{{matrix.version}}" - matrix: - setup: - version: - - "1.10" - plugins: - - JuliaCI/julia#v1: - version: "{{matrix.version}}" - - JuliaCI/julia-coverage#v1: - codecov: true - command: | - julia -e 'using Pkg - - println("--- :julia: Instantiating environment") - Pkg.develop(path=".") - - println("+++ :julia: Running tests") - Pkg.test("DistanceTransforms"; coverage=true, julia_args=`--threads=auto`)' - agents: - queue: "juliagpu" - if: build.message !~ /\[skip tests\]/ - timeout_in_minutes: 10 - - label: "CUDA: Julia {{matrix.version}}" matrix: setup: @@ -42,12 +19,11 @@ steps: println("+++ :julia: Running tests") Pkg.test("DistanceTransforms"; coverage=true, test_args=["CUDA"])' agents: - queue: "juliagpu" - cuda: "*" + queue: "cuda" if: build.message !~ /\[skip tests\]/ timeout_in_minutes: 10 - - label: "Metal: Julia {{matrix.version}}" + - label: "oneAPI: Julia {{matrix.version}}" matrix: setup: version: @@ -61,19 +37,17 @@ steps: julia -e 'using Pkg println("--- :julia: Instantiating environment") - Pkg.add("Metal") + Pkg.add("oneAPI") Pkg.develop(path=".") println("+++ :julia: Running tests") - Pkg.test("DistanceTransforms"; coverage=true, test_args=["Metal"])' + Pkg.test("DistanceTransforms"; coverage=true, test_args=["oneAPI"])' agents: - queue: "juliaecosystem" - os: "macos" - arch: "aarch64" + queue: "oneapi" if: build.message !~ /\[skip tests\]/ timeout_in_minutes: 10 - - label: "oneAPI: Julia {{matrix.version}}" + - label: "AMDGPU: Julia {{matrix.version}}" matrix: setup: version: @@ -87,18 +61,17 @@ steps: julia -e 'using Pkg println("--- :julia: Instantiating environment") - Pkg.add("oneAPI") + Pkg.add("AMDGPU") Pkg.develop(path=".") println("+++ :julia: Running tests") - Pkg.test("DistanceTransforms"; coverage=true, test_args=["oneAPI"])' + Pkg.test("DistanceTransforms"; coverage=true, test_args=["AMDGPU"])' agents: - queue: "juliagpu" - intel: "*" + queue: "rocm" + rocmgpu: "*" if: build.message !~ /\[skip tests\]/ - timeout_in_minutes: 10 - - - label: "AMDGPU: Julia {{matrix.version}}" + timeout_in_minutes: 10 + - label: "Metal: Julia {{matrix.version}}" matrix: setup: version: @@ -112,14 +85,15 @@ steps: julia -e 'using Pkg println("--- :julia: Instantiating environment") - Pkg.add("AMDGPU") + Pkg.add("Metal") Pkg.develop(path=".") println("+++ :julia: Running tests") - Pkg.test("DistanceTransforms"; coverage=true, test_args=["AMDGPU"])' + Pkg.test("DistanceTransforms"; coverage=true, test_args=["Metal"])' agents: - queue: "juliagpu" - rocm: "*" - rocmgpu: "*" + queue: "metal" if: build.message !~ /\[skip tests\]/ - timeout_in_minutes: 10 \ No newline at end of file + timeout_in_minutes: 10 + +env: + JULIA_PKG_PRECOMPILE_AUTO: false