-
Notifications
You must be signed in to change notification settings - Fork 15
Add ROCm CI #321
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add ROCm CI #321
Changes from all commits
6e81e11
a637253
7d7d85d
482bfb6
65e46ad
f02c85e
495ea6e
ccb12e3
f50a5dd
ea8107d
b7fb42f
7f27e8a
a0a92d2
1f09f8d
56e2ca8
dd97285
1459cd0
b6e0f74
5ded729
696f0b5
7719d65
e5d86cd
0558fb8
a687f06
0451b15
c772e7c
cd3bfaa
d4045cb
aa4944f
a4cff35
a7e1847
9cbb44d
6735b06
c0e12b6
b673869
e08d41b
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,152 @@ | ||
| spack: | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. we should not use centos anymore. rocky is the replacement for rhel builds.
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Good! That simplifies things
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I assume I can remove the centos build then, otherwise let me know :) |
||
| config: | ||
| install_tree: | ||
| root: $spack/.. | ||
| projections: | ||
| all: '{compiler.name}-{compiler.version}/{name}-{version}-{hash}' | ||
| misc_cache: $spack/../misc_cache | ||
| test_stage: $spack/../test_stage | ||
| build_stage:: | ||
| - $spack/../build_stage | ||
|
|
||
| # Regular TPLs do not need views | ||
| view: false | ||
|
|
||
| # Include shared variants and versions | ||
| include: | ||
| - ../defaults.yaml | ||
| - ../versions.yaml | ||
|
|
||
| packages: | ||
| all: | ||
| target: [x86_64] | ||
| providers: | ||
| blas: [netlib-lapack] | ||
| lapack: [netlib-lapack] | ||
| mpi: [openmpi] | ||
|
|
||
| gcc: | ||
| version: [8.3.1] | ||
| buildable: false | ||
| externals: | ||
| - spec: gcc@8.3.1 languages:='c,c++,fortran' | ||
| prefix: /opt/rh/devtoolset-8/root/usr | ||
| extra_attributes: | ||
| compilers: | ||
| c: /opt/rh/devtoolset-8/root/usr/bin/gcc | ||
| cxx: /opt/rh/devtoolset-8/root/usr/bin/g++ | ||
| fortran: /opt/rh/devtoolset-8/root/usr/bin/gfortran | ||
| autoconf: | ||
| version: [2.71] | ||
| buildable: false | ||
| externals: | ||
| - spec: autoconf@2.71 | ||
| prefix: /usr | ||
| automake: | ||
| version: [1.16.5] | ||
| buildable: false | ||
| externals: | ||
| - spec: automake@1.16.5 | ||
| prefix: /usr | ||
| cmake: | ||
| version: [3.28.3] | ||
| buildable: false | ||
| externals: | ||
| - spec: cmake@3.28.3 | ||
| prefix: /usr/local | ||
| cuda: | ||
| buildable: False | ||
| externals: | ||
| - spec: cuda@11.8.0 +allow-unsupported-compilers | ||
| prefix: /usr/local/cuda | ||
| findutils: | ||
| version: [4.7.0] | ||
| buildable: false | ||
| externals: | ||
| - spec: findutils@4.7.0 | ||
| prefix: /usr | ||
| m4: | ||
| buildable: false | ||
| externals: | ||
| - spec: m4@1.4.18 | ||
| prefix: /usr | ||
| mpfr: | ||
| buildable: false | ||
| externals: | ||
| - spec: mpfr@6.0.2 | ||
| prefix: /usr | ||
|
|
||
| # Spack may grab for mpi & we don't want to use them | ||
| mpi: | ||
| buildable: false | ||
|
|
||
| netlib-lapack: | ||
| buildable: false | ||
| externals: | ||
| - spec: netlib-lapack@3.10.0 | ||
| prefix: /usr | ||
| netlib-blas: | ||
| buildable: false | ||
| externals: | ||
| - spec: netlib-blas@3.10.0 | ||
| prefix: /usr | ||
| openmpi: | ||
| externals: | ||
| - spec: openmpi@4.1.2%clang | ||
| prefix: /usr | ||
| - spec: openmpi@1.10.7%gcc@8 | ||
| prefix: /usr/lib64/openmpi | ||
| modules: [mpi] | ||
| - spec: openmpi@4.1.2%gcc@9 | ||
| prefix: /usr | ||
| - spec: openmpi@4.1.2%gcc@10 | ||
| prefix: /usr | ||
| - spec: openmpi@4.1.2%gcc@11 | ||
| prefix: /usr | ||
| - spec: openmpi@4.1.2%gcc@12 | ||
| prefix: /usr | ||
| perl: | ||
| buildable: false | ||
| externals: | ||
| - spec: perl@5.34.0 | ||
| prefix: /usr | ||
| pkg-config: | ||
| buildable: false | ||
| externals: | ||
| - spec: pkg-config@0.29.2 | ||
| prefix: /usr | ||
| py-sphinx: | ||
| buildable: false | ||
| externals: | ||
| - spec: py-sphinx@4.3.2 | ||
| prefix: /usr | ||
| python: | ||
| buildable: false | ||
| externals: | ||
| - spec: python@3.10.12 | ||
| prefix: /usr | ||
| readline: | ||
| buildable: false | ||
| externals: | ||
| - spec: readline@8.0 | ||
| prefix: /usr | ||
| tar: | ||
| buildable: false | ||
| externals: | ||
| - spec: tar@1.34 | ||
| prefix: /usr | ||
| unzip: | ||
| buildable: false | ||
| externals: | ||
| - spec: unzip@6.0 | ||
| prefix: /usr | ||
| xz: | ||
| buildable: false | ||
| externals: | ||
| - spec: xz@5.2.5 | ||
| prefix: /usr | ||
| zlib: | ||
| buildable: false | ||
| externals: | ||
| - spec: zlib@1.2.11 | ||
| prefix: /usr | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -17,32 +17,27 @@ spack: | |
| - ../defaults.yaml | ||
| - ../versions.yaml | ||
|
|
||
| compilers:: | ||
| - compiler: | ||
| spec: gcc@=9.4.0 | ||
| paths: | ||
| cc: /data_local/sw/spack/0.17.0/opt/spack/linux-rhel8-power9le/gcc-8.4.1/gcc-9.4.0-xe5cqnyajaqz75up3gflln5zlj2rue5v/bin/gcc | ||
| cxx: /data_local/sw/spack/0.17.0/opt/spack/linux-rhel8-power9le/gcc-8.4.1/gcc-9.4.0-xe5cqnyajaqz75up3gflln5zlj2rue5v/bin/g++ | ||
| f77: /data_local/sw/spack/0.17.0/opt/spack/linux-rhel8-power9le/gcc-8.4.1/gcc-9.4.0-xe5cqnyajaqz75up3gflln5zlj2rue5v/bin/gfortran | ||
| fc: /data_local/sw/spack/0.17.0/opt/spack/linux-rhel8-power9le/gcc-8.4.1/gcc-9.4.0-xe5cqnyajaqz75up3gflln5zlj2rue5v/bin/gfortran | ||
| flags: {} | ||
| operating_system: almalinux8 | ||
| target: ppc64le | ||
| modules: [] | ||
| environment: | ||
| prepend_path: | ||
| LD_LIBRARY_PATH: /data_local/sw/lsf/10.1/linux3.10-glibc2.17-ppc64le/lib | ||
| extra_rpaths: [] | ||
|
|
||
| packages: | ||
| all: | ||
| target: [x86_64] | ||
| compiler: [gcc] | ||
| providers: | ||
| blas: [openblas] | ||
| lapack: [openblas] | ||
| mpi: [openmpi] | ||
|
|
||
| gcc: | ||
| externals: | ||
| - spec: gcc@9.4.0 languages:='c,c++,fortran' | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. isn't the default to install all languages?
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I think so, but this was recommended somewhere in the documentation files that I was reading for spack. @bmhan12 could you confirm what is the best thing to do here?
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
With Spack 1.0, that is the correct way now to specify compilers (compilers are now treated as packages). However, in addition, if you want to make sure Spack picks your external compiler like we have set before Spack 1.0, you need to add toolchain(s): https://spack.readthedocs.io/en/latest/toolchains_yaml.html I have a wip branch working through the Spack 1.0/toolchain changes here: https://github.com/GEOS-DEV/thirdPartyLibs/tree/feature/han12/spack_v1_noapi |
||
| prefix: /data_local/sw/spack/0.17.0/opt/spack/linux-rhel8-power9le/gcc-8.4.1/gcc-9.4.0-xe5cqnyajaqz75up3gflln5zlj2rue5v | ||
| extra_attributes: | ||
| compilers: | ||
| c: /data_local/sw/spack/0.17.0/opt/spack/linux-rhel8-power9le/gcc-8.4.1/gcc-9.4.0-xe5cqnyajaqz75up3gflln5zlj2rue5v/bin/gcc | ||
| cxx: /data_local/sw/spack/0.17.0/opt/spack/linux-rhel8-power9le/gcc-8.4.1/gcc-9.4.0-xe5cqnyajaqz75up3gflln5zlj2rue5v/bin/g++ | ||
| fortran: /data_local/sw/spack/0.17.0/opt/spack/linux-rhel8-power9le/gcc-8.4.1/gcc-9.4.0-xe5cqnyajaqz75up3gflln5zlj2rue5v/bin/gfortran | ||
| environment: | ||
| prepend_path: | ||
| LD_LIBRARY_PATH: /data_local/sw/lsf/10.1/linux3.10-glibc2.17-ppc64le/lib | ||
|
|
||
| autoconf: | ||
| externals: | ||
| - spec: autoconf@2.69 | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -17,45 +17,32 @@ spack: | |
| - ../defaults.yaml | ||
| - ../versions.yaml | ||
|
|
||
| compilers:: | ||
| - compiler: | ||
| extra_rpaths: [] | ||
| flags: | ||
| cflags: -pthread | ||
| cxxflags: -pthread | ||
| modules: [] | ||
| operating_system: rocky8 | ||
| paths: | ||
| cc: /usr/bin/clang | ||
| cxx: /usr/bin/clang++ | ||
| f77: /usr/bin/gfortran | ||
| fc: /usr/bin/gfortran | ||
| spec: clang@17.0.6 | ||
| target: x86_64 | ||
| - compiler: | ||
| extra_rpaths: [] | ||
| flags: | ||
| cflags: -pthread | ||
| cxxflags: -pthread | ||
| modules: [] | ||
| operating_system: rocky8 | ||
| paths: | ||
| cc: /opt/rh/gcc-toolset-13/root/usr/bin/gcc | ||
| cxx: /opt/rh/gcc-toolset-13/root/usr/bin/g++ | ||
| f77: /opt/rh/gcc-toolset-13/root/usr/bin/gfortran | ||
| fc: /opt/rh/gcc-toolset-13/root/usr/bin/gfortran | ||
| spec: gcc@13.3.1 | ||
| target: x86_64 | ||
|
|
||
| packages: | ||
| all: | ||
| target: [x86_64] | ||
| compiler: [gcc, clang] | ||
| providers: | ||
| blas: [netlib-lapack] | ||
| lapack: [netlib-lapack] | ||
| mpi: [openmpi] | ||
|
|
||
| gcc: | ||
| externals: | ||
| - spec: gcc@13.3.1 languages:='c,c++,fortran' | ||
| prefix: /opt/rh/gcc-toolset-13/root/usr/ | ||
| extra_attributes: | ||
| compilers: | ||
| c: /opt/rh/gcc-toolset-13/root/usr/bin/gcc | ||
| cxx: /opt/rh/gcc-toolset-13/root/usr/bin/g++ | ||
| fortran: /opt/rh/gcc-toolset-13/root/usr/bin/gfortran | ||
| clang: | ||
| externals: | ||
| - spec: clang@17 languages:='c,c++' | ||
| prefix: /usr | ||
| extra_attributes: | ||
| compilers: | ||
| c: /usr/bin/clang-17 | ||
| cxx: /usr/bin/clang++-17 | ||
|
|
||
|
Comment on lines
+28
to
+45
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. What is the reason for the change?
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. That's the new way spack v1 is handling compilers. More info here: https://github.com/spack/spack/releases#compiler-dependencies |
||
| autoconf: | ||
| version: [2.71] | ||
| buildable: false | ||
|
|
@@ -77,9 +64,9 @@ spack: | |
| cuda: | ||
| buildable: False | ||
| externals: | ||
| - spec: cuda@12.9.1%gcc@13.3.1 +allow-unsupported-compilers | ||
| - spec: cuda@12.9.1 +allow-unsupported-compilers %gcc@13.3.1 | ||
| prefix: /usr/local/cuda | ||
| - spec: cuda@12.9.1%clang@17.0.6 +allow-unsupported-compilers | ||
| - spec: cuda@12.9.1 +allow-unsupported-compilers %clang@17.0.6 | ||
| prefix: /usr/local/cuda | ||
| m4: | ||
| buildable: false | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
why was this required?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Here also, that's the new way spack v1 is handling compilers. See https://github.com/spack/spack/releases#compiler-dependencies