From 502717a0f9aeb17eca38d73735322aadca317b19 Mon Sep 17 00:00:00 2001 From: Simon Byrne Date: Mon, 9 Nov 2020 13:55:50 -0800 Subject: [PATCH] More Intel MPI tweaks (#436) * New Intel MPI version * fix script --- .github/workflows/UnitTests.yml | 15 +++++++-------- src/implementations.jl | 9 ++++++--- 2 files changed, 13 insertions(+), 11 deletions(-) diff --git a/.github/workflows/UnitTests.yml b/.github/workflows/UnitTests.yml index 03dc57811..2503698e8 100644 --- a/.github/workflows/UnitTests.yml +++ b/.github/workflows/UnitTests.yml @@ -189,29 +189,28 @@ jobs: id: cache-intelmpi uses: actions/cache@v2 with: - path: l_mpi_2019.7.217.tgz - key: ${{ runner.os }}-intelmpi-2019.7.217 + path: l_mpi_2019.9.304.tgz + key: ${{ runner.os }}-intelmpi-2019.9.304 - name: Download Intel MPI if: steps.cache-intelmpi.outputs.cache-hit != 'true' - run: wget --no-verbose http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/16546/l_mpi_2019.7.217.tgz + run: wget https://registrationcenter-download.intel.com/akdlm/irc_nas/tec/17263/l_mpi_2019.9.304.tgz - name: Install Intel MPI run: | - tar -xzf l_mpi_2019.7.217.tgz - pushd l_mpi_2019.7.217 + tar -xzf l_mpi_2019.9.304.tgz + pushd l_mpi_2019.9.304 cat << EOF > intel.conf ACCEPT_EULA=accept CONTINUE_WITH_OPTIONAL_ERROR=yes PSET_INSTALL_DIR=${HOME}/intel - CONTINUE_WITH_INSTALLDIR_OVERWRITE=no + CONTINUE_WITH_INSTALLDIR_OVERWRITE=yes PSET_MODE=install ARCH_SELECTED=ALL - 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 + 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-compxe-pset EOF ./install.sh --silent intel.conf popd - cat ${HOME}/intel/compilers_and_libraries/linux/mpi/intel64/bin/mpivars.sh - uses: julia-actions/setup-julia@latest with: diff --git a/src/implementations.jl b/src/implementations.jl index 8cccb5bdc..582624baa 100644 --- a/src/implementations.jl +++ b/src/implementations.jl @@ -107,10 +107,13 @@ function identify_implementation() elseif startswith(MPI_LIBRARY_VERSION_STRING, "Intel") impl = IntelMPI - # TODO: figure out how to parse # "Intel(R) MPI Library 2019 Update 4 for Linux* OS" - if (m = match(r"^Intel\(R\) MPI Library (\d+)", MPI_LIBRARY_VERSION_STRING)) !== nothing - version = VersionNumber(m.captures[1]) + if (m = match(r"^Intel\(R\) MPI Library (\d+)(?: Update (\d+))?", MPI_LIBRARY_VERSION_STRING)) !== nothing + if m.captures[2] === nothing + version = VersionNumber(m.captures[1]) + else + version = VersionNumber(m.captures[1]*"."*m.captures[2]) + end end elseif startswith(MPI_LIBRARY_VERSION_STRING, "MVAPICH2")