Skip to content

Support IfExpr inside IfStmt in dependence analysis #1826

Support IfExpr inside IfStmt in dependence analysis

Support IfExpr inside IfStmt in dependence analysis #1826

Workflow file for this run

name: CI
# Controls when the workflow will run
on:
# Triggers the workflow on push or pull request events but only for the master branch
push:
branches: [ master ]
pull_request:
branches: [ master ]
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
jobs:
build-and-test-gcc-cuda-mkl-pytorch-install:
runs-on: self-hosted
if: github.event.pull_request.draft == false
steps:
- uses: roastduck/checkout@main
with:
ssh-key: ${{ secrets.CI }}
submodules: true
fetch-depth: 0
- name: Build ffi module in Release
run: |
git submodule foreach --recursive git clean -ffdx
git submodule foreach --recursive git reset --hard
source /opt/spack/share/spack/setup-env.sh
spack load [email protected]%[email protected] [email protected]/ehz25ml [email protected]/uopt2y4 [email protected] java@11 [email protected]
source ci-script/prepare-python-environment.sh
# -C requires a new enough pip
pip3 install --upgrade pip
# We may use a LD_PRELOAD-based proxy in a CI runner, but it crashes PyTorch's CMake script, thus reset LD_PRELOAD here
LD_PRELOAD= pip3 install . -C--local=with-cuda.toml -C--local=ci-script/with-spack-mkl.toml -C--local=with-pytorch.toml --no-build-isolation
- name: Run PyTest
run: |
source /opt/spack/share/spack/setup-env.sh
spack load [email protected]%[email protected] [email protected]/ehz25ml [email protected]/uopt2y4 [email protected] java@11 [email protected]
source ci-script/prepare-python-environment.sh
srun -N 1 -c 64 -p octave --gres=gpu:a100:1 pytest --color=yes -m "not performance_sensitive" test
build-and-test-gcc-minimal-run_in_tree:
runs-on: self-hosted
if: github.event.pull_request.draft == false
steps:
- uses: roastduck/checkout@main
with:
ssh-key: ${{ secrets.CI }}
submodules: true
fetch-depth: 0
- name: Build ffi module in Release
run: |
git submodule foreach --recursive git clean -ffdx
git submodule foreach --recursive git reset --hard
source /opt/spack/share/spack/setup-env.sh
spack load [email protected]%[email protected] java@11 [email protected]
source ci-script/prepare-python-environment.sh
mkdir build
# certain new GCC 12 warnings are not stable and triggered with false-positive right now, so suppress them here with -Wno-*
cmake -G Ninja -B build -S . -DCMAKE_BUILD_TYPE=Release -DFT_WITH_CUDA=OFF -DFT_WITH_MKL=OFF -DFT_WITH_PYTORCH=OFF -DCMAKE_CXX_FLAGS="-Wno-restrict -Wno-array-bounds"
cd build && ninja
- name: Run PyTest
run: |
source /opt/spack/share/spack/setup-env.sh
spack load [email protected]%[email protected] java@11 [email protected]
source ci-script/prepare-python-environment.sh
PYTHONPATH=build:python:$PYTHONPATH srun -N 1 -c 64 -p ja pytest --color=yes -m "not performance_sensitive" test
build-and-test-clang-run-in-tree:
runs-on: self-hosted
if: github.event.pull_request.draft == false
steps:
- uses: roastduck/checkout@main
with:
ssh-key: ${{ secrets.CI }}
submodules: true
fetch-depth: 0
- name: Build ffi module in Release
run: |
git submodule foreach --recursive git clean -ffdx
git submodule foreach --recursive git reset --hard
source /opt/spack/share/spack/setup-env.sh
# Clang will find a GCC release to be "compatible" with it, so we need to load a `llvm` built with high enough `gcc`
spack load [email protected]%[email protected] java@11 llvm@16%gcc@12
source ci-script/prepare-python-environment.sh
mkdir build
CC=clang CXX=clang++ cmake -G Ninja -B build -S . -DCMAKE_BUILD_TYPE=Release -DFT_WITH_CUDA=OFF -DFT_WITH_MKL=OFF -DFT_WITH_PYTORCH=OFF
cd build && ninja
- name: Run PyTest
run: |
source /opt/spack/share/spack/setup-env.sh
spack load [email protected]%[email protected] java@11 llvm@16%gcc@12
source ci-script/prepare-python-environment.sh
PYTHONPATH=build:python:$PYTHONPATH srun -N 1 -c 64 -p ja pytest --color=yes -m "not performance_sensitive" test
build-and-test-gcc-cuda-mkl-exclusively:
runs-on: self-hosted
if: github.event.pull_request.draft == false
steps:
- uses: roastduck/checkout@main
with:
ssh-key: ${{ secrets.CI }}
submodules: true
fetch-depth: 0
- name: Build ffi module in Release
run: |
git submodule foreach --recursive git clean -ffdx
git submodule foreach --recursive git reset --hard
source /opt/spack/share/spack/setup-env.sh
spack load [email protected]%[email protected] [email protected]/ehz25ml [email protected]/uopt2y4 [email protected] java@11 [email protected]
source ci-script/prepare-python-environment.sh
# -C requires a new enough pip
pip3 install --upgrade pip
pip3 install . -C--local=with-cuda.toml -C--local=ci-script/with-spack-mkl.toml
- name: Run PyTest
run: |
source /opt/spack/share/spack/setup-env.sh
spack load [email protected]%[email protected] [email protected]/ehz25ml [email protected]/uopt2y4 [email protected] java@11 [email protected]
source ci-script/prepare-python-environment.sh
# Set OMP_PROC_BIND to make OpenMP happy for 30.schedule/test_auto_fission_fuse.py::test_tune_fission
OMP_PROC_BIND=true srun --exclusive=user -N 1 -c 256 -p ja --gres=gpu:v100:1 pytest --color=yes -m "performance_sensitive" test