diff --git a/.buildkite/dss_scaling/pipeline.yml b/.buildkite/dss_scaling/pipeline.yml deleted file mode 100644 index 49833e6d8b..0000000000 --- a/.buildkite/dss_scaling/pipeline.yml +++ /dev/null @@ -1,426 +0,0 @@ -agents: - queue: new-central - slurm_mem: 8G - modules: climacommon/2024_10_08 - -env: - MPICH_VERSION: "4.0.0" - OPENMPI_VERSION: "4.1.1" - CUDA_VERSION: "11.2" - OPENBLAS_NUM_THREADS: 1 - slurm_time: 8:00:00 - -steps: - - label: "init :computer:" - key: "init_cpu_env" - command: - - echo "--- Configure MPI" - - julia -e 'using Pkg; Pkg.add("MPIPreferences"); using MPIPreferences; use_system_binary()' - - - echo "--- Instantiate dss scaling test" - - "julia --project=.buildkite -e 'using Pkg; Pkg.instantiate(;verbose=true)'" - - "julia --project=.buildkite -e 'using Pkg; Pkg.precompile(;strict=true)'" - - - echo "--- Instantiate status" - - "julia --project -e 'using Pkg; Pkg.status()'" - agents: - queue: new-central - slurm_ntasks: 1 - slurm_cpus_per_task: 8 - env: - JULIA_NUM_PRECOMPILE_TASKS: 8 - - - wait - - group: "Shallow water DSS scaling" - steps: - - label: ":computer: Shallow water DSS scaling - (1) processes" - command: - - "nsys profile --trace=nvtx,mpi --mpi-impl=mpich --output=examples/sphere/output/report_NP4.%q{NPROCS} mpiexec julia --color=yes --project=.buildkite examples/sphere/shallow_water_dss.jl 4 Float64" - - "nsys profile --trace=nvtx,mpi --mpi-impl=mpich --output=examples/sphere/output/report_NP2.%q{NPROCS} mpiexec julia --color=yes --project=.buildkite examples/sphere/shallow_water_dss.jl 2 Float64" - artifact_paths: - - "examples/sphere/output/report_NP*.1.*" - - "examples/sphere/output/dss_scaling_data_1_processes*.jld2" - env: - TEST_NAME: "BarotropicInstabilityTest" - CLIMACOMMS_CONTEXT: "MPI" - NPROCS: 1 - agents: - slurm_nodes: 1 - slurm_ntasks: 1 - slurm_exclusive: - - - label: ":computer: Shallow water DSS scaling - (2) processes" - command: - - "nsys profile --trace=nvtx,mpi --mpi-impl=mpich --output=examples/sphere/output/report_NP4.%q{NPROCS} mpiexec julia --color=yes --project=.buildkite examples/sphere/shallow_water_dss.jl 4 Float64" - - "nsys profile --trace=nvtx,mpi --mpi-impl=mpich --output=examples/sphere/output/report_NP2.%q{NPROCS} mpiexec julia --color=yes --project=.buildkite examples/sphere/shallow_water_dss.jl 2 Float64" - artifact_paths: - - "examples/sphere/output/report_NP*.2.*" - - "examples/sphere/output/dss_scaling_data_2_processes*.jld2" - env: - TEST_NAME: "BarotropicInstabilityTest" - CLIMACOMMS_CONTEXT: "MPI" - NPROCS: 2 - agents: - slurm_nodes: 1 - slurm_ntasks: 2 - slurm_exclusive: - - - label: ":computer: Shallow water DSS scaling - (4) processes" - command: - - "nsys profile --trace=nvtx,mpi --mpi-impl=mpich --output=examples/sphere/output/report_NP4.%q{NPROCS} mpiexec julia --color=yes --project=.buildkite examples/sphere/shallow_water_dss.jl 4 Float64" - - "nsys profile --trace=nvtx,mpi --mpi-impl=mpich --output=examples/sphere/output/report_NP2.%q{NPROCS} mpiexec julia --color=yes --project=.buildkite examples/sphere/shallow_water_dss.jl 2 Float64" - artifact_paths: - - "examples/sphere/output/report_NP*.4.*" - - "examples/sphere/output/dss_scaling_data_4_processes*.jld2" - env: - TEST_NAME: "BarotropicInstabilityTest" - CLIMACOMMS_CONTEXT: "MPI" - NPROCS: 4 - agents: - slurm_nodes: 1 - slurm_ntasks: 4 - slurm_exclusive: - - - label: ":computer: Shallow water DSS scaling - (8) processes" - command: - - "nsys profile --trace=nvtx,mpi --mpi-impl=mpich --output=examples/sphere/output/report_NP4.%q{NPROCS} mpiexec julia --color=yes --project=.buildkite examples/sphere/shallow_water_dss.jl 4 Float64" - - "nsys profile --trace=nvtx,mpi --mpi-impl=mpich --output=examples/sphere/output/report_NP2.%q{NPROCS} mpiexec julia --color=yes --project=.buildkite examples/sphere/shallow_water_dss.jl 2 Float64" - artifact_paths: - - "examples/sphere/output/report_NP*.8.*" - - "examples/sphere/output/dss_scaling_data_8_processes*.jld2" - env: - TEST_NAME: "BarotropicInstabilityTest" - CLIMACOMMS_CONTEXT: "MPI" - NPROCS: 8 - agents: - slurm_nodes: 1 - slurm_ntasks: 8 - slurm_exclusive: - - - label: ":computer: Shallow water DSS scaling - (16) processes" - command: - - "nsys profile --trace=nvtx,mpi --mpi-impl=mpich --output=examples/sphere/output/report_NP4.%q{NPROCS} mpiexec julia --color=yes --project=.buildkite examples/sphere/shallow_water_dss.jl 4 Float64" - - "nsys profile --trace=nvtx,mpi --mpi-impl=mpich --output=examples/sphere/output/report_NP2.%q{NPROCS} mpiexec julia --color=yes --project=.buildkite examples/sphere/shallow_water_dss.jl 2 Float64" - artifact_paths: - - "examples/sphere/output/report_NP*.16.*" - - "examples/sphere/output/dss_scaling_data_16_processes*.jld2" - env: - TEST_NAME: "BarotropicInstabilityTest" - CLIMACOMMS_CONTEXT: "MPI" - NPROCS: 16 - agents: - slurm_nodes: 1 - slurm_ntasks: 16 - slurm_exclusive: - - - label: ":computer: Shallow water DSS scaling - (32) processes" - command: - - "nsys profile --trace=nvtx,mpi --mpi-impl=mpich --output=examples/sphere/output/report_NP4.%q{NPROCS} mpiexec julia --color=yes --project=.buildkite examples/sphere/shallow_water_dss.jl 4 Float64" - - "nsys profile --trace=nvtx,mpi --mpi-impl=mpich --output=examples/sphere/output/report_NP2.%q{NPROCS} mpiexec julia --color=yes --project=.buildkite examples/sphere/shallow_water_dss.jl 2 Float64" - artifact_paths: - - "examples/sphere/output/report_NP*.32.*" - - "examples/sphere/output/dss_scaling_data_32_processes*.jld2" - env: - TEST_NAME: "BarotropicInstabilityTest" - CLIMACOMMS_CONTEXT: "MPI" - NPROCS: 32 - agents: - slurm_nodes: 1 - slurm_ntasks: 32 - slurm_exclusive: - - - wait - - group: "Shallow water DSS scaling plots" - steps: - - label: ":computer: Shallow water DSS scaling plots" - key: "cpu_dss_scaling_plots_shallow-water" - command: - - "julia --color=yes --project=.buildkite examples/plot_dss_timing_results.jl shallow_water" - artifact_paths: - - "examples/sphere/output/*.png" - - "examples/sphere/output/*.pdf" - agents: - slurm_nodes: 1 - slurm_tasks_per_node: 1 - - - wait - - group: "Hybrid cubed sphere low-resolution DSS scaling" - steps: - - - label: ":computer: Hybrid cubed sphere low-resolution DSS scaling - (1) processes" - command: - - "nsys profile --trace=nvtx,mpi --mpi-impl=mpich --output=examples/hybrid/dss_output_low_res/report_NP4.%q{NPROCS} mpiexec julia --color=yes --project=.buildkite examples/hybrid/hybrid3dcs_dss.jl low 4 Float64" - - "nsys profile --trace=nvtx,mpi --mpi-impl=mpich --output=examples/hybrid/dss_output_low_res/report_NP2.%q{NPROCS} mpiexec julia --color=yes --project=.buildkite examples/hybrid/hybrid3dcs_dss.jl low 2 Float64" - artifact_paths: - - "examples/hybrid/dss_output_low_res/report_NP*.1.*" - - "examples/hybrid/dss_output_low_res/dss_scaling_data_1_processes*.jld2" - env: - TEST_NAME: "Hybrid3DcubedsphereDSS" - CLIMACOMMS_CONTEXT: "MPI" - NPROCS: 1 - agents: - slurm_nodes: 1 - slurm_ntasks: 1 - slurm_exclusive: - - - label: ":computer: Hybrid cubed sphere low-resolution DSS scaling - (2) processes" - command: - - "nsys profile --trace=nvtx,mpi --mpi-impl=mpich --output=examples/hybrid/dss_output_low_res/report_NP4.%q{NPROCS} mpiexec julia --color=yes --project=.buildkite examples/hybrid/hybrid3dcs_dss.jl low 4 Float64" - - "nsys profile --trace=nvtx,mpi --mpi-impl=mpich --output=examples/hybrid/dss_output_low_res/report_NP2.%q{NPROCS} mpiexec julia --color=yes --project=.buildkite examples/hybrid/hybrid3dcs_dss.jl low 2 Float64" - artifact_paths: - - "examples/hybrid/dss_output_low_res/report_NP*.2.*" - - "examples/hybrid/dss_output_low_res/dss_scaling_data_2_processes*.jld2" - env: - TEST_NAME: "Hybrid3DcubedsphereDSS" - CLIMACOMMS_CONTEXT: "MPI" - NPROCS: 2 - agents: - slurm_nodes: 1 - slurm_ntasks: 2 - slurm_exclusive: - - - label: ":computer: Hybrid cubed sphere low-resolution DSS scaling - (4) processes" - command: - - "nsys profile --trace=nvtx,mpi --mpi-impl=mpich --output=examples/hybrid/dss_output_low_res/report_NP4.%q{NPROCS} mpiexec julia --color=yes --project=.buildkite examples/hybrid/hybrid3dcs_dss.jl low 4 Float64" - - "nsys profile --trace=nvtx,mpi --mpi-impl=mpich --output=examples/hybrid/dss_output_low_res/report_NP2.%q{NPROCS} mpiexec julia --color=yes --project=.buildkite examples/hybrid/hybrid3dcs_dss.jl low 2 Float64" - artifact_paths: - - "examples/hybrid/dss_output_low_res/report_NP*.4.*" - - "examples/hybrid/dss_output_low_res/dss_scaling_data_4_processes*.jld2" - env: - TEST_NAME: "Hybrid3DcubedsphereDSS" - CLIMACOMMS_CONTEXT: "MPI" - NPROCS: 4 - agents: - slurm_nodes: 1 - slurm_ntasks: 4 - slurm_exclusive: - - - label: ":computer: Hybrid cubed sphere low-resolution DSS scaling - (8) processes" - command: - - "nsys profile --trace=nvtx,mpi --mpi-impl=mpich --output=examples/hybrid/dss_output_low_res/report_NP4.%q{NPROCS} mpiexec julia --color=yes --project=.buildkite examples/hybrid/hybrid3dcs_dss.jl low 4 Float64" - - "nsys profile --trace=nvtx,mpi --mpi-impl=mpich --output=examples/hybrid/dss_output_low_res/report_NP2.%q{NPROCS} mpiexec julia --color=yes --project=.buildkite examples/hybrid/hybrid3dcs_dss.jl low 2 Float64" - artifact_paths: - - "examples/hybrid/dss_output_low_res/report_NP*.8.*" - - "examples/hybrid/dss_output_low_res/dss_scaling_data_8_processes*.jld2" - env: - TEST_NAME: "Hybrid3DcubedsphereDSS" - CLIMACOMMS_CONTEXT: "MPI" - NPROCS: 8 - agents: - slurm_nodes: 1 - slurm_ntasks: 8 - slurm_exclusive: - - - label: ":computer: Hybrid cubed sphere low-resolution DSS scaling - (16) processes" - command: - - "nsys profile --trace=nvtx,mpi --mpi-impl=mpich --output=examples/hybrid/dss_output_low_res/report_NP4.%q{NPROCS} mpiexec julia --color=yes --project=.buildkite examples/hybrid/hybrid3dcs_dss.jl low 4 Float64" - - "nsys profile --trace=nvtx,mpi --mpi-impl=mpich --output=examples/hybrid/dss_output_low_res/report_NP2.%q{NPROCS} mpiexec julia --color=yes --project=.buildkite examples/hybrid/hybrid3dcs_dss.jl low 2 Float64" - artifact_paths: - - "examples/hybrid/dss_output_low_res/report_NP*.16.*" - - "examples/hybrid/dss_output_low_res/dss_scaling_data_16_processes*.jld2" - env: - TEST_NAME: "Hybrid3DcubedsphereDSS" - CLIMACOMMS_CONTEXT: "MPI" - NPROCS: 16 - agents: - slurm_nodes: 1 - slurm_ntasks: 16 - slurm_exclusive: - - - label: ":computer: Hybrid cubed sphere low-resolution DSS scaling - (32) processes" - command: - - "nsys profile --trace=nvtx,mpi --mpi-impl=mpich --output=examples/hybrid/dss_output_low_res/report_NP4.%q{NPROCS} mpiexec julia --color=yes --project=.buildkite examples/hybrid/hybrid3dcs_dss.jl low 4 Float64" - - "nsys profile --trace=nvtx,mpi --mpi-impl=mpich --output=examples/hybrid/dss_output_low_res/report_NP2.%q{NPROCS} mpiexec julia --color=yes --project=.buildkite examples/hybrid/hybrid3dcs_dss.jl low 2 Float64" - artifact_paths: - - "examples/hybrid/dss_output_low_res/report_NP*.32.*" - - "examples/hybrid/dss_output_low_res/dss_scaling_data_32_processes*.jld2" - env: - TEST_NAME: "Hybrid3DcubedsphereDSS" - CLIMACOMMS_CONTEXT: "MPI" - NPROCS: 32 - agents: - slurm_nodes: 1 - slurm_ntasks: 32 - slurm_exclusive: - - - - wait - - group: "Hybrid cubed sphere low-resolution DSS scaling plots" - steps: - - - label: ":computer: DSS scaling plots for low resolution hybrid cubed sphere" - key: "cpu_dss_scaling_low_resolution_plots_3dcs" - command: - - "julia --color=yes --project=.buildkite examples/plot_dss_timing_results.jl hybrid3dcubedsphere low" - artifact_paths: - - "examples/hybrid/dss_output_low_res/*.png" - - "examples/hybrid/dss_output_low_res/*.pdf" - agents: - slurm_nodes: 1 - slurm_tasks_per_node: 1 - - - - wait - - group: "Hybrid cubed sphere high-resolution DSS scaling" - steps: - - - label: ":computer: Hybrid cubed sphere high-resolution DSS scaling - (1) processes" - command: - - "nsys profile --trace=nvtx,mpi --mpi-impl=mpich --output=examples/hybrid/dss_output_high_res/report_NP4.%q{NPROCS} mpiexec julia --color=yes --project=.buildkite examples/hybrid/hybrid3dcs_dss.jl high 4 Float64" - - "nsys profile --trace=nvtx,mpi --mpi-impl=mpich --output=examples/hybrid/dss_output_high_res/report_NP2.%q{NPROCS} mpiexec julia --color=yes --project=.buildkite examples/hybrid/hybrid3dcs_dss.jl high 2 Float64" - artifact_paths: - - "examples/hybrid/dss_output_high_res/report_NP*.1.*" - - "examples/hybrid/dss_output_high_res/dss_scaling_data_1_processes*.jld2" - env: - TEST_NAME: "Hybrid3DcubedsphereDSS" - CLIMACOMMS_CONTEXT: "MPI" - NPROCS: 1 - agents: - slurm_nodes: 1 - slurm_ntasks: 1 - slurm_time: 8:00:00 - slurm_exclusive: - - - label: ":computer: Hybrid cubed sphere high-resolution DSS scaling - (2) processes" - command: - - "nsys profile --trace=nvtx,mpi --mpi-impl=mpich --output=examples/hybrid/dss_output_high_res/report_NP4.%q{NPROCS} mpiexec julia --color=yes --project=.buildkite examples/hybrid/hybrid3dcs_dss.jl high 4 Float64" - - "nsys profile --trace=nvtx,mpi --mpi-impl=mpich --output=examples/hybrid/dss_output_high_res/report_NP2.%q{NPROCS} mpiexec julia --color=yes --project=.buildkite examples/hybrid/hybrid3dcs_dss.jl high 2 Float64" - artifact_paths: - - "examples/hybrid/dss_output_high_res/report_NP*.2.*" - - "examples/hybrid/dss_output_high_res/dss_scaling_data_2_processes*.jld2" - env: - TEST_NAME: "Hybrid3DcubedsphereDSS" - CLIMACOMMS_CONTEXT: "MPI" - NPROCS: 2 - agents: - slurm_nodes: 1 - slurm_ntasks: 2 - slurm_time: 8:00:00 - slurm_exclusive: - - - label: ":computer: Hybrid cubed sphere high-resolution DSS scaling - (4) processes" - command: - - "nsys profile --trace=nvtx,mpi --mpi-impl=mpich --output=examples/hybrid/dss_output_high_res/report_NP4.%q{NPROCS} mpiexec julia --color=yes --project=.buildkite examples/hybrid/hybrid3dcs_dss.jl high 4 Float64" - - "nsys profile --trace=nvtx,mpi --mpi-impl=mpich --output=examples/hybrid/dss_output_high_res/report_NP2.%q{NPROCS} mpiexec julia --color=yes --project=.buildkite examples/hybrid/hybrid3dcs_dss.jl high 2 Float64" - artifact_paths: - - "examples/hybrid/dss_output_high_res/report_NP*.4.*" - - "examples/hybrid/dss_output_high_res/dss_scaling_data_4_processes*.jld2" - env: - TEST_NAME: "Hybrid3DcubedsphereDSS" - CLIMACOMMS_CONTEXT: "MPI" - NPROCS: 4 - agents: - slurm_nodes: 1 - slurm_ntasks: 4 - slurm_time: 4:00:00 - slurm_exclusive: - - - label: ":computer: Hybrid cubed sphere high-resolution DSS scaling - (8) processes" - command: - - "nsys profile --trace=nvtx,mpi --mpi-impl=mpich --output=examples/hybrid/dss_output_high_res/report_NP4.%q{NPROCS} mpiexec julia --color=yes --project=.buildkite examples/hybrid/hybrid3dcs_dss.jl high 4 Float64" - - "nsys profile --trace=nvtx,mpi --mpi-impl=mpich --output=examples/hybrid/dss_output_high_res/report_NP2.%q{NPROCS} mpiexec julia --color=yes --project=.buildkite examples/hybrid/hybrid3dcs_dss.jl high 2 Float64" - artifact_paths: - - "examples/hybrid/dss_output_high_res/report_NP*.8.*" - - "examples/hybrid/dss_output_high_res/dss_scaling_data_8_processes*.jld2" - env: - TEST_NAME: "Hybrid3DcubedsphereDSS" - CLIMACOMMS_CONTEXT: "MPI" - NPROCS: 8 - agents: - slurm_nodes: 1 - slurm_ntasks: 8 - slurm_exclusive: - - - label: ":computer: Hybrid cubed sphere high-resolution DSS scaling - (16) processes" - command: - - "nsys profile --trace=nvtx,mpi --mpi-impl=mpich --output=examples/hybrid/dss_output_high_res/report_NP4.%q{NPROCS} mpiexec julia --color=yes --project=.buildkite examples/hybrid/hybrid3dcs_dss.jl high 4 Float64" - - "nsys profile --trace=nvtx,mpi --mpi-impl=mpich --output=examples/hybrid/dss_output_high_res/report_NP2.%q{NPROCS} mpiexec julia --color=yes --project=.buildkite examples/hybrid/hybrid3dcs_dss.jl high 2 Float64" - artifact_paths: - - "examples/hybrid/dss_output_high_res/report_NP*.16.*" - - "examples/hybrid/dss_output_high_res/dss_scaling_data_16_processes*.jld2" - env: - TEST_NAME: "Hybrid3DcubedsphereDSS" - CLIMACOMMS_CONTEXT: "MPI" - NPROCS: 16 - agents: - slurm_nodes: 1 - slurm_ntasks: 16 - slurm_exclusive: - - - label: ":computer: Hybrid cubed sphere high-resolution DSS scaling - (32) processes" - command: - - "nsys profile --trace=nvtx,mpi --mpi-impl=mpich --output=examples/hybrid/dss_output_high_res/report_NP4.%q{NPROCS} mpiexec julia --color=yes --project=.buildkite examples/hybrid/hybrid3dcs_dss.jl high 4 Float64" - - "nsys profile --trace=nvtx,mpi --mpi-impl=mpich --output=examples/hybrid/dss_output_high_res/report_NP2.%q{NPROCS} mpiexec julia --color=yes --project=.buildkite examples/hybrid/hybrid3dcs_dss.jl high 2 Float64" - artifact_paths: - - "examples/hybrid/dss_output_high_res/report_NP*.32.*" - - "examples/hybrid/dss_output_high_res/dss_scaling_data_32_processes*.jld2" - env: - TEST_NAME: "Hybrid3DcubedsphereDSS" - CLIMACOMMS_CONTEXT: "MPI" - NPROCS: 32 - agents: - slurm_nodes: 1 - slurm_ntasks: 32 - slurm_exclusive: - - - label: ":computer: Hybrid cubed sphere high-resolution DSS scaling - (64) processes" - command: - - "mpiexec julia --color=yes --project=.buildkite examples/hybrid/hybrid3dcs_dss.jl high 4 Float64" - - "mpiexec julia --color=yes --project=.buildkite examples/hybrid/hybrid3dcs_dss.jl high 2 Float64" - artifact_paths: - - "examples/hybrid/dss_output_high_res/dss_scaling_data_64_processes*.jld2" - env: - TEST_NAME: "Hybrid3DcubedsphereDSS" - CLIMACOMMS_CONTEXT: "MPI" - NPROCS: 64 - agents: - slurm_nodes: 2 - slurm_ntasks: 64 - slurm_exclusive: - - - label: ":computer: Hybrid cubed sphere high-resolution DSS scaling - (128) processes" - command: - - "mpiexec julia --color=yes --project=.buildkite examples/hybrid/hybrid3dcs_dss.jl high 4 Float64" - - "mpiexec julia --color=yes --project=.buildkite examples/hybrid/hybrid3dcs_dss.jl high 2 Float64" - artifact_paths: - - "examples/hybrid/dss_output_high_res/report.128.*" - - "examples/hybrid/dss_output_high_res/dss_scaling_data_128_processes*.jld2" - env: - TEST_NAME: "Hybrid3DcubedsphereDSS" - CLIMACOMMS_CONTEXT: "MPI" - NPROCS: 128 - agents: - slurm_nodes: 4 - slurm_ntasks: 128 - slurm_exclusive: - - - label: ":computer: Hybrid cubed sphere high-resolution DSS scaling - (256) processes" - command: - - "mpiexec julia --color=yes --project=.buildkite examples/hybrid/hybrid3dcs_dss.jl high 4 Float64" - - "mpiexec julia --color=yes --project=.buildkite examples/hybrid/hybrid3dcs_dss.jl high 2 Float64" - artifact_paths: - - "examples/hybrid/dss_output_high_res/report.256.*" - - "examples/hybrid/dss_output_high_res/dss_scaling_data_256_processes*.jld2" - env: - TEST_NAME: "Hybrid3DcubedsphereDSS" - CLIMACOMMS_CONTEXT: "MPI" - NPROCS: 256 - agents: - slurm_nodes: 8 - slurm_ntasks: 256 - slurm_exclusive: - - - wait - - group: "Hybrid cubed sphere high-resolution DSS scaling plots" - steps: - - - label: ":computer: DSS scaling plots for high resolution hybrid cubed sphere" - key: "cpu_dss_scaling_high_resolution_plots_3dcs" - command: - - "julia --color=yes --project=.buildkite examples/plot_dss_timing_results.jl hybrid3dcubedsphere high" - artifact_paths: - - "examples/hybrid/dss_output_high_res/*.png" - - "examples/hybrid/dss_output_high_res/*.pdf" - agents: - slurm_nodes: 1 - slurm_tasks_per_node: 1 diff --git a/.buildkite/scaling/README.md b/.buildkite/scaling/README.md deleted file mode 100644 index a9fd039503..0000000000 --- a/.buildkite/scaling/README.md +++ /dev/null @@ -1,9 +0,0 @@ -# Instructions to trigger scaling build - -1). Got to url: https://buildkite.com/clima/climacore-scaling -2). Click on "New Build" -3). Set branch to the PR branch -4). Click on "Create Build" - -It is recommended to run the scaling build before merging a PR -to understand the performance implications of merging the PR. diff --git a/.buildkite/scaling/pipeline.yml b/.buildkite/scaling/pipeline.yml deleted file mode 100644 index 5753fd6da8..0000000000 --- a/.buildkite/scaling/pipeline.yml +++ /dev/null @@ -1,150 +0,0 @@ -env: - JULIA_VERSION: "1.10.0" - MPICH_VERSION: "4.0.0" - OPENMPI_VERSION: "4.1.1" - CUDA_VERSION: "11.2" - OPENBLAS_NUM_THREADS: 1 - -steps: - - label: "init :computer:" - key: "init_cpu_env" - command: - - echo "--- Configure MPI" - - julia -e 'using Pkg; Pkg.add("MPIPreferences"); using MPIPreferences; use_system_binary()' - - - echo "--- Instantiate scaling test" - - "julia --project=.buildkite -e 'using Pkg; Pkg.instantiate(;verbose=true)'" - - "julia --project=.buildkite -e 'using Pkg; Pkg.precompile(;strict=true)'" - - - echo "--- Instantiate status" - - "julia --project -e 'using Pkg; Pkg.status()'" - agents: - config: cpu - queue: central - slurm_ntasks: 1 - slurm_cpus_per_task: 8 - env: - JULIA_NUM_PRECOMPILE_TASKS: 8 - - - wait - - - label: ":computer: MPI Held-Suarez scaling test(ρθ) - (1) processes" - key: "cpu_mpi_held_suarez_scaling_test_rhotheta_1p" - command: - - "mpiexec julia --color=yes --project=.buildkite examples/hybrid/driver.jl" - artifact_paths: - - "examples/hybrid/sphere/output/held_suarez_rhotheta_scaling/Float32/scaling_data_1_processes.jld2" - env: - TEST_NAME: "sphere/held_suarez_rhotheta_scaling" - CLIMACOMMS_CONTEXT: "MPI" - agents: - config: cpu - queue: central - slurm_nodes: 1 - slurm_tasks_per_node: 1 - - - label: ":computer: MPI Held-Suarez scaling test(ρθ) - (2) processes" - key: "cpu_mpi_held_suarez_scaling_test_rhotheta_2p" - command: - - "mpiexec julia --color=yes --project=.buildkite examples/hybrid/driver.jl" - artifact_paths: - - "examples/hybrid/sphere/output/held_suarez_rhotheta_scaling/Float32/scaling_data_2_processes.jld2" - env: - TEST_NAME: "sphere/held_suarez_rhotheta_scaling" - CLIMACOMMS_CONTEXT: "MPI" - agents: - config: cpu - queue: central - slurm_nodes: 1 - slurm_tasks_per_node: 2 - - - label: ":computer: MPI Held-Suarez scaling test(ρθ) - (4) processes" - key: "cpu_mpi_held_suarez_scaling_test_rhotheta_4p" - command: - - "mpiexec julia --color=yes --project=.buildkite examples/hybrid/driver.jl" - artifact_paths: - - "examples/hybrid/sphere/output/held_suarez_rhotheta_scaling/Float32/scaling_data_4_processes.jld2" - env: - TEST_NAME: "sphere/held_suarez_rhotheta_scaling" - CLIMACOMMS_CONTEXT: "MPI" - agents: - config: cpu - queue: central - slurm_nodes: 1 - slurm_tasks_per_node: 4 - - - label: ":computer: MPI Held-Suarez scaling test(ρθ) - (8) processes" - key: "cpu_mpi_held_suarez_scaling_test_rhotheta_8p" - command: - - "mpiexec julia --color=yes --project=.buildkite examples/hybrid/driver.jl" - artifact_paths: - - "examples/hybrid/sphere/output/held_suarez_rhotheta_scaling/Float32/scaling_data_8_processes.jld2" - env: - TEST_NAME: "sphere/held_suarez_rhotheta_scaling" - CLIMACOMMS_CONTEXT: "MPI" - agents: - config: cpu - queue: central - slurm_nodes: 1 - slurm_tasks_per_node: 8 - - - label: ":computer: MPI Held-Suarez scaling test(ρθ) - (16) processes" - key: "cpu_mpi_held_suarez_scaling_test_rhotheta_16p" - command: - - "mpiexec julia --color=yes --project=.buildkite examples/hybrid/driver.jl" - artifact_paths: - - "examples/hybrid/sphere/output/held_suarez_rhotheta_scaling/Float32/scaling_data_16_processes.jld2" - env: - TEST_NAME: "sphere/held_suarez_rhotheta_scaling" - CLIMACOMMS_CONTEXT: "MPI" - agents: - config: cpu - queue: central - slurm_nodes: 1 - slurm_tasks_per_node: 16 - - - label: ":computer: MPI Held-Suarez scaling test(ρθ) - (32) processes" - key: "cpu_mpi_held_suarez_scaling_test_rhotheta_32p" - command: - - "mpiexec julia --color=yes --project=.buildkite examples/hybrid/driver.jl" - artifact_paths: - - "examples/hybrid/sphere/output/held_suarez_rhotheta_scaling/Float32/scaling_data_32_processes.jld2" - env: - TEST_NAME: "sphere/held_suarez_rhotheta_scaling" - CLIMACOMMS_CONTEXT: "MPI" - agents: - config: cpu - queue: central - slurm_nodes: 1 - slurm_tasks_per_node: 32 - - - label: ":computer: MPI Held-Suarez scaling test(ρθ) - (64) processes" - key: "cpu_mpi_held_suarez_scaling_test_rhotheta_64p" - command: - - "mpiexec julia --color=yes --project=.buildkite examples/hybrid/driver.jl" - artifact_paths: - - "examples/hybrid/sphere/output/held_suarez_rhotheta_scaling/Float32/scaling_data_64_processes.jld2" - env: - TEST_NAME: "sphere/held_suarez_rhotheta_scaling" - CLIMACOMMS_CONTEXT: "MPI" - agents: - config: cpu - queue: central - slurm_nodes: 2 - slurm_tasks_per_node: 32 - - - wait - - - label: ":computer: scaling plots" - key: "cpu_scaling_plots" - command: - - "julia --color=yes --project=.buildkite examples/hybrid/plot_scaling_results.jl" - artifact_paths: - - "examples/hybrid/sphere/output/held_suarez_rhotheta_scaling/Float32/*.png" - env: - TEST_NAME: "sphere/held_suarez_rhotheta_scaling" - agents: - config: cpu - queue: central - slurm_nodes: 1 - slurm_tasks_per_node: 1