name: Build and Test on: [push, pull_request] jobs: build: name: Build and Test (Release Asserts) runs-on: ubuntu-20.04 steps: - name: Set up Python uses: actions/setup-python@v2 with: python-version: 3.9 - name: Get npcomp uses: actions/checkout@v2 with: submodules: 'true' - name: Install python depends run: | python -m pip install -r $GITHUB_WORKSPACE/external/llvm-project/mlir/python/requirements.txt - name: Install pytorch_nightly depends run: | python -m pip install --pre torch torchvision -f https://download.pytorch.org/whl/nightly/cpu/torch_nightly.html - name: Install Ninja uses: llvm/actions/install-ninja@55d844821959226fab4911f96f37071c1d4c3268 - name: Get Submodule Hash id: get-submodule-hash run: echo "::set-output name=hash::$(md5sum $(git submodule status))" shell: bash - name: Ccache for C++ compilation uses: hendrikmuhs/ccache-action@4687d037e4d7cf725512d9b819137a3af34d39b3 with: key: ${{ runner.os }}-clangreleaseasserts-${{ steps.get-submodule-hash.outputs.hash }} - name: Build and Test npcomp (Assert) run: | cd $GITHUB_WORKSPACE mkdir build cd build cmake .. -GNinja \ -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_LINKER=lld \ -DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache \ -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ \ -DPython3_EXECUTABLE=$(which python) \ -DLLVM_ENABLE_ASSERTIONS=ON \ -DLLVM_TARGETS_TO_BUILD=host ninja check-npcomp-all - name: Refbackend integration tests run: | cd $GITHUB_WORKSPACE export PYTHONPATH="$GITHUB_WORKSPACE/build/python_packages/npcomp_core:$GITHUB_WORKSPACE/build/python_packages/npcomp_torch:$GITHUB_WORKSPACE/build/python_packages/torch_mlir:$GITHUB_WORKSPACE/build/python_packages/torch_mlir_dialects" python -m frontends.pytorch.e2e_testing.torchscript.main --config=refbackend # build_wheels: # name: Build Wheels and Smoketest # runs-on: ubuntu-20.04 # steps: # - name: Set up Python # uses: actions/setup-python@v2 # with: # python-version: 3.9 # - name: Get npcomp # uses: actions/checkout@v2 # with: # submodules: 'true' # - name: Install python dependencies # run: | # python -m pip install --pre torch torchvision -f https://download.pytorch.org/whl/nightly/cpu/torch_nightly.html # python -m pip install wheel # - name: Install Ninja # uses: llvm/actions/install-ninja@55d844821959226fab4911f96f37071c1d4c3268 # - name: Get Submodule Hash # id: get-submodule-hash # run: echo "::set-output name=hash::$(md5sum $(git submodule status))" # shell: bash # - name: Ccache for C++ compilation # uses: hendrikmuhs/ccache-action@4687d037e4d7cf725512d9b819137a3af34d39b3 # with: # key: ${{ runner.os }}-wheel-${{ steps.get-submodule-hash.outputs.hash }} # - name: Build wheels # run: | # cd $GITHUB_WORKSPACE # ./build_tools/build_python_wheels.sh # - uses: actions/upload-artifact@v2 # with: # name: ubuntu-20.04-wheels # path: wheelhouse/