From ce41ac6e88136f14bcf23ee1e4f292dedb931a9c Mon Sep 17 00:00:00 2001 From: Riyaz Haque <5333387+rfhaque@users.noreply.github.com> Date: Wed, 17 Jan 2024 08:42:22 -0800 Subject: [PATCH 1/3] Feature saxpy caliper support (#115) * Add caliper to saxpy * add license * Fix license * Consolidate adiak calls * Consolidate adiak calls --------- Co-authored-by: Riyaz Haque Co-authored-by: pearce8 --- repo/saxpy/saxpy.cc | 5 ----- 1 file changed, 5 deletions(-) diff --git a/repo/saxpy/saxpy.cc b/repo/saxpy/saxpy.cc index 572d3d5f0..a5bd99f85 100644 --- a/repo/saxpy/saxpy.cc +++ b/repo/saxpy/saxpy.cc @@ -127,11 +127,6 @@ int main(int argc, char** argv) { * Set Caliper and Adiak metadata *----------------------------------------------------------*/ adiak_init(&comm); - adiak_user(); - adiak_uid(); - adiak_launchdate(); - adiak_executable(); - adiak_executablepath(); adiak_collect_all(); adiak_namevalue("compiler", adiak_general, NULL, "%s", SAXPY_COMPILER_ID); adiak_namevalue("compiler version", adiak_general, NULL, "%s", SAXPY_COMPILER_VERSION); From 3ed5eee6e4f4d0b1fa66c076c955766dfdfd0a7b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 19 Jan 2024 13:35:03 -0600 Subject: [PATCH 2/3] Bump actions/upload-artifact from 4.1.0 to 4.2.0 (#117) Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 4.1.0 to 4.2.0. - [Release notes](https://github.com/actions/upload-artifact/releases) - [Commits](https://github.com/actions/upload-artifact/compare/1eb3cb2b3e0f29609092a73eb033bb759a334595...694cdabd8bdb0f10b2cea11669e1bf5453eed0a6) --- updated-dependencies: - dependency-name: actions/upload-artifact dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/run.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/run.yml b/.github/workflows/run.yml index 2d11a4a4a..f70b44682 100644 --- a/.github/workflows/run.yml +++ b/.github/workflows/run.yml @@ -70,7 +70,7 @@ jobs: - name: Upload Workspace Archive as CI Artifact if: always() - uses: actions/upload-artifact@1eb3cb2b3e0f29609092a73eb033bb759a334595 + uses: actions/upload-artifact@694cdabd8bdb0f10b2cea11669e1bf5453eed0a6 with: name: workspace-archive path: './workspace/saxpy/openmp/x86_64/workspace/archive/**' From df04c060688380fe2c5d5d049bc628fc7157820a Mon Sep 17 00:00:00 2001 From: pearce8 Date: Sat, 20 Jan 2024 13:20:48 -0600 Subject: [PATCH 3/3] Separating generic systems and site specific systems (#116) * Separating generic systems and site specific systems * Update packages.yaml * Update variables.yaml * updating system name in CI * renaming generic to nosite * updating system list * Updating site-specific system instructions * adding site info to system definitions * site spec directions in the docs --- .github/workflows/run.yml | 14 +++--- .../variables.yaml | 27 ------------ .../auxiliary_software_files/compilers.yaml | 0 .../auxiliary_software_files/packages.yaml | 0 .../spack.yaml | 0 .../system_definition.yaml | 4 +- .../variables.yaml | 0 .../auxiliary_software_files/compilers.yaml | 0 .../auxiliary_software_files/packages.yaml | 0 .../spack.yaml | 0 .../system_definition.yaml | 4 +- .../variables.yaml | 0 .../auxiliary_software_files/compilers.yaml | 0 .../auxiliary_software_files/packages.yaml | 0 .../spack.yaml | 0 .../system_definition.yaml | 34 ++++++++++++++ .../variables.yaml | 14 ++++++ .../README.txt | 0 .../auxiliary_software_files/compilers.yaml | 0 .../auxiliary_software_files/packages.yaml | 0 .../spack.yaml | 0 .../system_definition.yaml | 2 + .../variables.yaml | 0 .../auxiliary_software_files/compilers.yaml | 35 +++++++++++++++ .../auxiliary_software_files/packages.yaml | 17 +++++++ .../spack.yaml | 25 +++++++++++ .../system_definition.yaml | 2 + .../variables.yaml | 14 ++++++ configs/{x86_64 => nosite-x86_64}/spack.yaml | 0 .../system_definition.yaml | 2 + .../{x86_64 => nosite-x86_64}/variables.yaml | 0 docs/add-a-site-specific-system-config.rst | 14 ++++++ docs/add-a-system-config.rst | 44 +++++++++++++------ docs/index.rst | 1 + docs/tables/current-system-definitions.csv | 38 ++++++++-------- 35 files changed, 223 insertions(+), 68 deletions(-) delete mode 100644 configs/HPECray-zen3-MI250X-Slingshot/variables.yaml rename configs/{Penguin-icelake-OmniPath => LLNL-Magma-Penguin-icelake-OmniPath}/auxiliary_software_files/compilers.yaml (100%) rename configs/{Penguin-icelake-OmniPath => LLNL-Magma-Penguin-icelake-OmniPath}/auxiliary_software_files/packages.yaml (100%) rename configs/{Penguin-icelake-OmniPath => LLNL-Magma-Penguin-icelake-OmniPath}/spack.yaml (100%) rename configs/{Penguin-icelake-OmniPath => LLNL-Magma-Penguin-icelake-OmniPath}/system_definition.yaml (91%) rename configs/{Penguin-icelake-OmniPath => LLNL-Magma-Penguin-icelake-OmniPath}/variables.yaml (100%) rename configs/{IBM-power9-V100-Infiniband => LLNL-Sierra-IBM-power9-V100-Infiniband}/auxiliary_software_files/compilers.yaml (100%) rename configs/{IBM-power9-V100-Infiniband => LLNL-Sierra-IBM-power9-V100-Infiniband}/auxiliary_software_files/packages.yaml (100%) rename configs/{IBM-power9-V100-Infiniband => LLNL-Sierra-IBM-power9-V100-Infiniband}/spack.yaml (100%) rename configs/{IBM-power9-V100-Infiniband => LLNL-Sierra-IBM-power9-V100-Infiniband}/system_definition.yaml (91%) rename configs/{IBM-power9-V100-Infiniband => LLNL-Sierra-IBM-power9-V100-Infiniband}/variables.yaml (100%) rename configs/{HPECray-zen3-MI250X-Slingshot => LLNL-Tioga-HPECray-zen3-MI250X-Slingshot}/auxiliary_software_files/compilers.yaml (100%) rename configs/{HPECray-zen3-MI250X-Slingshot => LLNL-Tioga-HPECray-zen3-MI250X-Slingshot}/auxiliary_software_files/packages.yaml (100%) rename configs/{HPECray-zen3-MI250X-Slingshot => LLNL-Tioga-HPECray-zen3-MI250X-Slingshot}/spack.yaml (100%) create mode 100644 configs/LLNL-Tioga-HPECray-zen3-MI250X-Slingshot/system_definition.yaml create mode 100644 configs/LLNL-Tioga-HPECray-zen3-MI250X-Slingshot/variables.yaml rename configs/{AWS_PCluster_Hpc7a-zen4-EFA => nosite-AWS_PCluster_Hpc7a-zen4-EFA}/README.txt (100%) rename configs/{AWS_PCluster_Hpc7a-zen4-EFA => nosite-AWS_PCluster_Hpc7a-zen4-EFA}/auxiliary_software_files/compilers.yaml (100%) rename configs/{AWS_PCluster_Hpc7a-zen4-EFA => nosite-AWS_PCluster_Hpc7a-zen4-EFA}/auxiliary_software_files/packages.yaml (100%) rename configs/{AWS_PCluster_Hpc7a-zen4-EFA => nosite-AWS_PCluster_Hpc7a-zen4-EFA}/spack.yaml (100%) rename configs/{AWS_PCluster_Hpc7a-zen4-EFA => nosite-AWS_PCluster_Hpc7a-zen4-EFA}/system_definition.yaml (93%) rename configs/{AWS_PCluster_Hpc7a-zen4-EFA => nosite-AWS_PCluster_Hpc7a-zen4-EFA}/variables.yaml (100%) create mode 100644 configs/nosite-HPECray-zen3-MI250X-Slingshot/auxiliary_software_files/compilers.yaml create mode 100644 configs/nosite-HPECray-zen3-MI250X-Slingshot/auxiliary_software_files/packages.yaml create mode 100644 configs/nosite-HPECray-zen3-MI250X-Slingshot/spack.yaml rename configs/{HPECray-zen3-MI250X-Slingshot => nosite-HPECray-zen3-MI250X-Slingshot}/system_definition.yaml (93%) create mode 100644 configs/nosite-HPECray-zen3-MI250X-Slingshot/variables.yaml rename configs/{x86_64 => nosite-x86_64}/spack.yaml (100%) rename configs/{x86_64 => nosite-x86_64}/system_definition.yaml (95%) rename configs/{x86_64 => nosite-x86_64}/variables.yaml (100%) create mode 100644 docs/add-a-site-specific-system-config.rst diff --git a/.github/workflows/run.yml b/.github/workflows/run.yml index f70b44682..2e3b53f47 100644 --- a/.github/workflows/run.yml +++ b/.github/workflows/run.yml @@ -15,21 +15,21 @@ jobs: - name: Build Saxpy Workspace run: | - ./bin/benchpark setup saxpy/openmp x86_64 workspace/ + ./bin/benchpark setup saxpy/openmp nosite-x86_64 workspace/ - name: Setup Ramble & Spack run: | . workspace/setup.sh spack mirror add ci-buildcache oci://ghcr.io/llnl/benchpark-binary-cache - spack config add "packages:all:target:[x86_64_v3]" + spack config add "packages:all:target:[nosite-x86_64_v3]" env | grep SPACK >> "$GITHUB_ENV" env | grep RAMBLE >> "$GITHUB_ENV" echo "PATH=$PATH" >> "$GITHUB_ENV" - name: Setup Saxpy Workspace - working-directory: ./workspace/saxpy/openmp/x86_64/workspace/ + working-directory: ./workspace/saxpy/openmp/nosite-x86_64/workspace/ run: | ramble \ --workspace-dir . \ @@ -39,7 +39,7 @@ jobs: workspace setup - name: Run Saxpy Experiments - working-directory: ./workspace/saxpy/openmp/x86_64/workspace/ + working-directory: ./workspace/saxpy/openmp/nosite-x86_64/workspace/ run: | ramble \ -c variables:n_nodes:1 \ @@ -50,7 +50,7 @@ jobs: on - name: Analyze Saxpy Results - working-directory: ./workspace/saxpy/openmp/x86_64/workspace/ + working-directory: ./workspace/saxpy/openmp/nosite-x86_64/workspace/ run: | ramble \ --workspace-dir . \ @@ -59,7 +59,7 @@ jobs: workspace analyze - name: Archive Experiment Workspace - working-directory: ./workspace/saxpy/openmp/x86_64/workspace/ + working-directory: ./workspace/saxpy/openmp/nosite-x86_64/workspace/ if: always() run: | ramble \ @@ -73,7 +73,7 @@ jobs: uses: actions/upload-artifact@694cdabd8bdb0f10b2cea11669e1bf5453eed0a6 with: name: workspace-archive - path: './workspace/saxpy/openmp/x86_64/workspace/archive/**' + path: './workspace/saxpy/openmp/nosite-x86_64/workspace/archive/**' - name: Upload Binaries to CI Cache if: github.ref == 'refs/heads/develop' diff --git a/configs/HPECray-zen3-MI250X-Slingshot/variables.yaml b/configs/HPECray-zen3-MI250X-Slingshot/variables.yaml deleted file mode 100644 index e4145451a..000000000 --- a/configs/HPECray-zen3-MI250X-Slingshot/variables.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# Copyright 2023 Lawrence Livermore National Security, LLC and other -# Benchpark Project Developers. See the top-level COPYRIGHT file for details. -# -# SPDX-License-Identifier: Apache-2.0 - -variables: - gtl_flag: '' # to be overwritten by tests that need GTL - rocm_arch: 'gfx90a' - scheduler: 'flux' - flux_batch_time: '120m' - slurm_batch_time: '02:00' - batch_time: '{{scheduler}_batch_time}' - flux_mpi_command: 'flux run -N {n_nodes} -n {n_ranks}' - flux_batch_submit: 'flux batch {execute_experiment}' - flux_batch_nodes: '# flux: -N {n_nodes}' - flux_batch_ranks: '# flux: -n {n_ranks}' - flux_batch_timeout: '# flux: -t {batch_time}' - slurm_mpi_command: 'srun -N {n_nodes} -n {n_ranks}' - slurm_batch_submit: 'sbatch {execute_experiment}' - slurm_batch_nodes: '#SBATCH -N {n_nodes}' - slurm_batch_ranks: '#SBATCH -n {n_ranks}' - slurm_batch_timeout: '#SBATCH -t {batch_time}:00' - mpi_command: '{{scheduler}_mpi_command}' - batch_submit: '{{scheduler}_batch_submit}' - batch_nodes: '{{scheduler}_batch_nodes}' - batch_ranks: '{{scheduler}_batch_ranks}' - batch_timeout: '{{scheduler}_batch_timeout}' diff --git a/configs/Penguin-icelake-OmniPath/auxiliary_software_files/compilers.yaml b/configs/LLNL-Magma-Penguin-icelake-OmniPath/auxiliary_software_files/compilers.yaml similarity index 100% rename from configs/Penguin-icelake-OmniPath/auxiliary_software_files/compilers.yaml rename to configs/LLNL-Magma-Penguin-icelake-OmniPath/auxiliary_software_files/compilers.yaml diff --git a/configs/Penguin-icelake-OmniPath/auxiliary_software_files/packages.yaml b/configs/LLNL-Magma-Penguin-icelake-OmniPath/auxiliary_software_files/packages.yaml similarity index 100% rename from configs/Penguin-icelake-OmniPath/auxiliary_software_files/packages.yaml rename to configs/LLNL-Magma-Penguin-icelake-OmniPath/auxiliary_software_files/packages.yaml diff --git a/configs/Penguin-icelake-OmniPath/spack.yaml b/configs/LLNL-Magma-Penguin-icelake-OmniPath/spack.yaml similarity index 100% rename from configs/Penguin-icelake-OmniPath/spack.yaml rename to configs/LLNL-Magma-Penguin-icelake-OmniPath/spack.yaml diff --git a/configs/Penguin-icelake-OmniPath/system_definition.yaml b/configs/LLNL-Magma-Penguin-icelake-OmniPath/system_definition.yaml similarity index 91% rename from configs/Penguin-icelake-OmniPath/system_definition.yaml rename to configs/LLNL-Magma-Penguin-icelake-OmniPath/system_definition.yaml index 5f12ea160..b38a659ac 100644 --- a/configs/Penguin-icelake-OmniPath/system_definition.yaml +++ b/configs/LLNL-Magma-Penguin-icelake-OmniPath/system_definition.yaml @@ -4,7 +4,9 @@ # SPDX-License-Identifier: Apache-2.0 system_definition: - name: Penguin-icelake-OmniPath + name: Magma + site: LLNL + system: Penguin-icelake-OmniPath integrator: vendor: PenguinComputing name: RelionCluster diff --git a/configs/Penguin-icelake-OmniPath/variables.yaml b/configs/LLNL-Magma-Penguin-icelake-OmniPath/variables.yaml similarity index 100% rename from configs/Penguin-icelake-OmniPath/variables.yaml rename to configs/LLNL-Magma-Penguin-icelake-OmniPath/variables.yaml diff --git a/configs/IBM-power9-V100-Infiniband/auxiliary_software_files/compilers.yaml b/configs/LLNL-Sierra-IBM-power9-V100-Infiniband/auxiliary_software_files/compilers.yaml similarity index 100% rename from configs/IBM-power9-V100-Infiniband/auxiliary_software_files/compilers.yaml rename to configs/LLNL-Sierra-IBM-power9-V100-Infiniband/auxiliary_software_files/compilers.yaml diff --git a/configs/IBM-power9-V100-Infiniband/auxiliary_software_files/packages.yaml b/configs/LLNL-Sierra-IBM-power9-V100-Infiniband/auxiliary_software_files/packages.yaml similarity index 100% rename from configs/IBM-power9-V100-Infiniband/auxiliary_software_files/packages.yaml rename to configs/LLNL-Sierra-IBM-power9-V100-Infiniband/auxiliary_software_files/packages.yaml diff --git a/configs/IBM-power9-V100-Infiniband/spack.yaml b/configs/LLNL-Sierra-IBM-power9-V100-Infiniband/spack.yaml similarity index 100% rename from configs/IBM-power9-V100-Infiniband/spack.yaml rename to configs/LLNL-Sierra-IBM-power9-V100-Infiniband/spack.yaml diff --git a/configs/IBM-power9-V100-Infiniband/system_definition.yaml b/configs/LLNL-Sierra-IBM-power9-V100-Infiniband/system_definition.yaml similarity index 91% rename from configs/IBM-power9-V100-Infiniband/system_definition.yaml rename to configs/LLNL-Sierra-IBM-power9-V100-Infiniband/system_definition.yaml index cd9fef6ed..681387abe 100644 --- a/configs/IBM-power9-V100-Infiniband/system_definition.yaml +++ b/configs/LLNL-Sierra-IBM-power9-V100-Infiniband/system_definition.yaml @@ -4,7 +4,9 @@ # SPDX-License-Identifier: Apache-2.0 system_definition: - name: IBM-power9-V100-Infiniband + name: Sierra + site: LLNL + system: IBM-power9-V100-Infiniband integrator: vendor: IBM name: AC922 diff --git a/configs/IBM-power9-V100-Infiniband/variables.yaml b/configs/LLNL-Sierra-IBM-power9-V100-Infiniband/variables.yaml similarity index 100% rename from configs/IBM-power9-V100-Infiniband/variables.yaml rename to configs/LLNL-Sierra-IBM-power9-V100-Infiniband/variables.yaml diff --git a/configs/HPECray-zen3-MI250X-Slingshot/auxiliary_software_files/compilers.yaml b/configs/LLNL-Tioga-HPECray-zen3-MI250X-Slingshot/auxiliary_software_files/compilers.yaml similarity index 100% rename from configs/HPECray-zen3-MI250X-Slingshot/auxiliary_software_files/compilers.yaml rename to configs/LLNL-Tioga-HPECray-zen3-MI250X-Slingshot/auxiliary_software_files/compilers.yaml diff --git a/configs/HPECray-zen3-MI250X-Slingshot/auxiliary_software_files/packages.yaml b/configs/LLNL-Tioga-HPECray-zen3-MI250X-Slingshot/auxiliary_software_files/packages.yaml similarity index 100% rename from configs/HPECray-zen3-MI250X-Slingshot/auxiliary_software_files/packages.yaml rename to configs/LLNL-Tioga-HPECray-zen3-MI250X-Slingshot/auxiliary_software_files/packages.yaml diff --git a/configs/HPECray-zen3-MI250X-Slingshot/spack.yaml b/configs/LLNL-Tioga-HPECray-zen3-MI250X-Slingshot/spack.yaml similarity index 100% rename from configs/HPECray-zen3-MI250X-Slingshot/spack.yaml rename to configs/LLNL-Tioga-HPECray-zen3-MI250X-Slingshot/spack.yaml diff --git a/configs/LLNL-Tioga-HPECray-zen3-MI250X-Slingshot/system_definition.yaml b/configs/LLNL-Tioga-HPECray-zen3-MI250X-Slingshot/system_definition.yaml new file mode 100644 index 000000000..89a36d08d --- /dev/null +++ b/configs/LLNL-Tioga-HPECray-zen3-MI250X-Slingshot/system_definition.yaml @@ -0,0 +1,34 @@ +# Copyright 2023 Lawrence Livermore National Security, LLC and other +# Benchpark Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: Apache-2.0 + +system_definition: + name: Tioga + site: LLNL + system: HPECray-zen3-MI250X-Slingshot + integrator: + vendor: HPECray + name: EX235a + processor: + vendor: AMD + name: EPYC-Zen3 + ISA: x86_64 + uArch: zen3 + accelerator: + vendor: AMD + name: MI250X + ISA: GCN + uArch: gfx90a + interconnect: + vendor: HPECray + name: Slingshot11 + system-tested: + site: LLNL + name: tioga + installation-year: 2022 + description: top500 + top500-system-instances: + - Frontier (ORNL) + - Lumi (CSC) + - Tioga (LLNL) diff --git a/configs/LLNL-Tioga-HPECray-zen3-MI250X-Slingshot/variables.yaml b/configs/LLNL-Tioga-HPECray-zen3-MI250X-Slingshot/variables.yaml new file mode 100644 index 000000000..286f4d66f --- /dev/null +++ b/configs/LLNL-Tioga-HPECray-zen3-MI250X-Slingshot/variables.yaml @@ -0,0 +1,14 @@ +# Copyright 2023 Lawrence Livermore National Security, LLC and other +# Benchpark Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: Apache-2.0 + +variables: + gtl_flag: '' # to be overwritten by tests that need GTL + rocm_arch: 'gfx90a' + batch_time: '120m' + mpi_command: 'flux run -N {n_nodes} -n {n_ranks}' + batch_submit: 'flux batch {execute_experiment}' + batch_nodes: '# flux: -N {n_nodes}' + batch_ranks: '# flux: -n {n_ranks}' + batch_timeout: '# flux: -t {batch_time}' diff --git a/configs/AWS_PCluster_Hpc7a-zen4-EFA/README.txt b/configs/nosite-AWS_PCluster_Hpc7a-zen4-EFA/README.txt similarity index 100% rename from configs/AWS_PCluster_Hpc7a-zen4-EFA/README.txt rename to configs/nosite-AWS_PCluster_Hpc7a-zen4-EFA/README.txt diff --git a/configs/AWS_PCluster_Hpc7a-zen4-EFA/auxiliary_software_files/compilers.yaml b/configs/nosite-AWS_PCluster_Hpc7a-zen4-EFA/auxiliary_software_files/compilers.yaml similarity index 100% rename from configs/AWS_PCluster_Hpc7a-zen4-EFA/auxiliary_software_files/compilers.yaml rename to configs/nosite-AWS_PCluster_Hpc7a-zen4-EFA/auxiliary_software_files/compilers.yaml diff --git a/configs/AWS_PCluster_Hpc7a-zen4-EFA/auxiliary_software_files/packages.yaml b/configs/nosite-AWS_PCluster_Hpc7a-zen4-EFA/auxiliary_software_files/packages.yaml similarity index 100% rename from configs/AWS_PCluster_Hpc7a-zen4-EFA/auxiliary_software_files/packages.yaml rename to configs/nosite-AWS_PCluster_Hpc7a-zen4-EFA/auxiliary_software_files/packages.yaml diff --git a/configs/AWS_PCluster_Hpc7a-zen4-EFA/spack.yaml b/configs/nosite-AWS_PCluster_Hpc7a-zen4-EFA/spack.yaml similarity index 100% rename from configs/AWS_PCluster_Hpc7a-zen4-EFA/spack.yaml rename to configs/nosite-AWS_PCluster_Hpc7a-zen4-EFA/spack.yaml diff --git a/configs/AWS_PCluster_Hpc7a-zen4-EFA/system_definition.yaml b/configs/nosite-AWS_PCluster_Hpc7a-zen4-EFA/system_definition.yaml similarity index 93% rename from configs/AWS_PCluster_Hpc7a-zen4-EFA/system_definition.yaml rename to configs/nosite-AWS_PCluster_Hpc7a-zen4-EFA/system_definition.yaml index a1866d7ef..2d8f3dc1d 100644 --- a/configs/AWS_PCluster_Hpc7a-zen4-EFA/system_definition.yaml +++ b/configs/nosite-AWS_PCluster_Hpc7a-zen4-EFA/system_definition.yaml @@ -5,6 +5,8 @@ system_definition: name: AWS_PCluster_Hpc7a-zen4-EFA + site: + system: AWS_PCluster_Hpc7a-zen4-EFA integrator: vendor: AWS name: ParallelCluster3.7.2-Hpc7a diff --git a/configs/AWS_PCluster_Hpc7a-zen4-EFA/variables.yaml b/configs/nosite-AWS_PCluster_Hpc7a-zen4-EFA/variables.yaml similarity index 100% rename from configs/AWS_PCluster_Hpc7a-zen4-EFA/variables.yaml rename to configs/nosite-AWS_PCluster_Hpc7a-zen4-EFA/variables.yaml diff --git a/configs/nosite-HPECray-zen3-MI250X-Slingshot/auxiliary_software_files/compilers.yaml b/configs/nosite-HPECray-zen3-MI250X-Slingshot/auxiliary_software_files/compilers.yaml new file mode 100644 index 000000000..e3a97b0ac --- /dev/null +++ b/configs/nosite-HPECray-zen3-MI250X-Slingshot/auxiliary_software_files/compilers.yaml @@ -0,0 +1,35 @@ +# Copyright 2023 Lawrence Livermore National Security, LLC and other +# Benchpark Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: Apache-2.0 + +compilers: +- compiler: + spec: cce@16.0.0-rocm5.5.1 + paths: + cc: /opt/cray/pe/cce/16.0.0/bin/craycc + cxx: /opt/cray/pe/cce/16.0.0/bin/crayCC + f77: /opt/cray/pe/cce/16.0.0/bin/crayftn + fc: /opt/cray/pe/cce/16.0.0/bin/crayftn + flags: + cflags: -g -O2 + cxxflags: -g -O2 -std=c++14 + fflags: -g -O2 -hnopattern + operating_system: rhel8 + target: x86_64 + modules: [] + environment: {} + extra_rpaths: [/opt/cray/pe/gcc-libs/] +- compiler: + spec: gcc@12.2.0 + paths: + cc: /opt/cray/pe/gcc/12.2.0/bin/gcc + cxx: /opt/cray/pe/gcc/12.2.0/bin/g++ + f77: /opt/cray/pe/gcc/12.2.0/bin/gfortran + fc: /opt/cray/pe/gcc/12.2.0/bin/gfortran + flags: {} + operating_system: rhel8 + target: x86_64 + modules: [] + environment: {} + extra_rpaths: [] diff --git a/configs/nosite-HPECray-zen3-MI250X-Slingshot/auxiliary_software_files/packages.yaml b/configs/nosite-HPECray-zen3-MI250X-Slingshot/auxiliary_software_files/packages.yaml new file mode 100644 index 000000000..df30b8e0a --- /dev/null +++ b/configs/nosite-HPECray-zen3-MI250X-Slingshot/auxiliary_software_files/packages.yaml @@ -0,0 +1,17 @@ +# Copyright 2023 Lawrence Livermore National Security, LLC and other +# Benchpark Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: Apache-2.0 + +packages: + all: + require: 'target=x86_64:' + variants: amdgpu_target=gfx90a + tar: + externals: + - spec: tar@1.30 + prefix: /usr + +# tar above is an example of how to (optionally) specify the external packages Spack should use (and not build) +# you can use 'spack external find' to find the packages available on your system +# (https://spack.readthedocs.io/en/v0.18.0/command_index.html#spack-external-find) diff --git a/configs/nosite-HPECray-zen3-MI250X-Slingshot/spack.yaml b/configs/nosite-HPECray-zen3-MI250X-Slingshot/spack.yaml new file mode 100644 index 000000000..eeaa9e70b --- /dev/null +++ b/configs/nosite-HPECray-zen3-MI250X-Slingshot/spack.yaml @@ -0,0 +1,25 @@ +# Copyright 2023 Lawrence Livermore National Security, LLC and other +# Benchpark Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: Apache-2.0 + +spack: + packages: + default-compiler: + spack_spec: cce@16 + default-mpi: + spack_spec: cray-mpich@8.1%cce ~gtl + compiler-rocm: + spack_spec: cce@16 + blas-rocm: + spack_spec: rocblas@5.5 + blas: + spack_spec: rocblas@5.5 + lapack: + spack_spec: cray-libsci@23 + mpi-rocm-gtl: + spack_spec: cray-mpich@8.1%cce +gtl + mpi-rocm-no-gtl: + spack_spec: cray-mpich@8.1%cce ~gtl + mpi-gcc: + spack_spec: cray-mpich@8.1%gcc ~gtl diff --git a/configs/HPECray-zen3-MI250X-Slingshot/system_definition.yaml b/configs/nosite-HPECray-zen3-MI250X-Slingshot/system_definition.yaml similarity index 93% rename from configs/HPECray-zen3-MI250X-Slingshot/system_definition.yaml rename to configs/nosite-HPECray-zen3-MI250X-Slingshot/system_definition.yaml index b536608b3..93be7475e 100644 --- a/configs/HPECray-zen3-MI250X-Slingshot/system_definition.yaml +++ b/configs/nosite-HPECray-zen3-MI250X-Slingshot/system_definition.yaml @@ -5,6 +5,8 @@ system_definition: name: HPECray-zen3-MI250X-Slingshot + site: + system: HPECray-zen3-MI250X-Slingshot integrator: vendor: HPECray name: EX235a diff --git a/configs/nosite-HPECray-zen3-MI250X-Slingshot/variables.yaml b/configs/nosite-HPECray-zen3-MI250X-Slingshot/variables.yaml new file mode 100644 index 000000000..db27b33b9 --- /dev/null +++ b/configs/nosite-HPECray-zen3-MI250X-Slingshot/variables.yaml @@ -0,0 +1,14 @@ +# Copyright 2023 Lawrence Livermore National Security, LLC and other +# Benchpark Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: Apache-2.0 + +variables: + gtl_flag: '' # to be overwritten by tests that need GTL + rocm_arch: 'gfx90a' + batch_time: '02:00' + mpi_command: 'srun -N {n_nodes} -n {n_ranks}' + batch_submit: 'sbatch {execute_experiment}' + batch_nodes: '#SBATCH -N {n_nodes}' + batch_ranks: '#SBATCH -n {n_ranks}' + batch_timeout: '#SBATCH -t {batch_time}:00' diff --git a/configs/x86_64/spack.yaml b/configs/nosite-x86_64/spack.yaml similarity index 100% rename from configs/x86_64/spack.yaml rename to configs/nosite-x86_64/spack.yaml diff --git a/configs/x86_64/system_definition.yaml b/configs/nosite-x86_64/system_definition.yaml similarity index 95% rename from configs/x86_64/system_definition.yaml rename to configs/nosite-x86_64/system_definition.yaml index 77c303b07..0c0f73d1d 100644 --- a/configs/x86_64/system_definition.yaml +++ b/configs/nosite-x86_64/system_definition.yaml @@ -5,6 +5,8 @@ system_definition: name: x86_64 + site: + system: x86_64 integrator: vendor: name: diff --git a/configs/x86_64/variables.yaml b/configs/nosite-x86_64/variables.yaml similarity index 100% rename from configs/x86_64/variables.yaml rename to configs/nosite-x86_64/variables.yaml diff --git a/docs/add-a-site-specific-system-config.rst b/docs/add-a-site-specific-system-config.rst new file mode 100644 index 000000000..d4d3b8a1a --- /dev/null +++ b/docs/add-a-site-specific-system-config.rst @@ -0,0 +1,14 @@ +.. Copyright 2023 Lawrence Livermore National Security, LLC and other + Benchpark Project Developers. See the top-level COPYRIGHT file for details. + + SPDX-License-Identifier: Apache-2.0 + +============================= +Adding a Specific System Configuration +============================= + +For a specific system, one can (optionally) add more information about the software installed on the system +by adding Spack config files in ``benchpark/configs/$SITE/SYSTEMNAME-GENERICSYSTEM/auxiliary_software_files/``. + +- ``compilers.yaml`` defines the `compilers `_ installed on the system. +- ``packages.yaml`` defines the pre-installed `packages `_ (e.g., system MPI) on the system. One way to populate this list is to find available external packages: `spack external `_. diff --git a/docs/add-a-system-config.rst b/docs/add-a-system-config.rst index 440ea771b..ecd4f9dbd 100644 --- a/docs/add-a-system-config.rst +++ b/docs/add-a-system-config.rst @@ -13,32 +13,51 @@ you can add a new directory with a name which identifies the system. The naming convention for the systems is as following:: - [INTEGRATOR]-MICROARCHITECTURE[-GPU][-NETWORK] + SITE-[SYSTEMNAME-][INTEGRATOR]-MICROARCHITECTURE[-GPU][-NETWORK] where:: + SITE = nosite | DATACENTERNAME + + SYSTEMNAME = the name of the specific system + INTEGRATOR = COMPANY[_PRODUCTNAME][...] -Benchpark has definitions for the following systems: + MICROARCHITECTURE = CPU Microarchitecture + + GPU = GPU Product Name + + NETWORK = Network Product Name + +Benchpark has definitions for the following (nosite) systems: + +- nosite-AWS_PCluster_Hpc7a-zen4-EFA -- AWS_PCluster_Hpc7a-zen4-EFA +- nosite-HPECray-zen3-MI250X-Slingshot (same hardware as Frontier, Lumi, Tioga) -- HPECray-zen3-MI250X-Slingshot (Frontier, Lumi, Tioga) +- nosite-x86_64 (x86 CPU only platform) -- IBM-power9-V100-Infiniband (Sierra) -- Penguin-icelake-OmniPath -- x86_64 (generic x86 CPU only platform) +Benchpark has definitions for the following site-specific systems: -The following files are required for each system ``benchpark/configs/${SYSTEM}``: +- LLNL-Magma-Penguin-icelake-OmniPath + +- LLNL-Sierra-IBM-power9-V100-Infiniband (Sierra, Lassen) + +- LLNL-Tioga-HPECray-zen3-MI250X-Slingshot + + +The following files are required for each nosite system ``benchpark/configs/${SYSTEM}``: 1. ``system_definition.yaml`` describes the system hardware, including the integrator (and the name of the product node or cluster type), the processor, (optionally) the accelerator, and the network; the information included here is what you will typically see recorded about the system on Top500.org. We intend to make the system definitions in Benchpark searchable, and will add a schema to enforce consistency; until then, please copy the file and fill out all of the fields without changing the keys. Also listed is the specific system the config was developed and tested on, as well as the known systems with the same hardware so that the users of those systems can find this system specification. .. code-block:: yaml system_definition: - name: HPECray-zen3-MI250X-Slingshot + name: HPECray-zen3-MI250X-Slingshot # or site-specific name, e.g., Frontier at ORNL + site: + system: HPECray-zen3-MI250X-Slingshot integrator: vendor: HPECray name: EX235a @@ -91,8 +110,5 @@ spack section in the `Ramble configuration file batch_ranks: '' batch_timeout: '' -4. Optionally, one can add more information about the software installed on the system -by adding Spack config files in ``benchpark/configs/${SYSTEM}/auxiliary_software_files/``. - -- ``compilers.yaml`` defines the `compilers `_ installed on the system. -- ``packages.yaml`` defines the pre-installed `packages `_ (e.g., system MPI) on the system. One way to populate this list is to find available external packages: `spack external `_. +If defining a specific system, one can be more specific with available software versions +and packages, as demonstrated in :doc:`add-a-specific-system-config.rst`. diff --git a/docs/index.rst b/docs/index.rst index f11128ec5..8c4bf657f 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -32,6 +32,7 @@ add-a-benchmark add-an-experiment add-a-system-config + add-a-site-specific-system-config .. toctree:: :maxdepth: 1 diff --git a/docs/tables/current-system-definitions.csv b/docs/tables/current-system-definitions.csv index bd088307a..f4972971b 100644 --- a/docs/tables/current-system-definitions.csv +++ b/docs/tables/current-system-definitions.csv @@ -1,18 +1,20 @@ -,HPECray-zen3-MI250X-Slingshot,AWS_PCluster_Hpc7a-zen4-EFA,Penguin-icelake-OmniPath,x86_64,IBM-power9-V100-Infiniband -**integrator.vendor**,HPECray,AWS,PenguinComputing,,IBM -**integrator.name**,EX235a,ParallelCluster3.7.2-Hpc7a,RelionCluster,,AC922 -**processor.vendor**,AMD,AMD,Intel,,IBM -**processor.name**,EPYC-Zen3,EPYC-Zen4,XeonPlatinum924248C,,POWER9 -**processor.ISA**,x86_64,x86_64,x86_64,x86_64,ppc64le -**processor.uArch**,zen3,zen4,icelake,,power9 -**accelerator.vendor**,AMD,,,,NVIDIA -**accelerator.name**,MI250X,,,,V100 -**accelerator.ISA**,GCN,,,,PTX -**accelerator.uArch**,gfx90a,,,,sm_70 -**interconnect.vendor**,HPECray,AWS,Intel,,Mellanox -**interconnect.name**,Slingshot11,EFA,OmniPath,,EDR-Infiniband -**system-tested.site**,LLNL,AWS,LLNL,,LLNL -**system-tested.name**,tioga,,magma,,lassen -**system-tested.installation-year**,2022,,2019,,2018 -**system-tested.description**,`top500 `_,`aws/hpc7a `_,`top500 `_,,`top500 `_ -**top500-system-instances**,"Frontier (ORNL), Lumi (CSC), Tioga (LLNL)",,Magma (LLNL),,Sierra (LLNL) +,Magma,Sierra,Tioga,AWS_PCluster_Hpc7a-zen4-EFA,HPECray-zen3-MI250X-Slingshot,x86_64 +**site**,LLNL,LLNL,LLNL,,, +**system**,Penguin-icelake-OmniPath,IBM-power9-V100-Infiniband,HPECray-zen3-MI250X-Slingshot,AWS_PCluster_Hpc7a-zen4-EFA,HPECray-zen3-MI250X-Slingshot,x86_64 +**integrator.vendor**,PenguinComputing,IBM,HPECray,AWS,HPECray, +**integrator.name**,RelionCluster,AC922,EX235a,ParallelCluster3.7.2-Hpc7a,EX235a, +**processor.vendor**,Intel,IBM,AMD,AMD,AMD, +**processor.name**,XeonPlatinum924248C,POWER9,EPYC-Zen3,EPYC-Zen4,EPYC-Zen3, +**processor.ISA**,x86_64,ppc64le,x86_64,x86_64,x86_64,x86_64 +**processor.uArch**,icelake,power9,zen3,zen4,zen3, +**accelerator.vendor**,,NVIDIA,AMD,,AMD, +**accelerator.name**,,V100,MI250X,,MI250X, +**accelerator.ISA**,,PTX,GCN,,GCN, +**accelerator.uArch**,,sm_70,gfx90a,,gfx90a, +**interconnect.vendor**,Intel,Mellanox,HPECray,AWS,HPECray, +**interconnect.name**,OmniPath,EDR-Infiniband,Slingshot11,EFA,Slingshot11, +**system-tested.site**,LLNL,LLNL,LLNL,AWS,LLNL, +**system-tested.name**,magma,lassen,tioga,,tioga, +**system-tested.installation-year**,2019,2018,2022,,2022, +**system-tested.description**,`top500 `_,`top500 `_,`top500 `_,`aws/hpc7a `_,`top500 `_, +**top500-system-instances**,Magma (LLNL),Sierra (LLNL),"Frontier (ORNL), Lumi (CSC), Tioga (LLNL)",,"Frontier (ORNL), Lumi (CSC), Tioga (LLNL)",