ILP64 : need to use docker. mkl can't be installed from bionic.
This commit is contained in:
+48
-30
@@ -159,7 +159,7 @@ jobs:
|
||||
cd $TRAVIS_BUILD_DIR && mkdir -p build && cd build && \
|
||||
cmake -DEXAMPLES=ON -DICB=ON -DMPI=ON -DPYTHON3=ON -DBOOST_PYTHON_LIBSUFFIX='36' .. && \
|
||||
export VERBOSE=1 && make all && make test
|
||||
# xenial <=> coverage: "recent" systems with ICB
|
||||
# coverage: "recent" systems with ICB
|
||||
- stage: coverage
|
||||
dist: xenial
|
||||
script: |
|
||||
@@ -182,37 +182,55 @@ jobs:
|
||||
head -n 50 coveralls.log && tail -n 50 coveralls.log \
|
||||
&& \
|
||||
head -n 50 coveralls.json && tail -n 50 coveralls.json
|
||||
# bionic <=> interface64: "recent" systems with ICB + MKL + ILP64
|
||||
# interface64: "recent" systems with ICB + MKL + ILP64 (need debian/testing to get MKL-ILP64)
|
||||
# note: when you PR, docker-cp provides, in the container, the branch associated with the PR (not master where there's nothing new)
|
||||
# 1. docker create --name mobydick IMAGE CMD <=> create a container (= instance of image) but container is NOT yet started
|
||||
# 2. docker cp -a ${TRAVIS_BUILD_DIR} mobydick:/tmp <=> copy git repository (CI worker, checkout-ed on PR branch) into the container
|
||||
# note: docker-cp works only if copy from/to containers (not images)
|
||||
# 3. docker start -a mobydick <=> start to run the container (initialized with docker-cp)
|
||||
- stage: interface64
|
||||
dist: bionic
|
||||
before_install:
|
||||
- export DEBIAN_FRONTEND=noninteractive
|
||||
- sudo apt-get -y update
|
||||
- sudo apt-get -y install dialog
|
||||
- echo yes | sudo apt-get -y install intel-mkl libmkl-dev
|
||||
dist: xenial
|
||||
script: |
|
||||
./bootstrap && \
|
||||
export FFLAGS='-DMKL_ILP64 -I/usr/include/mkl' && \
|
||||
export FCFLAGS='-DMKL_ILP64 -I/usr/include/mkl' && \
|
||||
export LIBS='-Wl,--no-as-needed -L/usr/lib/x86_64-linux-gnu -lmkl_sequential -lmkl_core -lpthread -lm -ldl' && \
|
||||
export INTERFACE64=1 && \
|
||||
./configure --with-blas=mkl_gf_ilp64 --with-lapack=mkl_gf_ilp64 --enable-mpi --enable-icb-exmm && \
|
||||
export VERBOSE=1 && \
|
||||
make all && \
|
||||
make check && \
|
||||
- stage: interface64
|
||||
dist: bionic
|
||||
before_install:
|
||||
- export DEBIAN_FRONTEND=noninteractive
|
||||
- sudo apt-get -y update
|
||||
- sudo apt-get -y install dialog
|
||||
- echo yes | sudo apt-get -y install intel-mkl libmkl-dev
|
||||
script: |
|
||||
mkdir -p build && cd build && \
|
||||
BLA_VENDOR='Intel10_64ilp_seq' cmake -DINTERFACE64=ON -DEXAMPLES=ON -DICBEXMM=ON -DMPI=ON .. && \
|
||||
export VERBOSE=1 && \
|
||||
make all && \
|
||||
make check && \
|
||||
sudo docker pull debian \
|
||||
&& \
|
||||
sudo docker create --name mobydick debian /bin/bash -c \
|
||||
"cat /etc/os-release && \
|
||||
cat /etc/apt/sources.list && \
|
||||
sed -e 's/stretch/testing/' -i /etc/apt/sources.list && \
|
||||
sed -e 's/main/main non-free contrib/' -i /etc/apt/sources.list && \
|
||||
sed -e '/security.debian.org/d' -i /etc/apt/sources.list && \
|
||||
cat /etc/apt/sources.list && \
|
||||
export DEBIAN_FRONTEND=noninteractive && \
|
||||
apt-get -y update && \
|
||||
apt-get -y --allow-unauthenticated -o Dpkg::Options::=--force-confdef upgrade && \
|
||||
apt-get -y --allow-unauthenticated -o Dpkg::Options::=--force-confdef dist-upgrade && \
|
||||
cat /etc/os-release && \
|
||||
apt-get -y install dialog && \
|
||||
echo yes | apt-get -y install intel-mkl libmkl-dev && \
|
||||
apt-get -y install build-essential && \
|
||||
apt-get -y install git gfortran gcc g++ openmpi-bin libopenmpi-dev automake autoconf libtool pkg-config && \
|
||||
apt-get -y install libeigen3-dev && \
|
||||
cd /tmp && \
|
||||
cd arpack-ng && \
|
||||
git status && \
|
||||
git log -2 && \
|
||||
sed -e 's/LOG_FLAGS = /LOG_FLAGS = --allow-run-as-root --oversubscribe /' -i PARPACK/EXAMPLES/MPI/Makefile.am && \
|
||||
sed -e 's/LOG_FLAGS = /LOG_FLAGS = --allow-run-as-root --oversubscribe /' -i PARPACK/TESTS/MPI/Makefile.am && \
|
||||
./bootstrap && \
|
||||
export FFLAGS='-DMKL_ILP64 -I/usr/include/mkl' && \
|
||||
export FCFLAGS='-DMKL_ILP64 -I/usr/include/mkl' && \
|
||||
export LIBS='-Wl,--no-as-needed -L/usr/lib/x86_64-linux-gnu -lmkl_sequential -lmkl_core -lpthread -lm -ldl' && \
|
||||
export INTERFACE64=1 && \
|
||||
./configure --with-blas=mkl_gf_ilp64 --with-lapack=mkl_gf_ilp64 --enable-mpi --enable-icb-exmm \
|
||||
--disable-dependency-tracking && \
|
||||
export VERBOSE=1 && \
|
||||
make all && \
|
||||
make check && \
|
||||
find . -name test-suite.log | xargs tail -n 300" \
|
||||
&& \
|
||||
sudo docker cp -a ${TRAVIS_BUILD_DIR} mobydick:/tmp \
|
||||
&& \
|
||||
sudo docker start -a mobydick
|
||||
|
||||
after_failure:
|
||||
|
||||
|
||||
Reference in New Issue
Block a user