From b1aa81cab1b48ef48fbc3f5aa4519951bd9d6fdf Mon Sep 17 00:00:00 2001 From: pearce8 Date: Mon, 2 Dec 2024 16:00:22 -0600 Subject: [PATCH 01/20] Replacing dynamic saxpy with dynamic amg on genericx86 --- .github/workflows/run.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/run.yml b/.github/workflows/run.yml index 558be60b1..80c7e25bb 100644 --- a/.github/workflows/run.yml +++ b/.github/workflows/run.yml @@ -372,14 +372,14 @@ jobs: --disable-logger \ workspace setup --dry-run - - name: Dry run dynamic saxpy/openmp with dynamic generic x86 + - name: Dry run dynamic amg2023+openmp with dynamic generic x86 run: | ./bin/benchpark system init --dest=x86-system genericx86 - ./bin/benchpark experiment init --dest=saxpy-omp-generic saxpy+openmp - ./bin/benchpark setup ./saxpy-omp-generic ./x86-system workspace/ + ./bin/benchpark experiment init --dest=amg2023-openmp-generic amg2023+openmp + ./bin/benchpark setup ./amg2023-openmp ./x86-system workspace/ . workspace/setup.sh ramble \ - --workspace-dir "workspace/saxpy-omp-generic/x86-system/workspace" \ + --workspace-dir "workspace/amg2023-openmp-generic/x86-system/workspace" \ --disable-progress-bar \ --disable-logger \ workspace setup --dry-run From f92e6a34611a297b69bba079b84371ca3a78e126 Mon Sep 17 00:00:00 2001 From: Riyaz Haque Date: Thu, 12 Dec 2024 17:44:16 -0800 Subject: [PATCH 02/20] Provide generic lapack spec --- systems/genericx86/system.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/systems/genericx86/system.py b/systems/genericx86/system.py index ef64dc6d5..e63760e95 100644 --- a/systems/genericx86/system.py +++ b/systems/genericx86/system.py @@ -40,4 +40,6 @@ def sw_description(self): pkg_spec: gcc default-mpi: pkg_spec: openmpi + lapack: + pkg_spec: openblas """ From 4ae481d4f7e901f5cc985b4921a62c53910999b7 Mon Sep 17 00:00:00 2001 From: Riyaz Haque Date: Thu, 12 Dec 2024 17:56:23 -0800 Subject: [PATCH 03/20] Fix workflow --- .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 18cc44e2c..759f64258 100644 --- a/.github/workflows/run.yml +++ b/.github/workflows/run.yml @@ -420,7 +420,7 @@ jobs: run: | ./bin/benchpark system init --dest=x86-system genericx86 ./bin/benchpark experiment init --dest=amg2023-openmp-generic amg2023+openmp - ./bin/benchpark setup ./amg2023-openmp ./x86-system workspace/ + ./bin/benchpark setup ./amg2023-openmp-generic ./x86-system workspace/ . workspace/setup.sh ramble \ --workspace-dir "workspace/amg2023-openmp-generic/x86-system/workspace" \ From 346c37cbd82dc110ef168635ee4ca2e49bb16bfe Mon Sep 17 00:00:00 2001 From: Riyaz Haque Date: Thu, 12 Dec 2024 18:05:30 -0800 Subject: [PATCH 04/20] workflow --- .github/workflows/run.yml | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/.github/workflows/run.yml b/.github/workflows/run.yml index 759f64258..a0bac4344 100644 --- a/.github/workflows/run.yml +++ b/.github/workflows/run.yml @@ -431,10 +431,11 @@ jobs: - name: Dry run dynamic saxpy/openmp with dynamic aws run: | ./bin/benchpark system init --dest=aws1 aws-pcluster instance_type=hpc6a.48xlarge - ./bin/benchpark setup ./saxpy-omp-generic ./aws1 workspace/ + ./bin/benchpark experiment init --dest=saxpy-openmp-generic saxpy+openmp + ./bin/benchpark setup ./saxpy-openmp-generic ./aws1 workspace/ . workspace/setup.sh ramble \ - --workspace-dir "workspace/saxpy-omp-generic/aws1/workspace" \ + --workspace-dir "workspace/saxpy-openmp-generic/aws1/workspace" \ --disable-progress-bar \ --disable-logger \ workspace setup --dry-run @@ -491,11 +492,11 @@ jobs: - name: Dry run dynamic saxpy/openmp with dynamic fugaku run: | ./bin/benchpark system init --dest=fugaku-system fugaku - ./bin/benchpark experiment init --dest=saxpy-omp-fugaku saxpy+openmp - ./bin/benchpark setup ./saxpy-omp-fugaku ./fugaku-system workspace/ + ./bin/benchpark experiment init --dest=saxpy-openmp-fugaku saxpy+openmp + ./bin/benchpark setup ./saxpy-openmp-fugaku ./fugaku-system workspace/ . workspace/setup.sh ramble \ - --workspace-dir workspace/saxpy-omp-fugaku/Fugaku-cf3cb1d/workspace \ + --workspace-dir workspace/saxpy-openmp-fugaku/Fugaku-cf3cb1d/workspace \ --disable-progress-bar \ --disable-logger \ workspace setup --dry-run From 50a8b60279e7017f4028a0b84076259e804cdfed Mon Sep 17 00:00:00 2001 From: pearce8 Date: Sun, 19 Jan 2025 18:19:05 -0800 Subject: [PATCH 05/20] remove default-lapack --- experiments/amg2023/experiment.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/experiments/amg2023/experiment.py b/experiments/amg2023/experiment.py index 5866eea6e..dbb15e5b4 100644 --- a/experiments/amg2023/experiment.py +++ b/experiments/amg2023/experiment.py @@ -140,8 +140,6 @@ def compute_spack_section(self): system_specs = {} system_specs["compiler"] = "default-compiler" system_specs["mpi"] = "default-mpi" - system_specs["lapack"] = "default-lapack" - system_specs["blas"] = "default-blas" # set package spack specs # empty package_specs value implies external package From a1582a569fe1734112eecee5f570e850b98c6e01 Mon Sep 17 00:00:00 2001 From: pearce8 Date: Sun, 19 Jan 2025 18:25:50 -0800 Subject: [PATCH 06/20] lapack --- experiments/amg2023/experiment.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/experiments/amg2023/experiment.py b/experiments/amg2023/experiment.py index dbb15e5b4..d884c6b3e 100644 --- a/experiments/amg2023/experiment.py +++ b/experiments/amg2023/experiment.py @@ -140,6 +140,8 @@ def compute_spack_section(self): system_specs = {} system_specs["compiler"] = "default-compiler" system_specs["mpi"] = "default-mpi" + system_specs["lapack"] = "lapack" + system_specs["blas"] = "blas" # set package spack specs # empty package_specs value implies external package From ad2eab5c87e2cd73971c3240cb15af69ea992de8 Mon Sep 17 00:00:00 2001 From: pearce8 Date: Sun, 19 Jan 2025 18:28:02 -0800 Subject: [PATCH 07/20] removing default lapack --- experiments/gromacs/experiment.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/experiments/gromacs/experiment.py b/experiments/gromacs/experiment.py index 9e77077c7..2eaa8e23b 100644 --- a/experiments/gromacs/experiment.py +++ b/experiments/gromacs/experiment.py @@ -93,8 +93,8 @@ def compute_spack_section(self): system_specs = {} system_specs["compiler"] = "default-compiler" system_specs["mpi"] = "default-mpi" - system_specs["blas"] = "default-blas" - system_specs["lapack"] = "default-lapack" + system_specs["blas"] = "blas" + system_specs["lapack"] = "lapack" # set package spack specs # empty package_specs value implies external package From e2ac8890410d71c4925ba90fa38e64e043960177 Mon Sep 17 00:00:00 2001 From: pearce8 Date: Sun, 19 Jan 2025 18:57:44 -0800 Subject: [PATCH 08/20] add lapack --- systems/llnl-sierra/system.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/systems/llnl-sierra/system.py b/systems/llnl-sierra/system.py index c09dfc180..31d9c2a12 100644 --- a/systems/llnl-sierra/system.py +++ b/systems/llnl-sierra/system.py @@ -305,10 +305,6 @@ def sw_description(self): pkg_spec: clang default-mpi: pkg_spec: spectrum-mpi - default-lapack: - pkg_spec: {self.spec.variants["lapack"][0]} - default-blas: - pkg_spec: {self.spec.variants["blas"][0]} compiler-xl: pkg_spec: xl mpi-xl: @@ -325,6 +321,10 @@ def sw_description(self): pkg_spec: spectrum-mpi blas: pkg_spec: cublas - cublas-cuda: + blas-cuda: pkg_spec: cublas + lapack: + pkg_spec: cusolver + lapack-cuda: + pkg_spec: cusolver """ From 37a859992c2c59254675445f0235316c3e5d806b Mon Sep 17 00:00:00 2001 From: pearce8 Date: Sun, 19 Jan 2025 19:04:13 -0800 Subject: [PATCH 09/20] lint From 05d91a791fafb9b600a12804e8a2a47dacb2f528 Mon Sep 17 00:00:00 2001 From: pearce8 Date: Sun, 19 Jan 2025 19:08:27 -0800 Subject: [PATCH 10/20] adding blas --- systems/genericx86/system.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/systems/genericx86/system.py b/systems/genericx86/system.py index e63760e95..3a6e12d0d 100644 --- a/systems/genericx86/system.py +++ b/systems/genericx86/system.py @@ -40,6 +40,8 @@ def sw_description(self): pkg_spec: gcc default-mpi: pkg_spec: openmpi + blas: + pkg_spec: openblas lapack: pkg_spec: openblas """ From e7e02136590f08ef7b926d6dce44e434de0f2cc6 Mon Sep 17 00:00:00 2001 From: pearce8 Date: Sun, 19 Jan 2025 19:08:52 -0800 Subject: [PATCH 11/20] removing default lapack --- experiments/laghos/experiment.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/experiments/laghos/experiment.py b/experiments/laghos/experiment.py index 3691b1d5e..1e4575244 100644 --- a/experiments/laghos/experiment.py +++ b/experiments/laghos/experiment.py @@ -66,8 +66,8 @@ def compute_spack_section(self): system_specs = {} system_specs["compiler"] = "default-compiler" system_specs["mpi"] = "default-mpi" - system_specs["lapack"] = "default-lapack" - system_specs["blas"] = "default-blas" + system_specs["lapack"] = "lapack" + system_specs["blas"] = "blas" # set package spack specs # empty package_specs value implies external package From da793426319c34116e41473fdf612632522892e1 Mon Sep 17 00:00:00 2001 From: pearce8 Date: Sun, 19 Jan 2025 19:17:28 -0800 Subject: [PATCH 12/20] removing default blas --- experiments/remhos/experiment.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/experiments/remhos/experiment.py b/experiments/remhos/experiment.py index bb3c7bab4..13dc921e9 100644 --- a/experiments/remhos/experiment.py +++ b/experiments/remhos/experiment.py @@ -92,8 +92,8 @@ def compute_spack_section(self): system_specs = {} system_specs["compiler"] = "default-compiler" system_specs["mpi"] = "default-mpi" - system_specs["lapack"] = "default-lapack" - system_specs["blas"] = "default-blas" + system_specs["blas"] = "blas" + system_specs["lapack"] = "lapack" # set package spack specs # empty package_specs value implies external package From 91c9aab7a2764aa1155859e05b6d1232cb061a76 Mon Sep 17 00:00:00 2001 From: pearce8 Date: Sun, 19 Jan 2025 19:20:15 -0800 Subject: [PATCH 13/20] remove default blas --- systems/llnl-cluster/system.py | 4 ---- 1 file changed, 4 deletions(-) diff --git a/systems/llnl-cluster/system.py b/systems/llnl-cluster/system.py index c42f470c3..a14b55fc2 100644 --- a/systems/llnl-cluster/system.py +++ b/systems/llnl-cluster/system.py @@ -100,10 +100,6 @@ def sw_description(self): pkg_spec: gcc default-mpi: pkg_spec: mvapich2 - default-lapack: - pkg_spec: {self.spec.variants["lapack"][0]} - default-blas: - pkg_spec: {self.spec.variants["blas"][0]} compiler-gcc: pkg_spec: gcc compiler-intel: From 661081b3aae5b22e70d94724b10648385e094648 Mon Sep 17 00:00:00 2001 From: pearce8 Date: Sun, 19 Jan 2025 19:24:01 -0800 Subject: [PATCH 14/20] remove default blas --- systems/llnl-elcapitan/system.py | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/systems/llnl-elcapitan/system.py b/systems/llnl-elcapitan/system.py index dbb1142c0..f1540a2d1 100644 --- a/systems/llnl-elcapitan/system.py +++ b/systems/llnl-elcapitan/system.py @@ -376,10 +376,6 @@ def sw_description(self): pkg_spec: cce default-mpi: pkg_spec: cray-mpich - default-lapack: - pkg_spec: {self.spec.variants["lapack"][0]} - default-blas: - pkg_spec: {self.spec.variants["blas"][0]} compiler-rocm: pkg_spec: cce compiler-amdclang: @@ -396,8 +392,10 @@ def sw_description(self): pkg_spec: rocblas blas-rocm: pkg_spec: rocblas - lapack-rocm: - pkg_spec: rocsolver lapack: + pkg_spec: rocsolver + lapack-oneapi: pkg_spec: intel-oneapi-mkl + lapack-rocm: + pkg_spec: rocsolver """ From 674d7991241a4ccbab59071a2f2ed2f35136820f Mon Sep 17 00:00:00 2001 From: pearce8 Date: Sun, 19 Jan 2025 22:55:50 -0800 Subject: [PATCH 15/20] Remove f-string --- systems/llnl-cluster/system.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/systems/llnl-cluster/system.py b/systems/llnl-cluster/system.py index a14b55fc2..81e68788b 100644 --- a/systems/llnl-cluster/system.py +++ b/systems/llnl-cluster/system.py @@ -93,7 +93,7 @@ def sw_description(self): will fail if these variables are not defined though, so for now they are still generated (but with more-generic values). """ - return f"""\ + return """\ software: packages: default-compiler: From 1782dbbd3ee79e15fb0672467cc0b5e2a8e7887b Mon Sep 17 00:00:00 2001 From: pearce8 Date: Sun, 19 Jan 2025 22:56:29 -0800 Subject: [PATCH 16/20] Remove f-string --- systems/llnl-elcapitan/system.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/systems/llnl-elcapitan/system.py b/systems/llnl-elcapitan/system.py index f1540a2d1..e2eeaae3b 100644 --- a/systems/llnl-elcapitan/system.py +++ b/systems/llnl-elcapitan/system.py @@ -369,7 +369,7 @@ def sw_description(self): will fail if these variables are not defined though, so for now they are still generated (but with more-generic values). """ - return f"""\ + return """\ software: packages: default-compiler: From 6bea15afdc4618ccaff693681509f1cabbeaa73f Mon Sep 17 00:00:00 2001 From: pearce8 Date: Sun, 19 Jan 2025 22:57:48 -0800 Subject: [PATCH 17/20] Remove f-string --- systems/llnl-sierra/system.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/systems/llnl-sierra/system.py b/systems/llnl-sierra/system.py index 31d9c2a12..74e17488c 100644 --- a/systems/llnl-sierra/system.py +++ b/systems/llnl-sierra/system.py @@ -298,7 +298,7 @@ def sw_description(self): will fail if these variables are not defined though, so for now they are still generated (but with more-generic values). """ - return f"""\ + return """\ software: packages: default-compiler: From d9d92fb367a6bd47d1fcdeecc8c6c1987b6f6987 Mon Sep 17 00:00:00 2001 From: pearce8 Date: Mon, 20 Jan 2025 00:33:42 -0800 Subject: [PATCH 18/20] enabling choice of compiler --- systems/llnl-cluster/system.py | 16 ++-------------- 1 file changed, 2 insertions(+), 14 deletions(-) diff --git a/systems/llnl-cluster/system.py b/systems/llnl-cluster/system.py index 81e68788b..68a79a633 100644 --- a/systems/llnl-cluster/system.py +++ b/systems/llnl-cluster/system.py @@ -37,18 +37,6 @@ class LlnlCluster(System): description="Which compiler to use", ) - variant( - "lapack", - default="intel-oneapi-mkl", - description="Which lapack to use", - ) - - variant( - "blas", - default="intel-oneapi-mkl", - description="Which blas to use", - ) - def initialize(self): super().initialize() @@ -93,11 +81,11 @@ def sw_description(self): will fail if these variables are not defined though, so for now they are still generated (but with more-generic values). """ - return """\ + return f"""\ software: packages: default-compiler: - pkg_spec: gcc + pkg_spec: {self.spec.variants["compiler"][0]} default-mpi: pkg_spec: mvapich2 compiler-gcc: From c26b22c54ec386f9e1e7b1bcda3ad823376744c4 Mon Sep 17 00:00:00 2001 From: pearce8 Date: Mon, 20 Jan 2025 00:37:48 -0800 Subject: [PATCH 19/20] testing intel compiler --- .github/workflows/run.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/run.yml b/.github/workflows/run.yml index b632e4935..2616e1618 100644 --- a/.github/workflows/run.yml +++ b/.github/workflows/run.yml @@ -224,7 +224,7 @@ jobs: - name: Dry run dynamic gromacs/openmp with dynamic Ruby run: | - ./bin/benchpark system init --dest=cluster-system llnl-cluster compiler=gcc lapack=intel-oneapi-mkl blas=intel-oneapi-mkl + ./bin/benchpark system init --dest=cluster-system llnl-cluster compiler=gcc system_id=$(./bin/benchpark system id ./cluster-system) ./bin/benchpark experiment init --dest=gromacs-openmp gromacs +openmp~cuda~rocm gpu-aware-mpi=off ./bin/benchpark setup ./gromacs-openmp ./cluster-system workspace/ @@ -376,9 +376,9 @@ jobs: --disable-logger \ workspace setup --dry-run - - name: Dry run dynamic saxpy/openmp with dynamic llnl-cluster ruby + - name: Dry run dynamic saxpy/openmp with dynamic llnl-cluster ruby compiler=intel run: | - ./bin/benchpark system init --dest=ruby-system llnl-cluster cluster=ruby + ./bin/benchpark system init --dest=ruby-system llnl-cluster cluster=ruby compiler=intel system_id=$(./bin/benchpark system id ./ruby-system) ./bin/benchpark experiment init --dest=saxpy-openmp saxpy+openmp ./bin/benchpark setup ./saxpy-openmp ./ruby-system workspace/ @@ -440,7 +440,7 @@ jobs: - name: Dry run dynamic remhos/mpi with dynamic Ruby run: | - ./bin/benchpark system init --dest=cluster-system1 llnl-cluster compiler=gcc lapack=intel-oneapi-mkl blas=intel-oneapi-mkl + ./bin/benchpark system init --dest=cluster-system1 llnl-cluster compiler=gcc system_id=$(./bin/benchpark system id ./cluster-system1) ./bin/benchpark experiment init --dest=remhos-mpi-ruby remhos ~cuda~rocm caliper=mpi,time ./bin/benchpark setup ./remhos-mpi-ruby ./cluster-system1 workspace/ From 474616b2618847c8a01cc50ebda59074e0a6d2b7 Mon Sep 17 00:00:00 2001 From: pearce8 Date: Mon, 20 Jan 2025 17:01:12 -0800 Subject: [PATCH 20/20] reenabling variants --- systems/llnl-elcapitan/system.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/systems/llnl-elcapitan/system.py b/systems/llnl-elcapitan/system.py index e2eeaae3b..d221ac9cc 100644 --- a/systems/llnl-elcapitan/system.py +++ b/systems/llnl-elcapitan/system.py @@ -41,7 +41,7 @@ class LlnlElcapitan(System): variant( "compiler", default="cce", - values=("gcc", "cce"), + values=("cce", "gcc"), description="Which compiler to use", ) @@ -369,11 +369,11 @@ def sw_description(self): will fail if these variables are not defined though, so for now they are still generated (but with more-generic values). """ - return """\ + return f"""\ software: packages: default-compiler: - pkg_spec: cce + pkg_spec: {self.spec.variants["compiler"][0]} default-mpi: pkg_spec: cray-mpich compiler-rocm: @@ -389,11 +389,11 @@ def sw_description(self): mpi-gcc: pkg_spec: cray-mpich~gtl blas: - pkg_spec: rocblas + pkg_spec: {self.spec.variants["blas"][0]} blas-rocm: pkg_spec: rocblas lapack: - pkg_spec: rocsolver + pkg_spec: {self.spec.variants["lapack"][0]} lapack-oneapi: pkg_spec: intel-oneapi-mkl lapack-rocm: