Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 0 additions & 6 deletions .buildkite/pipeline.yml
Original file line number Diff line number Diff line change
@@ -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"
Expand All @@ -20,5 +16,3 @@ steps:
- "Project.toml"
config:
command: "buildkite-agent pipeline upload .buildkite/runbenchmarks.yml"
agents:
queue: "juliagpu"
108 changes: 6 additions & 102 deletions .buildkite/runbenchmarks.yml
Original file line number Diff line number Diff line change
@@ -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:
Expand All @@ -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\]/
Expand All @@ -128,8 +39,7 @@ steps:
artifacts:
- "benchmarks/results/AMDGPUbenchmarks.json"
agents:
queue: "juliagpu"
rocm: "*"
queue: "rocm"
rocmgpu: "*"
env:
BENCHMARK_GROUP: AMDGPU
Expand All @@ -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\]/
Expand All @@ -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\]/
Expand All @@ -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"
Expand All @@ -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
64 changes: 19 additions & 45 deletions .buildkite/runtests.yml
Original file line number Diff line number Diff line change
@@ -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:
Expand All @@ -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:
Expand All @@ -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:
Expand All @@ -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:
Expand All @@ -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
timeout_in_minutes: 10

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@Dale-Black Could you also add this environment variable? It'll prevent needless precompilation of packages after Pkg commands that won't end up getting used because the tests launch with --check-bounds=yes and the precompilation happened with --check-bounds=auto

Suggested change
timeout_in_minutes: 10
timeout_in_minutes: 10
env:
JULIA_PKG_PRECOMPILE_AUTO: false


env:
JULIA_PKG_PRECOMPILE_AUTO: false