Skip to content

[Cylon] Arrow 14.0.2 Integration #451

[Cylon] Arrow 14.0.2 Integration

[Cylon] Arrow 14.0.2 Integration #451

Workflow file for this run

name: Conda C++/Python - gcc,OpenMPI,Gloo,UCX/UCC
on:
push:
branches:
- main
- 0.**
pull_request:
branches:
- main
- 0.**
jobs:
build:
runs-on: ${{ matrix.os }}
defaults:
run:
shell: bash -l {0}
strategy:
fail-fast: false
# explicit include-based build matrix, of known valid options
matrix:
include:
# 20.04 supports CUDA 11.0+
- os: ubuntu-20.04
gcc: 9
ucc: "master"
ucx: "override-remote-address3"
steps:
- uses: actions/checkout@v2
# Specify the correct host compilers
- name: Install/Select gcc and g++
run: |
sudo apt-get install -y gcc-${{ matrix.gcc }} g++-${{ matrix.gcc }} git
echo "CC=/usr/bin/gcc-${{ matrix.gcc }}" >> $GITHUB_ENV
echo "CXX=/usr/bin/g++-${{ matrix.gcc }}" >> $GITHUB_ENV
- uses: conda-incubator/setup-miniconda@v2
with:
activate-environment: cylon_dev
environment-file: conda/environments/cylon_NoUCX.yml
- name: Activate conda
run: conda activate cylon_dev
- name: Install Gloo
run: |
git clone --single-branch https://github.com/nirandaperera/gloo.git $HOME/gloo
mkdir -p $HOME/gloo/build && cd $HOME/gloo/build
cmake .. -DBUILD_SHARED_LIBS=1 -DUSE_MPI=1 -DCMAKE_INSTALL_PREFIX=$HOME/gloo/install
make install
- name: Install UCX
run: |
git clone --single-branch -b ${{ matrix.ucx }} https://github.com/mstaylor/ucx.git $HOME/ucx
cd $HOME/ucx
./autogen.sh
./configure --prefix=$HOME/ucx/install --without-go
make install
- name: Install UCC
run: |
git clone --single-branch -b ${{ matrix.ucc }} https://github.com/openucx/ucc.git $HOME/ucc
cd $HOME/ucc
./autogen.sh
./configure --prefix=$HOME/ucc/install --with-ucx=$HOME/ucx/install
make install
- name: Build cylon, pycylon and run cpp test
run: python build.py -cmake-flags="-DCYLON_UCX=1 -DCYLON_GLOO=1 -DGLOO_INSTALL_PREFIX=$HOME/gloo/install -DCYLON_UCC=1 -DUCC_INSTALL_PREFIX=$HOME/ucc/install -DUCX_INSTALL_PREFIX=$HOME/ucx/install" -ipath="$HOME/cylon/install" --cpp --python --test
- name: Run pytest
run: python build.py -ipath="$HOME/cylon/install" --pytest
- name: Build Java
run: python build.py -ipath="$HOME/cylon/install" --java