forked from Reference-ScaLAPACK/scalapack
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Adds 2 Github Workflows to ScaLAPACK.
- The first one builds with GNU Make and tests the examples. - Second one builds with CMake and runs all tests. - Fix bugs on the CMake build system (same fix from Reference-ScaLAPACK#57). - ${MPIEXEC_PREFLAGS} was added to the test executables and allow for passing flags to mpiexec.
- Loading branch information
1 parent
d4d0066
commit 1d4a278
Showing
7 changed files
with
296 additions
and
163 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,79 @@ | ||
name: CMake CI | ||
|
||
on: | ||
push: | ||
paths-exclude: | ||
- '.github/workflows/make.yml' | ||
- '.gitignore' | ||
- 'README' | ||
- '**README' | ||
- 'LICENSE' | ||
- '**Makefile' | ||
- 'SLmake.inc.example' | ||
pull_request: | ||
paths-exclude: | ||
- '.github/workflows/make.yml' | ||
- '.gitignore' | ||
- 'README' | ||
- '**README' | ||
- 'LICENSE' | ||
- '**Makefile' | ||
- 'SLmake.inc.example' | ||
|
||
env: | ||
CFLAGS: "-Wall -pedantic" | ||
FFLAGS: "-fcheck=all,no-bounds" | ||
BUILD_TYPE: Release | ||
MPIEXEC_PREFLAGS: "--oversubscribe" | ||
|
||
defaults: | ||
run: | ||
shell: bash | ||
|
||
jobs: | ||
|
||
build-all: | ||
runs-on: ubuntu-latest | ||
|
||
steps: | ||
|
||
- name: Checkout ScaLAPACK | ||
uses: actions/checkout@v2 | ||
|
||
- name: Install ninja-build tool | ||
uses: seanmiddleditch/gha-setup-ninja@v3 | ||
|
||
- name: Setup MPI | ||
# uses: mpi4py/setup-mpi@v1 | ||
run: | | ||
sudo apt -y update | ||
sudo apt -y install openmpi-bin libopenmpi-dev | ||
- name: Install BLAS and LAPACK | ||
run: sudo apt -y install libblas-dev liblapack-dev | ||
|
||
- name: CMake configuration | ||
run: > | ||
cmake -B build | ||
-G Ninja | ||
-D CMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} | ||
-D CMAKE_INSTALL_PREFIX=${{github.workspace}}/scalapack_install | ||
-D BUILD_SHARED_LIBS=ON | ||
-D SCALAPACK_BUILD_TESTING=ON | ||
-D MPIEXEC_PREFLAGS=${{env.MPIEXEC_PREFLAGS}} | ||
- name: Build | ||
working-directory: ${{github.workspace}}/build | ||
run: | | ||
ctest -D ExperimentalStart | ||
ctest -D ExperimentalConfigure | ||
ctest -D ExperimentalBuild | ||
- name: Test | ||
working-directory: ${{github.workspace}}/build | ||
run: | | ||
ctest -D ExperimentalTest --schedule-random --output-on-failure --timeout 180 | ||
ctest -D ExperimentalSubmit | ||
- name: Install | ||
run: cmake --build build --target install |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,52 @@ | ||
name: Makefile CI | ||
|
||
on: | ||
push: | ||
paths-exclude: | ||
- '.github/workflows/cmake.yml' | ||
- '.gitignore' | ||
- 'README' | ||
- '**README' | ||
- 'LICENSE' | ||
- 'CMAKE**' | ||
- '**CMakeLists.txt' | ||
pull_request: | ||
paths-exclude: | ||
- '.github/workflows/cmake.yml' | ||
- '.gitignore' | ||
- 'README' | ||
- '**README' | ||
- 'LICENSE' | ||
- 'CMAKE**' | ||
- '**CMakeLists.txt' | ||
|
||
defaults: | ||
run: | ||
shell: bash | ||
|
||
jobs: | ||
|
||
build-all: | ||
runs-on: ubuntu-latest | ||
|
||
steps: | ||
|
||
- name: Checkout ScaLAPACK | ||
uses: actions/checkout@v2 | ||
|
||
- name: Setup MPI | ||
uses: mpi4py/setup-mpi@v1 | ||
|
||
- name: Build ScaLAPACK | ||
run: | | ||
cp SLmake.inc.example SLmake.inc | ||
make --silent -j lib | ||
make --silent all | ||
- name: Run examples | ||
working-directory: ${{github.workspace}}/EXAMPLE | ||
run: | | ||
mpiexec -n 4 ./xsscaex | ||
mpiexec -n 4 ./xdscaex | ||
mpiexec -n 4 ./xcscaex | ||
mpiexec -n 4 ./xzscaex |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.