From 99776e358511e4f55fbc850a217f56d95b45c687 Mon Sep 17 00:00:00 2001 From: Michael McKinsey Date: Mon, 24 Mar 2025 17:44:33 -0700 Subject: [PATCH 1/3] Matrix dryruns from output of 'benchpark list experiments' --- .github/actions/dynamic-dry-run/action.yml | 18 +- .github/workflows/gen-dynamic-runs.py | 45 + .github/workflows/run.yml | 1002 ++++---------------- 3 files changed, 225 insertions(+), 840 deletions(-) create mode 100644 .github/workflows/gen-dynamic-runs.py diff --git a/.github/actions/dynamic-dry-run/action.yml b/.github/actions/dynamic-dry-run/action.yml index 86937574a..5f09b2cef 100644 --- a/.github/actions/dynamic-dry-run/action.yml +++ b/.github/actions/dynamic-dry-run/action.yml @@ -1,18 +1,9 @@ name: Dynamic dry run template inputs: - benchmark_name: - required: true - type: string - benchmark_mode: - required: true - type: string benchmark_spec: required: true type: string - system_name: - required: true - type: string system_spec: required: true type: string @@ -20,15 +11,12 @@ inputs: runs: using: "composite" steps: - - name: "${{ inputs.benchmark_name }}/${{ inputs.benchmark_mode }} ${{ inputs.system_name }} ${{ inputs.system_spec }}" + - name: "${{ inputs.benchmark_spec }} ${{ inputs.system_spec }}" shell: bash run: | timestamp=$(date +%s) - bn="${{ inputs.benchmark_name }}" - bm="${{ inputs.benchmark_mode }}" - benchmark="$bn-$bm-$timestamp" - sn="${{ inputs.system_name }}" - system="$sn-$timestamp" + benchmark="b-$timestamp" + system="s-$timestamp" ./bin/benchpark system init --dest=$system ${{ inputs.system_spec }} ./bin/benchpark experiment init --dest=$benchmark ${{ inputs.benchmark_spec }} ./bin/benchpark setup ./$benchmark ./$system workspace/ diff --git a/.github/workflows/gen-dynamic-runs.py b/.github/workflows/gen-dynamic-runs.py new file mode 100644 index 000000000..28b33482f --- /dev/null +++ b/.github/workflows/gen-dynamic-runs.py @@ -0,0 +1,45 @@ +import subprocess +import json + + +# Original dictionary +data = { + "openmp": {"benchmark_spec": [], "system_spec": ["llnl-cluster cluster=ruby"]}, + "cuda": {"benchmark_spec": [], "system_spec": ["llnl-sierra"]}, + "rocm": {"benchmark_spec": [], "system_spec": ["llnl-elcapitan cluster=tioga"]}, + "weak": {"benchmark_spec": [], "system_spec": ["generic-x86"]}, + "strong": {"benchmark_spec": [], "system_spec": ["generic-x86"]}, + "single_node": {"benchmark_spec": [], "system_spec": ["generic-x86"]}, + "throughput": {"benchmark_spec": [], "system_spec": ["generic-x86"]}, +} + + +def main(): + try: + expr_cmd = subprocess.run( + [ + "./bin/benchpark", + "list", + "experiments", + ], + capture_output=True, + check=True, + ) + except subprocess.CalledProcessError as e: + raise RuntimeError(f"Output: {e.stdout}\nError: {e.stderr}") + expr_str = str(expr_cmd.stdout, "utf-8") + experiments = expr_str.replace(" ", "").replace("\t", "").split("\n") + experiments = [ + item for item in experiments if "+" in item + ] + + for expr in experiments: + name, mode = expr.split("+") + data[mode]["benchmark_spec"].append(expr) + + with open("matrix.json", "w") as f: + json.dump(data, f) + + +if __name__ == "__main__": + main() diff --git a/.github/workflows/run.yml b/.github/workflows/run.yml index 50f4cd1af..0abce042d 100644 --- a/.github/workflows/run.yml +++ b/.github/workflows/run.yml @@ -2,7 +2,184 @@ name: Run Benchpark and Simple Benchmark Suite on: workflow_call: + jobs: + generate-matrix: + runs-on: ubuntu-22.04 + outputs: + openmp_matrix: ${{ steps.generate-matrix.outputs.openmp }} + cuda_matrix: ${{ steps.generate-matrix.outputs.cuda }} + rocm_matrix: ${{ steps.generate-matrix.outputs.rocm }} + weak_matrix: ${{ steps.generate-matrix.outputs.weak }} + strong_matrix: ${{ steps.generate-matrix.outputs.strong }} + single_node_matrix: ${{ steps.generate-matrix.outputs.single_node }} + throughput_matrix: ${{ steps.generate-matrix.outputs.throughput }} + steps: + - name: Checkout Benchpark + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 + + - name: Add needed Python libs + run: | + pip install -r ./requirements.txt + + - name: Generate JSON + run: | + python3 ./.github/workflows/gen-dynamic-runs.py + + - name: Generate Matrix Data + id: generate-matrix + run: | + # Extract each key separately + echo "openmp=$(cat matrix.json | jq -c '.openmp')" >> $GITHUB_OUTPUT + echo "cuda=$(cat matrix.json | jq -c '.cuda')" >> $GITHUB_OUTPUT + echo "rocm=$(cat matrix.json | jq -c '.rocm')" >> $GITHUB_OUTPUT + echo "weak=$(cat matrix.json | jq -c '.weak')" >> $GITHUB_OUTPUT + echo "strong=$(cat matrix.json | jq -c '.strong')" >> $GITHUB_OUTPUT + echo "single_node=$(cat matrix.json | jq -c '.single_node')" >> $GITHUB_OUTPUT + echo "throughput=$(cat matrix.json | jq -c '.throughput')" >> $GITHUB_OUTPUT + + - run: | + echo "OpenMP Matrix: ${{ steps.generate-matrix.outputs.openmp }}" + echo "CUDA Matrix: ${{ steps.generate-matrix.outputs.cuda }}" + echo "ROCM Matrix: ${{ steps.generate-matrix.outputs.rocm }}" + echo "Weak Matrix: ${{ steps.generate-matrix.outputs.weak }}" + echo "Strong Matrix: ${{ steps.generate-matrix.outputs.strong }}" + echo "Single Node Matrix: ${{ steps.generate-matrix.outputs.single_node }}" + echo "Throughput Matrix: ${{ steps.generate-matrix.outputs.throughput }}" + + dynamic-dry-run-openmp: + needs: generate-matrix + runs-on: ubuntu-22.04 + strategy: + matrix: ${{ fromJSON(needs.generate-matrix.outputs.openmp_matrix) }} + steps: + - name: Checkout Benchpark + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 + + - name: Add needed Python libs + run: | + pip install -r ./requirements.txt + + - name: Run OpenMP Benchmark + uses: ./.github/actions/dynamic-dry-run + with: + benchmark_spec: ${{ matrix.benchmark_spec }} + system_spec: ${{ matrix.system_spec }} + + dynamic-dry-run-cuda: + needs: generate-matrix + runs-on: ubuntu-22.04 + strategy: + matrix: ${{ fromJSON(needs.generate-matrix.outputs.cuda_matrix) }} + steps: + - name: Checkout Benchpark + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 + + - name: Add needed Python libs + run: | + pip install -r ./requirements.txt + + - name: Run CUDA Benchmark + uses: ./.github/actions/dynamic-dry-run + with: + benchmark_spec: ${{ matrix.benchmark_spec }} + system_spec: ${{ matrix.system_spec }} + + dynamic-dry-run-rocm: + needs: generate-matrix + runs-on: ubuntu-22.04 + strategy: + matrix: ${{ fromJSON(needs.generate-matrix.outputs.rocm_matrix) }} + steps: + - name: Checkout Benchpark + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 + + - name: Add needed Python libs + run: | + pip install -r ./requirements.txt + + - name: Run ROCM Benchmark + uses: ./.github/actions/dynamic-dry-run + with: + benchmark_spec: ${{ matrix.benchmark_spec }} + system_spec: ${{ matrix.system_spec }} + + dynamic-dry-run-weak: + needs: generate-matrix + runs-on: ubuntu-22.04 + strategy: + matrix: ${{ fromJSON(needs.generate-matrix.outputs.weak_matrix) }} + steps: + - name: Checkout Benchpark + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 + + - name: Add needed Python libs + run: | + pip install -r ./requirements.txt + + - name: Run Weak Benchmark + uses: ./.github/actions/dynamic-dry-run + with: + benchmark_spec: ${{ matrix.benchmark_spec }} + system_spec: ${{ matrix.system_spec }} + + dynamic-dry-run-strong: + needs: generate-matrix + runs-on: ubuntu-22.04 + strategy: + matrix: ${{ fromJSON(needs.generate-matrix.outputs.strong_matrix) }} + steps: + - name: Checkout Benchpark + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 + + - name: Add needed Python libs + run: | + pip install -r ./requirements.txt + + - name: Run Strong Benchmark + uses: ./.github/actions/dynamic-dry-run + with: + benchmark_spec: ${{ matrix.benchmark_spec }} + system_spec: ${{ matrix.system_spec }} + + dynamic-dry-run-single-node: + needs: generate-matrix + runs-on: ubuntu-22.04 + strategy: + matrix: ${{ fromJSON(needs.generate-matrix.outputs.single_node_matrix) }} + steps: + - name: Checkout Benchpark + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 + + - name: Add needed Python libs + run: | + pip install -r ./requirements.txt + + - name: Run Single Node Benchmark + uses: ./.github/actions/dynamic-dry-run + with: + benchmark_spec: ${{ matrix.benchmark_spec }} + system_spec: ${{ matrix.system_spec }} + + dynamic-dry-run-throughput: + needs: generate-matrix + runs-on: ubuntu-22.04 + strategy: + matrix: ${{ fromJSON(needs.generate-matrix.outputs.throughput_matrix) }} + steps: + - name: Checkout Benchpark + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 + + - name: Add needed Python libs + run: | + pip install -r ./requirements.txt + + - name: Run Throughput Benchmark + uses: ./.github/actions/dynamic-dry-run + with: + benchmark_spec: ${{ matrix.benchmark_spec }} + system_spec: ${{ matrix.system_spec }} + saxpy: runs-on: ubuntu-22.04 steps: @@ -115,831 +292,6 @@ jobs: --executor '{execute_experiment}' \ --where '{n_nodes} == 1' - dryrunexperiments: - runs-on: ubuntu-22.04 - steps: - - name: Checkout Benchpark - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 - - - name: Add needed Python libs - run: | - pip install -r ./requirements.txt - - - name: Dry run amg2023/openmp on Dane with allocation modifier - run: | - ./bin/benchpark experiment init --dest=amg2023/openmp amg2023+openmp - ./bin/benchpark system init --dest=dane llnl-cluster cluster=dane - ./bin/benchpark setup amg2023/openmp dane workspace/ - . workspace/setup.sh - ramble \ - --workspace-dir workspace/amg2023/openmp/dane/workspace \ - --disable-progress-bar \ - --disable-logger \ - workspace setup --dry-run - - - name: Dry run amg2023/cuda on Sierra with allocation modifier - run: | - ./bin/benchpark experiment init --dest=amg2023/cuda amg2023+cuda - ./bin/benchpark system init --dest=llnl-sierra llnl-sierra - ./bin/benchpark setup amg2023/cuda llnl-sierra workspace/ - . workspace/setup.sh - ramble \ - --workspace-dir workspace/amg2023/cuda/llnl-sierra/workspace \ - --disable-progress-bar \ - --disable-logger \ - workspace setup --dry-run - - - name: Dry run dynamic kripke/openmp on generic-x86 with allocation modifier - run: | - ./bin/benchpark experiment init --dest=kripke/openmp kripke+openmp caliper=mpi,time - ./bin/benchpark system init --dest=generic-x86 generic-x86 - ./bin/benchpark setup ./kripke/openmp generic-x86 workspace/ - . workspace/setup.sh - ramble \ - --workspace-dir workspace/kripke/openmp/generic-x86/workspace \ - --disable-progress-bar \ - --disable-logger \ - workspace setup --dry-run - - - name: Dry run dynamic kripke/rocm on Tioga with allocation modifier - run: | - ./bin/benchpark experiment init --dest=kripke/rocm kripke+rocm - ./bin/benchpark system init --dest=tioga llnl-elcapitan cluster=tioga - ./bin/benchpark setup ./kripke/rocm tioga workspace/ - . workspace/setup.sh - ramble \ - --workspace-dir workspace/kripke/rocm/tioga/workspace \ - --disable-progress-bar \ - --disable-logger \ - workspace setup --dry-run - - - name: Dry run kripke/cuda on Sierra with allocation modifier - run: | - ./bin/benchpark experiment init --dest=kripke/cuda kripke+cuda - ./bin/benchpark setup kripke/cuda llnl-sierra workspace/ - . workspace/setup.sh - ramble \ - --workspace-dir workspace/kripke/cuda/llnl-sierra/workspace \ - --disable-progress-bar \ - --disable-logger \ - workspace setup --dry-run - - - name: Dry run kripke/rocm on dynamic Tioga with allocation modifier - run: | - ./bin/benchpark system init --dest=tioga/rocm6.2.4-cce llnl-elcapitan rocm=6.2.4 compiler=cce ~gtl - ./bin/benchpark setup kripke/rocm ./tioga/rocm6.2.4-cce workspace/ - . workspace/setup.sh - ramble \ - --workspace-dir "workspace/kripke/rocm/tioga/rocm6.2.4-cce/workspace" \ - --disable-progress-bar \ - --disable-logger \ - workspace setup --dry-run - - - name: Dry run dynamic saxpy/rocm with static Tioga - run: | - ./bin/benchpark experiment init --dest=saxpy/rocm saxpy+rocm - ./bin/benchpark setup ./saxpy/rocm tioga workspace/ - . workspace/setup.sh - ramble \ - --workspace-dir workspace/saxpy/rocm/tioga/workspace \ - --disable-progress-bar \ - --disable-logger \ - workspace setup --dry-run - - - name: Dry run dynamic lammps/openmp on static Ruby - run: | - ./bin/benchpark experiment init --dest=lammps/openmp lammps+openmp - ./bin/benchpark system init --dest=ruby llnl-cluster cluster=ruby - ./bin/benchpark setup ./lammps/openmp ruby workspace/ - . workspace/setup.sh - ramble \ - --workspace-dir workspace/lammps/openmp/ruby/workspace \ - --disable-progress-bar \ - --disable-logger \ - workspace setup --dry-run - - - name: Dry run dynamic lammps/rocm on static Tioga - run: | - ./bin/benchpark experiment init --dest=lammps/rocm lammps+rocm - ./bin/benchpark setup ./lammps/rocm tioga workspace/ - . workspace/setup.sh - ramble \ - --workspace-dir workspace/lammps/rocm/tioga/workspace \ - --disable-progress-bar \ - --disable-logger \ - workspace setup --dry-run - - - name: Dry run dynamic quicksilver/openmp on generic-x86 with allocation modifier - run: | - ./bin/benchpark experiment init --dest=quicksilver/openmp quicksilver+openmp +weak~single_node - ./bin/benchpark setup ./quicksilver/openmp generic-x86 workspace/ - . workspace/setup.sh - ramble \ - --workspace-dir workspace/quicksilver/openmp/generic-x86/workspace \ - --disable-progress-bar \ - --disable-logger \ - workspace setup --dry-run - - - name: Dry run qws/openmp with allocation modifier on Fugaku - run: | - ./bin/benchpark experiment init --dest=qws/openmp qws+openmp - ./bin/benchpark system init --dest=riken-fugaku riken-fugaku - ./bin/benchpark setup qws/openmp riken-fugaku workspace/ - . workspace/setup.sh - ramble \ - --workspace-dir workspace/qws/openmp/riken-fugaku/workspace \ - --disable-progress-bar \ - --disable-logger \ - workspace setup --dry-run - - - name: Dry run qws/openmp with allocation modifier on generic-x86 - run: | - ./bin/benchpark setup qws/openmp generic-x86 workspace/ - . workspace/setup.sh - ramble \ - --workspace-dir workspace/qws/openmp/generic-x86/workspace \ - --disable-progress-bar \ - --disable-logger \ - workspace setup --dry-run - - - name: Dry run salmon/openmp with allocation modifier on generic-x86 - run: | - ./bin/benchpark experiment init --dest=salmon/openmp salmon-tddft+openmp - ./bin/benchpark setup salmon/openmp generic-x86 workspace/ - . workspace/setup.sh - ramble \ - --workspace-dir workspace/salmon/openmp/generic-x86/workspace \ - --disable-progress-bar \ - --disable-logger \ - workspace setup --dry-run - - - name: Dry run salmon/openmp with allocation modifier on Fugaku - run: | - ./bin/benchpark setup salmon/openmp riken-fugaku workspace/ - . workspace/setup.sh - ramble \ - --workspace-dir workspace/salmon/openmp/riken-fugaku/workspace \ - --disable-progress-bar \ - --disable-logger \ - workspace setup --dry-run - - dynamicdryrunexperiments: - runs-on: ubuntu-22.04 - steps: - - name: Checkout Benchpark - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 - - - name: Add needed Python libs - run: | - pip install -r ./requirements.txt - - - name: saxpy/openmp ruby llnl-cluster cluster=ruby compiler=intel - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: saxpy - benchmark_mode: openmp - benchmark_spec: saxpy+openmp - system_name: ruby - system_spec: llnl-cluster cluster=ruby compiler=intel - - - name: saxpy/openmp dane llnl-cluster cluster=dane - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: saxpy - benchmark_mode: openmp - benchmark_spec: saxpy+openmp - system_name: dane - system_spec: llnl-cluster cluster=dane - - - name: saxpy/openmp magma llnl-cluster cluster=magma - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: saxpy - benchmark_mode: openmp - benchmark_spec: saxpy+openmp - system_name: magma - system_spec: llnl-cluster cluster=magma - - - name: saxpy/openmp aws aws-pcluster instance_type=hpc6a.48xlarge - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: saxpy - benchmark_mode: openmp - benchmark_spec: saxpy+openmp - system_name: aws - system_spec: aws-pcluster instance_type=hpc6a.48xlarge - - - name: saxpy/openmp venado lanl-venado cuda=12.5 compiler=cce +gtl - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: saxpy - benchmark_mode: openmp - benchmark_spec: saxpy+openmp - system_name: venado - system_spec: lanl-venado cuda=12.5 compiler=cce +gtl - - - name: saxpy/openmp lumi csc-lumi - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: saxpy - benchmark_mode: openmp - benchmark_spec: saxpy+openmp - system_name: lumi - system_spec: csc-lumi - - - name: saxpy/cuda lassen llnl-sierra cuda=11-8-0 compiler=clang-ibm - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: saxpy - benchmark_mode: cuda - benchmark_spec: saxpy+cuda - system_name: lassen - system_spec: llnl-sierra cuda=11-8-0 compiler=clang-ibm - - - name: saxpy/cuda venado lanl-venado cuda=12.5 compiler=cce +gtl - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: saxpy - benchmark_mode: cuda - benchmark_spec: saxpy+cuda - system_name: venado - system_spec: lanl-venado cuda=12.5 compiler=cce +gtl - - - name: saxpy/rocm tioga llnl-elcapitan rocm=6.2.4 compiler=cce ~gtl - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: saxpy - benchmark_mode: rocm - benchmark_spec: saxpy+rocm - system_name: tioga - system_spec: llnl-elcapitan rocm=6.2.4 compiler=cce ~gtl - - - name: saxpy/openmp fugaku riken-fugaku - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: saxpy - benchmark_mode: openmp - benchmark_spec: saxpy+openmp - system_name: fugaku - system_spec: riken-fugaku - - - name: saxpy/openmp juwels jsc-juwels - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: saxpy - benchmark_mode: openmp - benchmark_spec: saxpy+openmp - system_name: juwels - system_spec: jsc-juwels - - - name: saxpy/openmp eiger cscs-eiger - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: saxpy - benchmark_mode: openmp - benchmark_spec: saxpy+openmp - system_name: eiger - system_spec: cscs-eiger - - - name: saxpy/openmp daint cscs-daint - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: saxpy - benchmark_mode: openmp - benchmark_spec: saxpy+openmp - system_name: daint - system_spec: cscs-daint - - - name: amg2023/openmp caliper=mpi,time generic-x86 generic-x86 - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: amg2023 - benchmark_mode: openmp - benchmark_spec: amg2023+openmp caliper=mpi,time - system_name: generic-x86 - system_spec: generic-x86 - - - name: amg2023/openmp caliper=topdown-all,time ruby llnl-cluster cluster=ruby compiler=intel - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: amg2023 - benchmark_mode: openmp - benchmark_spec: amg2023+openmp caliper=mpi,time - system_name: ruby - system_spec: llnl-cluster cluster=ruby compiler=intel - - - name: amg2023/cuda caliper=cuda,time lassen llnl-sierra cuda=11-8-0 compiler=clang-ibm - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: amg2023 - benchmark_mode: cuda - benchmark_spec: amg2023+cuda caliper=cuda,time - system_name: lassen - system_spec: llnl-sierra cuda=11-8-0 compiler=clang-ibm - - - name: amg2023/rocm caliper=mpi,time tioga llnl-elcapitan rocm=6.2.4 compiler=cce +gtl - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: amg2023 - benchmark_mode: rocm - benchmark_spec: amg2023+rocm caliper=mpi,time - system_name: tioga - system_spec: llnl-elcapitan rocm=6.2.4 compiler=cce +gtl - - - name: ior/mpi ruby llnl-cluster cluster=ruby compiler=intel - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: ior - benchmark_mode: mpi - benchmark_spec: ior - system_name: ruby - system_spec: llnl-cluster cluster=ruby compiler=intel - - - name: qws/openmp ruby llnl-cluster cluster=ruby compiler=intel - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: qws - benchmark_mode: openmp - benchmark_spec: qws+openmp - system_name: ruby - system_spec: llnl-cluster cluster=ruby compiler=intel - - - name: smb/mpi ruby llnl-cluster cluster=ruby compiler=intel - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: smb - benchmark_mode: mpi - benchmark_spec: smb - system_name: ruby - system_spec: llnl-cluster cluster=ruby compiler=intel - - - name: smb/mpi workload=msgrate ruby llnl-cluster cluster=ruby compiler=intel - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: smb - benchmark_mode: mpi - benchmark_spec: smb workload=msgrate - system_name: ruby - system_spec: llnl-cluster cluster=ruby compiler=intel - - - name: phloem/mpi ruby llnl-cluster cluster=ruby compiler=intel - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: phloem - benchmark_mode: mpi - benchmark_spec: phloem - system_name: ruby - system_spec: llnl-cluster cluster=ruby compiler=intel - - - name: laghos/mpi caliper=mpi,time ruby llnl-cluster cluster=ruby compiler=intel - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: laghos - benchmark_mode: mpi - benchmark_spec: laghos caliper=mpi,time - system_name: ruby - system_spec: llnl-cluster cluster=ruby compiler=intel - - - name: laghos/mpi caliper=mpi,time magma llnl-cluster cluster=magma - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: laghos - benchmark_mode: mpi - benchmark_spec: laghos caliper=mpi,time - system_name: magma - system_spec: llnl-cluster cluster=magma - - - name: laghos/cuda caliper=cuda,time lassen llnl-sierra cuda=11-8-0 compiler=clang-ibm - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: laghos - benchmark_mode: cuda - benchmark_spec: laghos+cuda caliper=cuda,time - system_name: lassen - system_spec: llnl-sierra cuda=11-8-0 compiler=clang-ibm - - - name: laghos/rocm caliper=mpi,time llnl-elcapitan rocm=6.2.4 compiler=cce +gtl - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: laghos - benchmark_mode: rocm - benchmark_spec: laghos+rocm caliper=mpi,time - system_name: tioga - system_spec: llnl-elcapitan rocm=6.2.4 compiler=cce +gtl - - - name: raja-perf/mpi caliper=mpi,time ruby llnl-cluster cluster=ruby compiler=intel - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: raja-perf - benchmark_mode: mpi - benchmark_spec: raja-perf caliper=mpi,time - system_name: ruby - system_spec: llnl-cluster cluster=ruby compiler=intel - - - name: raja-perf/mpi caliper=mpi,time lassen llnl-sierra cuda=11-8-0 compiler=clang-ibm - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: raja-perf - benchmark_mode: mpi - benchmark_spec: raja-perf - system_name: lassen - system_spec: llnl-sierra cuda=11-8-0 compiler=clang-ibm - - - name: raja-perf/mpi caliper=mpi,time tioga llnl-elcapitan rocm=6.2.4 compiler=cce +gtl - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: raja-perf - benchmark_mode: mpi - benchmark_spec: raja-perf - system_name: tioga - system_spec: llnl-elcapitan rocm=6.2.4 compiler=cce +gtl - - - name: gromacs/openmp gpu-aware-mpi=off ruby llnl-cluster cluster=ruby compiler=gcc - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: gromacs - benchmark_mode: openmp - benchmark_spec: gromacs+openmp~cuda~rocm gpu-aware-mpi=off - system_name: ruby - system_spec: llnl-cluster cluster=ruby compiler=gcc - - - name: gromacs/cuda gpu-aware-mpi=on lassen llnl-sierra cuda=11-8-0 compiler=clang-ibm lapack=cusolver blas=cublas - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: gromacs - benchmark_mode: cuda - benchmark_spec: gromacs+openmp+cuda~rocm gpu-aware-mpi=on - system_name: lassen - system_spec: llnl-sierra cuda=11-8-0 compiler=clang-ibm lapack=cusolver blas=cublas - - - name: gromacs/rocm gpu-aware-mpi=force llnl-elcapitan rocm=6.2.4 compiler=cce +gtl lapack=intel-oneapi-mkl blas=intel-oneapi-mkl - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: gromacs - benchmark_mode: rocm - benchmark_spec: gromacs+openmp+rocm~cuda gpu-aware-mpi=force - system_name: tioga - system_spec: llnl-elcapitan rocm=6.2.4 compiler=cce +gtl lapack=intel-oneapi-mkl blas=intel-oneapi-mkl - - - name: remhos/mpi caliper=mpi,time ruby llnl-cluster cluster=ruby compiler=gcc - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: remhos - benchmark_mode: mpi - benchmark_spec: remhos~cuda~rocm caliper=mpi,time - system_name: ruby - system_spec: llnl-cluster cluster=ruby compiler=gcc - - - name: remhos/mpi caliper=mpi,time tioga llnl-elcapitan rocm=6.2.4 compiler=cce +gtl lapack=intel-oneapi-mkl blas=intel-oneapi-mkl - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: remhos - benchmark_mode: mpi - benchmark_spec: remhos~cuda~rocm caliper=mpi,time - system_name: tioga - system_spec: llnl-elcapitan rocm=6.2.4 compiler=cce +gtl lapack=intel-oneapi-mkl blas=intel-oneapi-mkl - - - name: remhos/cuda caliper=cuda,time lassen llnl-sierra cuda=11-8-0 compiler=clang-ibm lapack=essl blas=cublas - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: remhos - benchmark_mode: cuda - benchmark_spec: remhos+cuda~rocm caliper=cuda,time - system_name: lassen - system_spec: llnl-sierra cuda=11-8-0 compiler=clang-ibm lapack=essl blas=cublas - - - name: remhos/rocm caliper=mpi,time llnl-elcapitan rocm=6.2.4 compiler=cce +gtl lapack=cray-libsci blas=rocblas - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: remhos - benchmark_mode: rocm - benchmark_spec: remhos~cuda+rocm caliper=mpi,time - system_name: tioga - system_spec: llnl-elcapitan rocm=6.2.4 compiler=cce +gtl lapack=cray-libsci blas=rocblas - - - name: genesis/openmp llnl-cluster cluster=ruby compiler=intel - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: genesis - benchmark_mode: openmp - benchmark_spec: genesis+openmp - system_name: ruby - system_spec: llnl-cluster cluster=ruby compiler=intel - - - name: genesis/openmp fugaku riken-fugaku - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: genesis - benchmark_mode: openmp - benchmark_spec: genesis+openmp - system_name: fugaku - system_spec: riken-fugaku - - - name: babelstream/openmp caliper=mpi,time ruby llnl-cluster cluster=ruby compiler=intel - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: babelstream - benchmark_mode: openmp - benchmark_spec: babelstream+openmp caliper=mpi,time - system_name: ruby - system_spec: llnl-cluster cluster=ruby compiler=intel - - - name: babelstream/cuda caliper=cuda,time lassen llnl-sierra cuda=11-8-0 compiler=clang-ibm - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: babelstream - benchmark_mode: cuda - benchmark_spec: babelstream+cuda caliper=cuda,time - system_name: lassen - system_spec: llnl-sierra cuda=11-8-0 compiler=clang-ibm - - - name: babelstream/rocm caliper=mpi,time llnl-elcapitan rocm=6.2.4 compiler=cce +gtl - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: babelstream - benchmark_mode: rocm - benchmark_spec: babelstream+rocm caliper=mpi,time - system_name: tioga - system_spec: llnl-elcapitan rocm=6.2.4 compiler=cce +gtl - - - name: lammps/openmp ruby llnl-cluster cluster=ruby compiler=intel - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: lammps - benchmark_mode: openmp - benchmark_spec: lammps+openmp - system_name: ruby - system_spec: llnl-cluster cluster=ruby compiler=intel - - - name: lammps/openmp lassen llnl-sierra cuda=11-8-0 compiler=clang-ibm - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: lammps - benchmark_mode: openmp - benchmark_spec: lammps+openmp - system_name: lassen - system_spec: llnl-sierra cuda=11-8-0 compiler=clang-ibm - - - name: lammps/openmp llnl-elcapitan rocm=6.2.4 compiler=cce +gtl - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: lammps - benchmark_mode: openmp - benchmark_spec: lammps+openmp - system_name: tioga - system_spec: llnl-elcapitan rocm=6.2.4 compiler=cce +gtl - - - name: lammps/cuda lassen llnl-sierra cuda=11-8-0 compiler=clang-ibm - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: lammps - benchmark_mode: cuda - benchmark_spec: lammps+cuda - system_name: lassen - system_spec: llnl-sierra cuda=11-8-0 compiler=clang-ibm - - - name: lammps/rocm llnl-elcapitan rocm=6.2.4 compiler=cce +gtl - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: lammps - benchmark_mode: rocm - benchmark_spec: lammps+rocm - system_name: tioga - system_spec: llnl-elcapitan rocm=6.2.4 compiler=cce +gtl - - - name: kripke/openmp caliper=mpi,time generic-x86 generic-x86 - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: kripke - benchmark_mode: openmp - benchmark_spec: kripke+openmp caliper=mpi,time - system_name: generic-x86 - system_spec: generic-x86 - - - name: kripke/openmp caliper=mpi,time ruby llnl-cluster cluster=ruby compiler=intel - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: kripke - benchmark_mode: openmp - benchmark_spec: kripke+openmp caliper=mpi,time - system_name: ruby - system_spec: llnl-cluster cluster=ruby compiler=intel - - - name: kripke/cuda caliper=cuda,time lassen llnl-sierra cuda=11-8-0 compiler=clang-ibm - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: kripke - benchmark_mode: cuda - benchmark_spec: kripke+cuda caliper=cuda,time - system_name: lassen - system_spec: llnl-sierra cuda=11-8-0 compiler=clang-ibm - - - name: kripke/rocm caliper=mpi,time tioga llnl-elcapitan rocm=6.2.4 compiler=cce +gtl - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: kripke - benchmark_mode: rocm - benchmark_spec: kripke+rocm caliper=mpi,time - system_name: tioga - system_spec: llnl-elcapitan rocm=6.2.4 compiler=cce +gtl - - - name: gpcNet/mpi ruby llnl-cluster cluster=ruby compiler=intel - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: gpcnet - benchmark_mode: mpi - benchmark_spec: gpcnet - system_name: ruby - system_spec: llnl-cluster cluster=ruby compiler=intel - - - name: gpcNet/mpi lassen llnl-sierra cuda=11-8-0 compiler=clang-ibm - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: gpcnet - benchmark_mode: mpi - benchmark_spec: gpcnet - system_name: lassen - system_spec: llnl-sierra cuda=11-8-0 compiler=clang-ibm - - - name: gpcNet/mpi tioga llnl-elcapitan rocm=6.2.4 compiler=cce +gtl - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: gpcnet - benchmark_mode: mpi - benchmark_spec: gpcnet - system_name: tioga - system_spec: llnl-elcapitan rocm=6.2.4 compiler=cce +gtl - - - name: hpcg/openmp caliper=mpi,time tioga llnl-elcapitan compiler=cce - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: hpcg - benchmark_mode: openmp - benchmark_spec: hpcg+openmp caliper=mpi,time - system_name: tioga - system_spec: llnl-elcapitan compiler=cce - - - name: hpcg/openmp caliper=time lassen llnl-sierra compiler=clang-ibm - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: hpcg - benchmark_mode: openmp - benchmark_spec: hpcg+openmp caliper=mpi,time - system_name: lassen - system_spec: llnl-sierra compiler=clang-ibm - - - name: hpcg/openmp caliper=cuda,time ruby llnl-cluster cluster=ruby compiler=gcc - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: hpcg - benchmark_mode: openmp - benchmark_spec: hpcg+openmp caliper=mpi,time - system_name: ruby - system_spec: llnl-cluster cluster=ruby compiler=gcc - - - name: hpl/mpi caliper=mpi,time tioga llnl-elcapitan rocm=6.2.4 compiler=cce +gtl blas=intel-oneapi-mkl - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: hpl - benchmark_mode: mpi - benchmark_spec: hpl caliper=mpi,time - system_name: tioga - system_spec: llnl-elcapitan rocm=6.2.4 compiler=cce +gtl blas=intel-oneapi-mkl - - - name: hpl/mpi caliper=mpi,time ruby llnl-cluster cluster=ruby compiler=gcc - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: hpl - benchmark_mode: mpi - benchmark_spec: hpl caliper=mpi,time - system_name: ruby - system_spec: llnl-cluster cluster=ruby compiler=gcc - - - name: hpl/mpi caliper=mpi,time lassen llnl-sierra cuda=11-8-0 compiler=clang-ibm blas=essl - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: hpl - benchmark_mode: mpi - benchmark_spec: hpl caliper=mpi,time - system_name: lassen - system_spec: llnl-sierra cuda=11-8-0 compiler=clang-ibm blas=essl - - - name: hpl/openmp caliper=mpi,time tioga llnl-elcapitan rocm=6.2.4 compiler=cce +gtl blas=intel-oneapi-mkl - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: hpl - benchmark_mode: openmp - benchmark_spec: hpl+openmp caliper=mpi,time - system_name: tioga - system_spec: llnl-elcapitan rocm=6.2.4 compiler=cce +gtl blas=intel-oneapi-mkl - - - name: hpl/openmp caliper=mpi,time ruby llnl-cluster cluster=ruby compiler=gcc - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: hpl - benchmark_mode: openmp - benchmark_spec: hpl+openmp caliper=mpi,time - system_name: ruby - system_spec: llnl-cluster cluster=ruby compiler=gcc - - - name: hpl/openmp caliper=mpi,time lassen llnl-sierra cuda=11-8-0 compiler=clang-ibm blas=essl - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: hpl - benchmark_mode: openmp - benchmark_spec: hpl+openmp caliper=mpi,time - system_name: lassen - system_spec: llnl-sierra cuda=11-8-0 compiler=clang-ibm blas=essl - - - name: stream/mpi caliper=mpi,time ruby llnl-cluster cluster=ruby - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: stream - benchmark_mode: mpi - benchmark_spec: stream caliper=mpi,time - system_name: ruby - system_spec: llnl-cluster cluster=ruby - - - name: stream/mpi caliper=mpi,time lassen llnl-sierra cuda=11-8-0 compiler=clang-ibm - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: stream - benchmark_mode: mpi - benchmark_spec: stream caliper=mpi,time - system_name: lassen - system_spec: llnl-sierra cuda=11-8-0 compiler=clang-ibm - - - name: stream/mpi caliper=mpi,time llnl-elcapitan rocm=6.2.4 compiler=cce - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: stream - benchmark_mode: mpi - benchmark_spec: stream caliper=mpi,time - system_name: tioga - system_spec: llnl-elcapitan rocm=6.2.4 compiler=cce - - - name: ad/single-core llnl-elcapitan rocm=6.2.4 compiler=rocmcc - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: ad - benchmark_mode: single-core - benchmark_spec: ad - system_name: tioga - system_spec: llnl-elcapitan rocm=6.2.4 compiler=rocmcc - - - name: md-test/mpi llnl-elcapitan - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: md-test - benchmark_mode: mpi - benchmark_spec: md-test - system_name: tioga - system_spec: llnl-elcapitan - - - name: md-test/mpi ruby llnl-cluster - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: md-test - benchmark_mode: mpi - benchmark_spec: md-test - system_name: ruby - system_spec: llnl-cluster cluster=ruby - - - name: osu-micro-benchmarks/mpi ruby llnl-cluster cluster=ruby compiler=intel - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: osu-micro-benchmarks - benchmark_mode: mpi - benchmark_spec: osu-micro-benchmarks workload=all - system_name: ruby - system_spec: llnl-cluster cluster=ruby compiler=intel - - - name: osu-micro-benchmarks/rocm tioga llnl-elcapitan cluster=tioga compiler=cce +gtl - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: osu-micro-benchmarks - benchmark_mode: rocm - benchmark_spec: osu-micro-benchmarks+rocm workload=all - system_name: tioga - system_spec: llnl-elcapitan cluster=tioga compiler=cce +gtl - - - name: salmon/openmp ruby llnl-cluster cluster=ruby compiler=intel - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: salmon-tddft - benchmark_mode: openmp - benchmark_spec: salmon-tddft - system_name: ruby - system_spec: llnl-cluster cluster=ruby compiler=intel - - - name: salmon fugaku riken-fugaku - uses: ./.github/actions/dynamic-dry-run - with: - benchmark_name: salmon-tddft - benchmark_mode: openmp - benchmark_spec: salmon-tddft - system_name: fugaku - system_spec: riken-fugaku pytest: runs-on: ubuntu-22.04 steps: From 28c406b236559a275dee8a911f60e7b7989cf81b Mon Sep 17 00:00:00 2001 From: Michael McKinsey Date: Thu, 3 Apr 2025 14:18:35 -0700 Subject: [PATCH 2/3] Add a couple of manual dryruns --- .github/workflows/run.yml | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/.github/workflows/run.yml b/.github/workflows/run.yml index 0abce042d..46a14e232 100644 --- a/.github/workflows/run.yml +++ b/.github/workflows/run.yml @@ -180,6 +180,28 @@ jobs: benchmark_spec: ${{ matrix.benchmark_spec }} system_spec: ${{ matrix.system_spec }} + dynamic-dry-run-othersystems: + runs-on: ubuntu-22.04 + steps: + - name: Checkout Benchpark + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 + + - name: Add needed Python libs + run: | + pip install -r ./requirements.txt + + - name: aws-pcluster/c4.xlarge + uses: ./.github/actions/dynamic-dry-run + with: + benchmark_spec: saxpy+openmp + system_spec: aws-pcluster instance_type=c4.xlarge + + - name: aws-pcluster/c6g.xlarge + uses: ./.github/actions/dynamic-dry-run + with: + benchmark_spec: saxpy+openmp + system_spec: aws-pcluster instance_type=c6g.xlarge + saxpy: runs-on: ubuntu-22.04 steps: From ca5de9ca962a1cafc666cf3090be5d914d592841 Mon Sep 17 00:00:00 2001 From: Michael McKinsey Date: Thu, 3 Apr 2025 14:37:01 -0700 Subject: [PATCH 3/3] Test more manual dryruns --- .github/workflows/run.yml | 78 +++++++++++++++++++++++++++++++++------ 1 file changed, 66 insertions(+), 12 deletions(-) diff --git a/.github/workflows/run.yml b/.github/workflows/run.yml index 46a14e232..66de9be2a 100644 --- a/.github/workflows/run.yml +++ b/.github/workflows/run.yml @@ -47,7 +47,7 @@ jobs: echo "Single Node Matrix: ${{ steps.generate-matrix.outputs.single_node }}" echo "Throughput Matrix: ${{ steps.generate-matrix.outputs.throughput }}" - dynamic-dry-run-openmp: + testallonce-openmp: needs: generate-matrix runs-on: ubuntu-22.04 strategy: @@ -66,7 +66,7 @@ jobs: benchmark_spec: ${{ matrix.benchmark_spec }} system_spec: ${{ matrix.system_spec }} - dynamic-dry-run-cuda: + testallonce-cuda: needs: generate-matrix runs-on: ubuntu-22.04 strategy: @@ -85,7 +85,7 @@ jobs: benchmark_spec: ${{ matrix.benchmark_spec }} system_spec: ${{ matrix.system_spec }} - dynamic-dry-run-rocm: + testallonce-rocm: needs: generate-matrix runs-on: ubuntu-22.04 strategy: @@ -104,7 +104,7 @@ jobs: benchmark_spec: ${{ matrix.benchmark_spec }} system_spec: ${{ matrix.system_spec }} - dynamic-dry-run-weak: + testallonce-weak: needs: generate-matrix runs-on: ubuntu-22.04 strategy: @@ -123,7 +123,7 @@ jobs: benchmark_spec: ${{ matrix.benchmark_spec }} system_spec: ${{ matrix.system_spec }} - dynamic-dry-run-strong: + testallonce-strong: needs: generate-matrix runs-on: ubuntu-22.04 strategy: @@ -142,7 +142,7 @@ jobs: benchmark_spec: ${{ matrix.benchmark_spec }} system_spec: ${{ matrix.system_spec }} - dynamic-dry-run-single-node: + testallonce-single-node: needs: generate-matrix runs-on: ubuntu-22.04 strategy: @@ -161,7 +161,7 @@ jobs: benchmark_spec: ${{ matrix.benchmark_spec }} system_spec: ${{ matrix.system_spec }} - dynamic-dry-run-throughput: + testallonce-throughput: needs: generate-matrix runs-on: ubuntu-22.04 strategy: @@ -180,7 +180,7 @@ jobs: benchmark_spec: ${{ matrix.benchmark_spec }} system_spec: ${{ matrix.system_spec }} - dynamic-dry-run-othersystems: + manual-test-each-system: runs-on: ubuntu-22.04 steps: - name: Checkout Benchpark @@ -190,17 +190,71 @@ jobs: run: | pip install -r ./requirements.txt - - name: aws-pcluster/c4.xlarge + - name: aws-pcluster uses: ./.github/actions/dynamic-dry-run with: benchmark_spec: saxpy+openmp - system_spec: aws-pcluster instance_type=c4.xlarge + system_spec: aws-pcluster - - name: aws-pcluster/c6g.xlarge + - name: csc-lumi uses: ./.github/actions/dynamic-dry-run with: benchmark_spec: saxpy+openmp - system_spec: aws-pcluster instance_type=c6g.xlarge + system_spec: csc-lumi + + - name: cscs-daint + uses: ./.github/actions/dynamic-dry-run + with: + benchmark_spec: saxpy+openmp + system_spec: cscs-daint + + - name: cscs-eiger + uses: ./.github/actions/dynamic-dry-run + with: + benchmark_spec: saxpy+openmp + system_spec: cscs-eiger + + - name: generic-x86 + uses: ./.github/actions/dynamic-dry-run + with: + benchmark_spec: saxpy+openmp + system_spec: generic-x86 + + - name: jsc-juwels + uses: ./.github/actions/dynamic-dry-run + with: + benchmark_spec: saxpy+openmp + system_spec: jsc-juwels + + - name: lanl-venado + uses: ./.github/actions/dynamic-dry-run + with: + benchmark_spec: saxpy+openmp + system_spec: lanl-venado + + - name: llnl-cluster + uses: ./.github/actions/dynamic-dry-run + with: + benchmark_spec: saxpy+openmp + system_spec: llnl-cluster + + - name: llnl-elcapitan + uses: ./.github/actions/dynamic-dry-run + with: + benchmark_spec: saxpy+rocm + system_spec: llnl-elcapitan + + - name: llnl-sierra + uses: ./.github/actions/dynamic-dry-run + with: + benchmark_spec: saxpy+cuda + system_spec: llnl-sierra + + - name: riken-fugaku + uses: ./.github/actions/dynamic-dry-run + with: + benchmark_spec: saxpy+openmp + system_spec: riken-fugaku saxpy: runs-on: ubuntu-22.04