Skip to content

Set number of threads for ips4o::parallel::sort #79

Set number of threads for ips4o::parallel::sort

Set number of threads for ips4o::parallel::sort #79

on: [ push, pull_request ]
name: build and test
jobs:
build_and_test:
runs-on: ubuntu-20.04
strategy:
matrix:
include:
- os: ubuntu-latest
arch: x86_64
- os: ubuntu-latest
arch: aarch64
steps:
- uses: actions/checkout@v3
with:
submodules: 'recursive'
- name: Install required packages
if: matrix.os == 'ubuntu-latest' && matrix.arch == 'x86_64'
run: sudo apt-get update && sudo apt-get install -y
git
bash
cmake
make
g++
libatomic-ops-dev
autoconf
libgsl-dev
zlib1g-dev
libzstd-dev
libjemalloc-dev
- name: Build seqwish for Linux x86_64
if: matrix.os == 'ubuntu-latest' && matrix.arch == 'x86_64'
run: cmake -H. -DCMAKE_BUILD_TYPE=Debug -DCMAKE_C_FLAGS="-mcx16" -DCMAKE_CXX_FLAGS="-mcx16" -Bbuild && cmake --build build -- -j 2
- name: Execute tests for Linux x86_64
if: matrix.os == 'ubuntu-latest' && matrix.arch == 'x86_64'
run: cd test && ASAN_OPTIONS=detect_leaks=1:symbolize=1 LSAN_OPTIONS=verbosity=0:log_threads=1 make test
- name: Build and test seqwish for Linux ${{ matrix.arch }}
if: matrix.os == 'ubuntu-latest' && matrix.arch != 'x86_64'
uses: uraimo/run-on-arch-action@v2
with:
arch: ${{ matrix.arch }}
distro: ubuntu20.04
githubToken: ${{ github.token }}
dockerRunArgs: |
--volume "${PWD}:/seqwish"
install: |
apt-get update -q -y
apt-get install -q -y \
cmake \
make \
g++ \
git \
file \
libatomic-ops-dev \
autoconf \
libgsl-dev \
zlib1g-dev \
libzstd-dev \
libjemalloc-dev
run: |
cd /seqwish
cmake -H. -DCMAKE_BUILD_TYPE=Release -DEXTRA_FLAGS="-march=armv8-a" -Bbuild && cmake --build build -- -j 2
file bin/seqwish
cd test && make test