Skip to content

DNM: Trackable benchmarking for CQRRP's GPU implementation #589

DNM: Trackable benchmarking for CQRRP's GPU implementation

DNM: Trackable benchmarking for CQRRP's GPU implementation #589

Workflow file for this run

name: core-linux
on:
pull_request:
branches-ignore:
- cqrrp-gpu-benchmarking
workflow_dispatch:
push:
branches-ignore:
- cqrrp-gpu-benchmarking
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: webfactory/ssh-agent
uses: webfactory/[email protected]
with:
ssh-private-key: ${{ secrets.PRIVATE_CLONE_SSH_KEY }}
- name: submodule update
run: |
git submodule update --init --recursive
- name: configure OS
run: |
# os level stuff
echo `pwd`
echo `ls`
set -x
export DEBIAN_FRONTEND="noninteractive"
export TZ="America/Los_Angeles"
sudo apt-get update -qq
sudo apt-get install -qq -y git-core gcc g++ gfortran cmake subversion automake m4 libgtest-dev libopenblas-openmp-dev
wget -O- https://apt.repos.intel.com/intel-gpg-keys/GPG-PUB-KEY-INTEL-SW-PRODUCTS.PUB \
| gpg --dearmor | sudo tee /usr/share/keyrings/oneapi-archive-keyring.gpg > /dev/null
echo "deb [signed-by=/usr/share/keyrings/oneapi-archive-keyring.gpg] https://apt.repos.intel.com/oneapi all main" | sudo tee /etc/apt/sources.list.d/oneAPI.list
sudo apt update
- name: cuda-toolkit
uses: Jimver/[email protected]
- name: install BLAS++
run: |
cd ..
git clone https://github.com/icl-utk-edu/blaspp.git
mkdir blaspp-build
cd blaspp-build
pwd
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=`pwd`/../blaspp-install -Dbuild_tests=OFF ../blaspp
make -j2 install
- name: install Random123
run: |
cd ..
git clone https://github.com/DEShawResearch/Random123.git
cd Random123/
make prefix=`pwd`/../Random123-install install-include
- name: install LAPACK++
run: |
cd ..
git clone https://github.com/icl-utk-edu/lapackpp.git
mkdir lapackpp-build
cd lapackpp-build
cmake -DCMAKE_BUILD_TYPE=Debug \
-Dblaspp_DIR=`pwd`/../blaspp-install/lib/cmake/blaspp \
-DCMAKE_INSTALL_PREFIX=`pwd`/../lapackpp-install \
-DCMAKE_BINARY_DIR=`pwd` \
-Dbuild_tests=OFF \
`pwd`/../lapackpp
make -j2 install
- name: build and test RandLAPACK (Release)
run: |
cd ..
mkdir RandLAPACK-build
cd RandLAPACK-build
cmake -DCMAKE_BUILD_TYPE=Release \
-Dblaspp_DIR=`pwd`/../blaspp-install/lib/cmake/blaspp \
-Dlapackpp_DIR=`pwd`/../lapackpp-install/lib/cmake/lapackpp \
-DRandom123_DIR=`pwd`/../Random123-install/include/ \
-DCMAKE_INSTALL_PREFIX=`pwd`/../RandLAPACK-install \
`pwd`/../RandLAPACK
make -j2
make -j2 install
ctest --output-on-failure
- name: build benchmarks
run: |
cd ..
mkdir benchmark-build
cd benchmark-build
cmake -DCMAKE_BINARY_DIR=`pwd` \
-DRandLAPACK_DIR=`pwd`/../RandLAPACK-install/lib/cmake \
../RandLAPACK/benchmark
make -j2
- name: build and test RandLAPACK (Debug/asan)
run: |
cd ..
mkdir RandLAPACK-build-asan
cd RandLAPACK-build-asan
cmake -DCMAKE_BUILD_TYPE=Debug \
-DSANITIZE_ADDRESS=ON \
-Dblaspp_DIR=`pwd`/../blaspp-install/lib/cmake/blaspp \
-Dlapackpp_DIR=`pwd`/../lapackpp-install/lib/cmake/lapackpp \
-DRandom123_DIR=`pwd`/../Random123-install/include/ \
-DCMAKE_INSTALL_PREFIX=`pwd`/../RandLAPACK-install-asan \
`pwd`/../RandLAPACK
make -j2
make -j2 install
ctest --output-on-failure