Skip to content

Commit ca67975

Browse files
committed
enable GPU tests
1 parent 873d81a commit ca67975

File tree

2 files changed

+32
-63
lines changed

2 files changed

+32
-63
lines changed

.buildkite/JuliaProject.toml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
[extras]
2+
HDF5_jll = "0234f1f7-429e-5d53-9886-15a909be8d59"
3+
MPIPreferences = "3da0fdf6-3ccc-4f1b-acd9-58baa6c99267"
4+
5+
[preferences.HDF5_jll]
6+
libhdf5_path = "libhdf5"
7+
libhdf5_hl_path = "libhdf5_hl"
8+
9+
[preferences.MPIPreferences]
10+
_format = "1.0"
11+
abi = "OpenMPI"
12+
binary = "system"
13+
libmpi = "libmpi"
14+
mpiexec = "mpiexec"

.buildkite/pipeline.yml

Lines changed: 18 additions & 63 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,21 @@
1+
2+
agents:
3+
queue: central
4+
slurm_mem: 8G
5+
modules: julia/1.8.5 openmpi/4.1.1 cuda/11.3 hdf5/1.12.1-ompi411
6+
17
env:
2-
JULIA_VERSION: "1.8.3"
3-
CUDA_VERSION: "11.2"
4-
OPENMPI_VERSION: "4.1.1"
8+
JULIA_LOAD_PATH: "${JULIA_LOAD_PATH}:${BUILDKITE_BUILD_CHECKOUT_PATH}/.buildkite"
9+
JULIA_CUDA_USE_BINARYBUILDER: false
510
OPENBLAS_NUM_THREADS: 1
6-
CLIMATEMACHINE_SETTINGS_FIX_RNG_SEED: "true"
711

812
steps:
913
- label: "init cpu env"
1014
key: "init_cpu_env"
1115
command:
12-
- echo "--- Configure MPI"
13-
- julia -e 'using Pkg; Pkg.add("MPIPreferences"); using MPIPreferences; use_system_binary()'
14-
1516
- echo "--- Instantiate project"
1617
- "julia --project -e 'using Pkg; Pkg.instantiate(;verbose=true); Pkg.precompile(;strict=true)'"
18+
- "julia --project -e 'using CUDA; CUDA.precompile_runtime()'"
1719

1820
- echo "--- Instantiate test"
1921
- "julia --project=test -e 'using Pkg; Pkg.develop(path=\".\"); Pkg.instantiate(;verbose=true); Pkg.precompile(;strict=true)'"
@@ -23,85 +25,38 @@ steps:
2325

2426
- echo "--- Package status"
2527
- "julia --project -e 'using Pkg; Pkg.status()'"
26-
2728
agents:
28-
config: cpu
29-
queue: central
30-
slurm_ntasks: 1
31-
32-
# - label: "init gpu env"
33-
# key: "init_gpu_env"
34-
# command:
35-
# - echo "--- Configure MPI"
36-
# - julia -e 'using Pkg; Pkg.add("MPIPreferences"); using MPIPreferences; use_system_binary()'
37-
38-
# - echo "--- Instantiate project"
39-
# - "julia --project -e 'using Pkg; Pkg.instantiate(;verbose=true); Pkg.precompile(;strict=true)'"
40-
41-
# - echo "--- Instantiate test"
42-
# - "julia --project=test -e 'using Pkg; Pkg.develop(path=\".\"); Pkg.instantiate(;verbose=true); Pkg.precompile()'"
43-
44-
# - echo "--- Initialize CUDA runtime"
45-
# - "julia --project -e 'using CUDA; CUDA.precompile_runtime(); CUDA.versioninfo()'"
46-
47-
# - echo "--- Package status"
48-
# - "julia --project -e 'using Pkg; Pkg.status()'"
49-
# agents:
50-
# config: gpu
51-
# queue: central
52-
# slurm_ntasks: 1
53-
# slurm_gres: "gpu:1"
29+
slurm_cpus_per_task: 8
30+
env:
31+
JULIA_NUM_PRECOMPILE_TASKS: 8
5432

5533
- wait
5634

5735
- label: "CPU tests"
5836
command:
5937
- "julia --project=test --check-bounds=yes test/runtests.jl"
6038
artifact_paths: "output/*"
61-
agents:
62-
config: cpu
63-
queue: central
64-
slurm_ntasks: 1
6539

66-
# - label: "GPU tests"
67-
# command:
68-
# - "julia --project=test --check-bounds=yes test/runtests.jl CuArray"
69-
# artifact_paths: "output/*"
70-
# agents:
71-
# config: gpu
72-
# queue: central
73-
# slurm_ntasks: 1
74-
# slurm_gres: "gpu:1"
40+
- label: "GPU tests"
41+
command:
42+
- "julia --project=test --check-bounds=yes test/runtests.jl CuArray"
43+
artifact_paths: "output/*"
44+
agents:
45+
slurm_gpus: 1
7546

7647
- label: "Flame graph (1D diffusion)"
7748
command:
7849
- "julia --project=perf perf/flame.jl --job_id diffusion_1D"
7950
artifact_paths: "diffusion_1D/*"
80-
agents:
81-
config: cpu
82-
queue: central
83-
slurm_ntasks: 1
8451

8552
- label: "Jet graph (ode fun)"
8653
command:
8754
- "julia --project=perf perf/jet.jl --problem ode_fun"
88-
agents:
89-
config: cpu
90-
queue: central
91-
slurm_ntasks: 1
9255

9356
- label: "Jet (forward euler)"
9457
command:
9558
- "julia --project=perf perf/jet.jl --problem fe"
96-
agents:
97-
config: cpu
98-
queue: central
99-
slurm_ntasks: 1
10059

10160
- label: "Benchmark"
10261
command:
10362
- "julia --project=perf perf/benchmark.jl"
104-
agents:
105-
config: cpu
106-
queue: central
107-
slurm_ntasks: 1

0 commit comments

Comments
 (0)