diff --git a/.buildkite/JuliaProject.toml b/.buildkite/JuliaProject.toml new file mode 100644 index 0000000000..0caa1377e0 --- /dev/null +++ b/.buildkite/JuliaProject.toml @@ -0,0 +1,19 @@ +[extras] +CUDA_Runtime_jll = "76a88914-d11a-5bdc-97e0-2f5a05c973a2" +HDF5_jll = "0234f1f7-429e-5d53-9886-15a909be8d59" +MPIPreferences = "3da0fdf6-3ccc-4f1b-acd9-58baa6c99267" + +[preferences.CUDA_Runtime_jll] +version = "12.2" +local = "true" + +[preferences.HDF5_jll] +libhdf5_path = "libhdf5" +libhdf5_hl_path = "libhdf5_hl" + +[preferences.MPIPreferences] +_format = "1.0" +abi = "OpenMPI" +binary = "system" +libmpi = "libmpi" +mpiexec = "mpiexec" diff --git a/.buildkite/pipeline.yml b/.buildkite/pipeline.yml index 217c9a55fd..e7e5cd7076 100644 --- a/.buildkite/pipeline.yml +++ b/.buildkite/pipeline.yml @@ -1,32 +1,31 @@ +agents: + queue: central + modules: julia/1.9.3 cuda/12.2 ucx/1.14.1_cuda-12.2 openmpi/4.1.5_cuda-12.2 hdf5/1.12.2-ompi415 nsight-systems/2023.3.1 + env: - JULIA_VERSION: "1.9.3" - OPENMPI_VERSION: "4.0.4" - CUDA_VERSION: "11.2" + JULIA_LOAD_PATH: "${JULIA_LOAD_PATH}:${BUILDKITE_BUILD_CHECKOUT_PATH}/.buildkite" + JULIA_NVTX_CALLBACKS: gc + JULIA_CPU_TARGET: 'broadwell;skylake' OPENBLAS_NUM_THREADS: 1 - BUILDKITE_COMMIT: "${BUILDKITE_COMMIT}" - BUILDKITE_BRANCH: "${BUILDKITE_BRANCH}" - GKSwstype: 100 - -agents: - config: cpu - queue: central - slurm_ntasks: 1 + OMPI_MCA_opal_warn_on_missing_libcuda: 0 + SLURM_KILL_BAD_EXIT: 1 steps: - label: "init environment :computer:" key: "init_cpu_env" command: - - - echo "--- Configure MPI" - - julia -e 'using Pkg; Pkg.add("MPIPreferences"); using MPIPreferences; use_system_binary()' - + - echo "--- Instantiate project" - "julia --project -e 'using Pkg; Pkg.instantiate(;verbose=true)'" - - "julia --project -e 'using Pkg; Pkg.precompile()'" - "julia --project -e 'using Pkg; Pkg.status()'" + - echo "--- Instantiate test" - "julia --project=experiments -e 'using Pkg; Pkg.instantiate(;verbose=true)'" - - "julia --project=experiments -e 'using Pkg; Pkg.precompile()'" - "julia --project=experiments -e 'using Pkg; Pkg.status()'" + agents: + slurm_cpus_per_task: 8 + slurm_mem_per_cpu: 8G + env: + JULIA_NUM_PRECOMPILE_TASKS: 8 - wait @@ -58,3 +57,6 @@ steps: - label: "Water conservation" command: "julia --color=yes --project=experiments experiments/standalone/Soil/water_conservation.jl" artifact_paths: "experiments/standalone/Soil/water_conservation*png" + - wait + + - command: "compact_depot"