Merge pull request #6 from amfoggia/develop [openfpm_data] #50
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
name: OpenFPM_CI | |
on: | |
push: | |
branches: | |
- master | |
pull_request: | |
branches: | |
- master | |
jobs: | |
test_build: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
os: [ubuntu-latest, macos-latest] | |
fail-fast: false | |
steps: | |
- name: Check out code | |
uses: actions/checkout@v2 | |
with: | |
submodules: 'recursive' | |
- name: Set up Homebrew | |
uses: Homebrew/actions/setup-homebrew@master | |
- name: Cache Homebrew dependencies | |
uses: actions/cache@v2 | |
with: | |
path: | | |
~/Library/Caches/Homebrew | |
/home/linuxbrew/.cache/Homebrew | |
$HOME/.ccache | |
key: ${{ runner.os }}-homebrew-${{ hashFiles('**/*.rb') }} | |
restore-keys: | | |
${{ runner.os }}-homebrew- | |
- name: Install dependencies | |
run: | | |
brew install cmake ccache petsc boost vc eigen hdf5-mpi | |
brew install abhinavsns/homebrew-openfpm/parmetis | |
brew install -s abhinavsns/homebrew-openfpm/libhilbert | |
brew install -s abhinavsns/homebrew-openfpm/blitz | |
brew install -s abhinavsns/homebrew-openfpm/algoim | |
export CCACHE_DIR="$HOME/.ccache" | |
mkdir -p "$CCACHE_DIR" | |
mkdir -p build | |
cd build | |
export CXX=mpic++ | |
cmake .. -DCMAKE_PREFIX_PATH=$(brew --prefix) \ | |
-DCMAKE_CXX_COMPILER=mpic++ \ | |
-DLIBHILBERT_ROOT=$(brew --prefix abhinavsns/homebrew-openfpm/libhilbert) \ | |
-DLD_FLAGS='-Wl,-ld_classic' \ | |
-DDYLD_LIBRARY_PATH=$(brew --prefix suitesparse)/lib:$(brew --prefix metis)/lib \ | |
-DCMAKE_INSTALL_PREFIX=$HOME/install5 \ | |
-DCMAKE_BUILD_TYPE=RELEASE \ | |
-DSE_CLASS1=OFF \ | |
-DSE_CLASS2=OFF \ | |
-DSE_CLASS3=OFF \ | |
-DTEST_COVERAGE=OFF \ | |
-DSCAN_COVERTY=OFF \ | |
-DTEST_PERFORMANCE=OFF \ | |
-DENABLE_ASAN=OFF \ | |
-DENABLE_NUMERICS=ON \ | |
-DENABLE_GARBAGE_INJECTOR=OFF \ | |
-DENABLE_VCLUSTER_GARBAGE_INJECTOR=OFF \ | |
-DCUDA_ON_BACKEND=NONE \ | |
-DMPI_ROOT=$(brew --prefix open-mpi) \ | |
-DPETSC_ROOT=$(brew --prefix petsc) \ | |
-DBOOST_ROOT=$(brew --prefix boost) \ | |
-DBoost_NO_BOOST_CMAKE=ON \ | |
-DHDF5_ROOT=$(brew --prefix hdf5-mpi) \ | |
-DBLITZ_ROOT=$(brew --prefix abhinavsns/homebrew-openfpm/blitz) \ | |
-DALGOIM_ROOT=$(brew --prefix abhinavsns/homebrew-openfpm/algoim) \ | |
-DPARMETIS_ROOT=$(brew --prefix abhinavsns/homebrew-openfpm/parmetis) \ | |
-DMETIS_ROOT=$(brew --prefix metis) \ | |
-DOPENBLAS_ROOT=$(brew --prefix openblas) \ | |
-DSUITESPARSE_ROOT=$(brew --prefix suite-sparse) \ | |
-DEIGEN3_ROOT=$(brew --prefix eigen) \ | |
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache \ | |
-DCMAKE_C_COMPILER_LAUNCHER=ccache | |
- name: Build and install | |
run: make install | |
# - name: Single-core Test | |
# run: | | |
# export CC=gcc-12 | |
# export CXX=g++-12 | |
# source $HOME/openfpm_vars | |
# export OMP_NUM_THREADS=1 | |
# ./run.sh $(pwd) unused 1 pdata 0 ${{ github.ref }} | |
# cd openfpm_numerics | |
# ./run.sh $(pwd) unused 1 0 0 numerics ${{ github.ref }} | |
# - name: Multi-core Test | |
# run: | | |
# export CC=gcc-12 | |
# export CXX=g++-12 | |
# source $HOME/openfpm_vars | |
# export OMP_NUM_THREADS=1 | |
# mpirun --allow-run-as-root -np 2 ./build/src/pdata | |
# echo "RUN numerics test" | |
# cd openfpm_numerics | |
# mpirun --allow-run-as-root -np 2 ../build/openfpm_numerics/src/numerics |