Skip to content

Commit 6906525

Browse files
authored
add Intel MPI to test matrix (#435)
1 parent c5b1027 commit 6906525

File tree

1 file changed

+80
-0
lines changed

1 file changed

+80
-0
lines changed

.github/workflows/UnitTests.yml

Lines changed: 80 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -162,6 +162,86 @@ jobs:
162162
- uses: julia-actions/julia-buildpkg@latest
163163
- uses: julia-actions/julia-runtest@latest
164164

165+
166+
test-intel-linux:
167+
timeout-minutes: 20
168+
strategy:
169+
matrix:
170+
julia_version: ["1.5", "nightly"]
171+
172+
fail-fast: false
173+
174+
runs-on: ubuntu-18.04 # 20.04 not supported
175+
176+
env:
177+
JULIA_MPI_BINARY: system
178+
179+
steps:
180+
- name: Cancel Previous Runs
181+
uses: styfle/[email protected]
182+
with:
183+
access_token: ${{ github.token }}
184+
185+
- name: Checkout
186+
uses: actions/[email protected]
187+
188+
- name: Cache Intel MPI
189+
id: cache-intelmpi
190+
uses: actions/cache@v2
191+
with:
192+
path: l_mpi_2019.7.217.tgz
193+
key: ${{ runner.os }}-intelmpi-2019.7.217
194+
195+
- name: Download Intel MPI
196+
if: steps.cache-intelmpi.outputs.cache-hit != 'true'
197+
run: wget --no-verbose http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/16546/l_mpi_2019.7.217.tgz
198+
199+
- name: Install Intel MPI
200+
run: |
201+
tar -xzf l_mpi_2019.7.217.tgz
202+
pushd l_mpi_2019.7.217
203+
cat << EOF > intel.conf
204+
ACCEPT_EULA=accept
205+
CONTINUE_WITH_OPTIONAL_ERROR=yes
206+
PSET_INSTALL_DIR=${HOME}/intel
207+
CONTINUE_WITH_INSTALLDIR_OVERWRITE=no
208+
PSET_MODE=install
209+
ARCH_SELECTED=ALL
210+
COMPONENTS=;intel-conda-index-tool__x86_64;intel-comp-l-all-vars__noarch;intel-comp-nomcu-vars__noarch;intel-imb__x86_64;intel-mpi-rt__x86_64;intel-mpi-sdk__x86_64;intel-mpi-doc__x86_64;intel-mpi-samples__x86_64;intel-mpi-installer-license__x86_64;intel-conda-impi_rt-linux-64-shadow-package__x86_64;intel-conda-impi-devel-linux-64-shadow-package__x86_64;intel-mpi-psxe__x86_64;intel-psxe-common__noarch;intel-psxe-common-doc__noarch;intel-compxe-pset
211+
EOF
212+
./install.sh --silent intel.conf
213+
popd
214+
cat ${HOME}/intel/compilers_and_libraries/linux/mpi/intel64/bin/mpivars.sh
215+
216+
- uses: julia-actions/setup-julia@latest
217+
with:
218+
version: ${{ matrix.julia_version }}
219+
220+
# https://discourse.julialang.org/t/recommendation-cache-julia-artifacts-in-ci-services/35484
221+
- name: Cache artifacts
222+
uses: actions/cache@v1
223+
env:
224+
cache-name: cache-artifacts
225+
with:
226+
path: ~/.julia/artifacts
227+
key: ${{ runner.os }}-test-${{ env.cache-name }}-${{ hashFiles('**/Project.toml') }}
228+
restore-keys: |
229+
${{ runner.os }}-test-${{ env.cache-name }}-
230+
${{ runner.os }}-test-
231+
${{ runner.os }}-
232+
233+
# we can't use the usual actions here as we need to ensure the environment variables are set
234+
- name: "Build package"
235+
run: |
236+
source ${HOME}/intel/compilers_and_libraries/linux/mpi/intel64/bin/mpivars.sh release
237+
julia --project -e 'using Pkg; Pkg.instantiate(verbose=true); Pkg.build(verbose=true)'
238+
- name: "Run tests"
239+
run: |
240+
source ${HOME}/intel/compilers_and_libraries/linux/mpi/intel64/bin/mpivars.sh release
241+
julia --project -e 'using Pkg; Pkg.test()'
242+
243+
244+
165245
test-system-msmpi:
166246
timeout-minutes: 20
167247
strategy:

0 commit comments

Comments
 (0)