Skip to content

Various improvements #57

Various improvements

Various improvements #57

name: Linux (Ubuntu) CPU
on:
push:
branches:
- main
pull_request:
workflow_dispatch:
jobs:
Linux-Test:
runs-on: ubuntu-latest
strategy:
matrix:
build_type: [Debug, Release]
compiler: [g++, clang++]
steps:
- name: "Update system"
run: |
sudo apt update
sudo apt upgrade
sudo apt autoremove
- name: "Install Compiler"
run: |
sudo apt install g++ clang libomp-dev
- name: "Install MPI"
run: |
sudo apt install libopenmpi-dev
- name: "Install cmake 3.31.0"
uses: lukka/[email protected]
- name: "Clone the PLSSVM repository into PLSSVM/"
uses: actions/[email protected]
with:
path: PLSSVM
- name: "Install Python dependencies"
run: |
pip install --upgrade pip
pip install -r PLSSVM/install/python_requirements.txt
- name: "Configure PLSSVM using CMake"
run: |
cd PLSSVM
cmake --preset openmp_test -DCMAKE_CXX_COMPILER=${{ matrix.compiler }} -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} -DPLSSVM_ENABLE_STL_DEBUG_MODE=${{ matrix.build_type == 'Debug' && 'ON' || 'OFF' }} -DPLSSVM_TARGET_PLATFORMS="cpu" -DPLSSVM_ENABLE_LANGUAGE_BINDINGS=ON -DPLSSVM_ENABLE_PERFORMANCE_TRACKING=ON -DPLSSVM_ENABLE_MPI=ON -DPLSSVM_TEST_FILE_NUM_DATA_POINTS=50 -DPLSSVM_TEST_FILE_NUM_FEATURES=20 -DPLSSVM_ENABLE_LTO=OFF
- name: "Build PLSSVM"
run: |
cd PLSSVM
cmake --build --preset openmp_test --config ${{ matrix.build_type }}
echo "${GITHUB_WORKSPACE}/PLSSVM/build" >> $GITHUB_PATH
- name: "Run tests"
run: |
cd PLSSVM
mkdir tmp
export TMPDIR=$PWD/tmp
ctest --preset openmp_test -C ${{ matrix.build_type }} --parallel 2 --output-on-failure