Skip to content

Commit 87733ec

Browse files
[mlir-tensorrt][CI] Fix CPM cache path (#373)
This PR fixes CPM cache path in mlir-tensorrt CI.
1 parent fc8d1b6 commit 87733ec

File tree

1 file changed

+188
-14
lines changed

1 file changed

+188
-14
lines changed

.github/workflows/mlir-tensorrt-ci.yml

Lines changed: 188 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -6,14 +6,18 @@ on:
66
- main
77
types: [synchronize, opened, reopened, ready_for_review]
88
paths: ["mlir-tensorrt/**"]
9+
push:
10+
branches:
11+
- main
12+
paths: ["mlir-tensorrt/**"]
913

1014
env:
1115
DEFAULT_IMAGE: ghcr.io/nvidia/tensorrt-incubator/mlir-tensorrt:cuda12.5-ubuntu-llvm17
1216
REGISTRY: ghcr.io
1317

1418
jobs:
15-
mlir-tensorrt-tests:
16-
if: github.event.pull_request.draft == false
19+
mlir-tensorrt-test-pr:
20+
if: github.event_name == 'pull_request' && github.event.pull_request.draft == false
1721
# `ubuntu-latest` is a CPU runner.
1822
# If selected, tests requiring GPU are not run.
1923
runs-on: ubuntu-latest
@@ -128,9 +132,183 @@ jobs:
128132
username: ${{ github.actor }}
129133
password: ${{ secrets.GITHUB_TOKEN }}
130134
run: |
131-
export CCACHE_BASEDIR="$PWD"
132-
export CCACHE_DIR="$PWD/ccache"
133-
export CCACHE_COMPILERCHECK=content
135+
export CCACHE_DIR="/ccache"
136+
export CCACHE_MAXSIZE=10G
137+
ccache --zero-stats || true
138+
ccache --show-stats || true
139+
140+
cd mlir-tensorrt
141+
cat > build_and_test.sh <<EOF
142+
#!/bin/bash
143+
set -e
144+
145+
python3 -m pip install -r python/requirements-dev.txt
146+
147+
cmake -B ./build -S . -G Ninja \
148+
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
149+
-DMLIR_TRT_PACKAGE_CACHE_DIR=/.cache.cpm \
150+
-DMLIR_TRT_ENABLE_ASSERTIONS=ON \
151+
-DMLIR_TRT_DOWNLOAD_TENSORRT_VERSION=10.2 \
152+
-DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ \
153+
-DMLIR_TRT_USE_LINKER=lld \
154+
-DMLIR_EXECUTOR_ENABLE_GPU_INTEGRATION_TESTS=OFF
155+
156+
ninja -C build all
157+
158+
ninja -C build check-mlir-executor
159+
ninja -C build check-mlir-tensorrt-dialect
160+
ninja -C build check-mlir-tensorrt
161+
162+
cd ..
163+
ccache --show-stats || true
164+
EOF
165+
166+
bash build_and_test.sh
167+
168+
# Run LIT tests with TensorRT 10 & ASAN
169+
- name: Run MLIR-TensorRT lit tests with TensorRT 10, ASAN enabled
170+
uses: addnab/docker-run-action@v3
171+
with:
172+
image: ${{ env.DEFAULT_IMAGE }}
173+
options: -v ${{ github.workspace }}/mlir-tensorrt:/mlir-tensorrt -v ${{ github.workspace }}/ccache:/ccache -v ${{ github.workspace }}/.ccache.cpm:/.ccache.cpm
174+
registry: ${{ env.REGISTRY }}
175+
username: ${{ github.actor }}
176+
password: ${{ secrets.GITHUB_TOKEN }}
177+
run: |
178+
export CCACHE_DIR="/ccache"
179+
export CCACHE_MAXSIZE=10G
180+
ccache --zero-stats || true
181+
ccache --show-stats || true
182+
183+
cd mlir-tensorrt
184+
cat > build_and_test.sh <<EOF
185+
#!/bin/bash
186+
set -e
187+
188+
python3 -m pip install -r python/requirements-dev.txt
189+
190+
cmake -B ./build -S . -G Ninja \
191+
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
192+
-DMLIR_TRT_PACKAGE_CACHE_DIR=/.cache.cpm \
193+
-DMLIR_TRT_ENABLE_ASSERTIONS=ON \
194+
-DMLIR_TRT_DOWNLOAD_TENSORRT_VERSION=10.2 \
195+
-DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ \
196+
-DMLIR_TRT_USE_LINKER=lld \
197+
-DMLIR_EXECUTOR_ENABLE_GPU_INTEGRATION_TESTS=OFF \
198+
-DENABLE_ASAN=ON
199+
200+
ninja -C build all
201+
202+
ninja -C build check-mlir-executor
203+
ninja -C build check-mlir-tensorrt-dialect
204+
ninja -C build check-mlir-tensorrt
205+
206+
cd ..
207+
ccache --show-stats || true
208+
EOF
209+
210+
bash build_and_test.sh
211+
212+
# Run LIT tests with TensorRT 9
213+
- name: Run MLIR-TensorRT lit tests with TensorRT 9
214+
uses: addnab/docker-run-action@v3
215+
with:
216+
image: ${{ env.DEFAULT_IMAGE }}
217+
options: -v ${{ github.workspace }}/mlir-tensorrt:/mlir-tensorrt -v ${{ github.workspace }}/ccache:/ccache -v ${{ github.workspace }}/.ccache.cpm:/.ccache.cpm
218+
registry: ${{ env.REGISTRY }}
219+
username: ${{ github.actor }}
220+
password: ${{ secrets.GITHUB_TOKEN }}
221+
run: |
222+
export CCACHE_DIR="/ccache"
223+
export CCACHE_MAXSIZE=10G
224+
ccache --zero-stats || true
225+
ccache --show-stats || true
226+
227+
cd mlir-tensorrt
228+
cat > build_and_test.sh <<EOF
229+
#!/bin/bash
230+
set -e
231+
232+
python3 -m pip install -r python/requirements-dev.txt
233+
234+
cmake -B ./build -S . -G Ninja \
235+
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
236+
-DMLIR_TRT_PACKAGE_CACHE_DIR=/.cache.cpm \
237+
-DMLIR_TRT_ENABLE_ASSERTIONS=ON \
238+
-DMLIR_TRT_DOWNLOAD_TENSORRT_VERSION=9.2.0.5 \
239+
-DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ \
240+
-DMLIR_TRT_USE_LINKER=lld \
241+
-DMLIR_EXECUTOR_ENABLE_GPU_INTEGRATION_TESTS=OFF
242+
243+
ninja -C build all
244+
245+
ninja -C build check-mlir-executor
246+
ninja -C build check-mlir-tensorrt-dialect
247+
ninja -C build check-mlir-tensorrt
248+
249+
cd ..
250+
ccache --show-stats || true
251+
EOF
252+
253+
bash build_and_test.sh
254+
255+
mlir-tensorrt-test-main:
256+
if: github.event_name == 'push'
257+
# `ubuntu-latest` is a CPU runner.
258+
# If selected, tests requiring GPU are not run.
259+
runs-on: ubuntu-latest
260+
261+
steps:
262+
# Free some disk space, otherwise we get OOM error.
263+
- name: Free disk space
264+
run: |
265+
sudo rm -rf \
266+
/usr/share/dotnet "$AGENT_TOOLSDIRECTORY" /usr/local/lib/android /opt/ghc \
267+
/usr/local/share/powershell /usr/share/swift /usr/local/.ghcup \
268+
/usr/lib/jvm
269+
270+
sudo apt-get purge microsoft-edge-stable || true
271+
sudo apt-get purge google-cloud-cli || true
272+
sudo apt-get purge dotnet-sdk-* || true
273+
sudo apt-get purge google-chrome-stable || true
274+
275+
sudo apt-get autoremove -y
276+
sudo apt-get autoclean -y
277+
278+
# Value of `github.workspace` is /home/runner/work/{repo_name}/{repo-name}
279+
# i.e. /home/runner/work/TensorRT-Incubator/TensorRT-Incubator in our case.
280+
# After this action, repo is cloned inside above path.
281+
- uses: actions/checkout@v4
282+
with:
283+
fetch-depth: 5
284+
285+
# Create cache folders
286+
- name: Create cache folder
287+
run: |
288+
mkdir -p ${{ github.workspace }}/ccache
289+
mkdir -p ${{ github.workspace }}/.ccache.cpm
290+
291+
# Create cache action
292+
- name: Create cache action
293+
id: core-build-cache
294+
uses: actions/cache@v4
295+
with:
296+
key: ${{ runner.os }}-mlir-tensorrt-core-build
297+
path: |
298+
${{ github.workspace }}/ccache
299+
${{ github.workspace }}/.ccache.cpm
300+
301+
# Run LIT tests with TensorRT 10
302+
- name: Run MLIR-TensorRT lit tests with TensorRT 10
303+
uses: addnab/docker-run-action@v3
304+
with:
305+
image: ${{ env.DEFAULT_IMAGE }}
306+
options: -v ${{ github.workspace }}/mlir-tensorrt:/mlir-tensorrt -v ${{ github.workspace }}/ccache:/ccache -v ${{ github.workspace }}/.ccache.cpm:/.ccache.cpm
307+
registry: ${{ env.REGISTRY }}
308+
username: ${{ github.actor }}
309+
password: ${{ secrets.GITHUB_TOKEN }}
310+
run: |
311+
export CCACHE_DIR="/ccache"
134312
export CCACHE_MAXSIZE=10G
135313
ccache --zero-stats || true
136314
ccache --show-stats || true
@@ -144,7 +322,7 @@ jobs:
144322
145323
cmake -B ./build -S . -G Ninja \
146324
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
147-
-DMLIR_TRT_PACKAGE_CACHE_DIR=${PWD}/.cache.cpm \
325+
-DMLIR_TRT_PACKAGE_CACHE_DIR=/.cache.cpm \
148326
-DMLIR_TRT_ENABLE_ASSERTIONS=ON \
149327
-DMLIR_TRT_DOWNLOAD_TENSORRT_VERSION=10.2 \
150328
-DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ \
@@ -173,9 +351,7 @@ jobs:
173351
username: ${{ github.actor }}
174352
password: ${{ secrets.GITHUB_TOKEN }}
175353
run: |
176-
export CCACHE_BASEDIR="$PWD"
177-
export CCACHE_DIR="$PWD/ccache"
178-
export CCACHE_COMPILERCHECK=content
354+
export CCACHE_DIR="/ccache"
179355
export CCACHE_MAXSIZE=10G
180356
ccache --zero-stats || true
181357
ccache --show-stats || true
@@ -189,7 +365,7 @@ jobs:
189365
190366
cmake -B ./build -S . -G Ninja \
191367
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
192-
-DMLIR_TRT_PACKAGE_CACHE_DIR=${PWD}/.cache.cpm \
368+
-DMLIR_TRT_PACKAGE_CACHE_DIR=/.cache.cpm \
193369
-DMLIR_TRT_ENABLE_ASSERTIONS=ON \
194370
-DMLIR_TRT_DOWNLOAD_TENSORRT_VERSION=10.2 \
195371
-DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ \
@@ -219,9 +395,7 @@ jobs:
219395
username: ${{ github.actor }}
220396
password: ${{ secrets.GITHUB_TOKEN }}
221397
run: |
222-
export CCACHE_BASEDIR="$PWD"
223-
export CCACHE_DIR="$PWD/ccache"
224-
export CCACHE_COMPILERCHECK=content
398+
export CCACHE_DIR="/ccache"
225399
export CCACHE_MAXSIZE=10G
226400
ccache --zero-stats || true
227401
ccache --show-stats || true
@@ -235,7 +409,7 @@ jobs:
235409
236410
cmake -B ./build -S . -G Ninja \
237411
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
238-
-DMLIR_TRT_PACKAGE_CACHE_DIR=${PWD}/.cache.cpm \
412+
-DMLIR_TRT_PACKAGE_CACHE_DIR=/.cache.cpm \
239413
-DMLIR_TRT_ENABLE_ASSERTIONS=ON \
240414
-DMLIR_TRT_DOWNLOAD_TENSORRT_VERSION=9.2.0.5 \
241415
-DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ \

0 commit comments

Comments
 (0)