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 torch-mlir 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 torch-mlir (Assert) run: | cd $GITHUB_WORKSPACE mkdir build cd build cmake $GITHUB_WORKSPACE/external/llvm-project/llvm -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_ENABLE_PROJECTS=mlir \ -DLLVM_EXTERNAL_PROJECTS=torch-mlir \ -DLLVM_EXTERNAL_TORCH_MLIR_SOURCE_DIR="$GITHUB_WORKSPACE" \ -DMLIR_ENABLE_BINDINGS_PYTHON=ON \ -DLLVM_TARGETS_TO_BUILD=host ninja check-torch-mlir-all - name: RefBackend integration tests run: | cd $GITHUB_WORKSPACE export PYTHONPATH="$GITHUB_WORKSPACE/build/tools/torch-mlir/python_packages/torch_mlir" python -m e2e_testing.torchscript.main --config=refbackend -v