Skip to content

Commit 466d4da

Browse files
committed
Merge remote-tracking branch 'origin/main' into update/BatchPrefillPagedWrapper
2 parents 220041c + 85a9a8d commit 466d4da

29 files changed

+2518
-393
lines changed

.github/workflows/release-ci-docker.yml

Lines changed: 59 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -5,25 +5,74 @@ on:
55

66
jobs:
77
build:
8-
strategy:
9-
matrix:
10-
include:
11-
- os: ubuntu-latest
12-
arch: amd64
13-
- os: [self-hosted, Linux, ARM64]
14-
arch: arm64
15-
runs-on: ${{ matrix.os }}
8+
runs-on: ubuntu-latest
169
steps:
10+
- name: Free Disk Space
11+
uses: jlumbroso/free-disk-space@main
12+
with:
13+
tool-cache: false
14+
android: true
15+
dotnet: true
16+
haskell: true
17+
large-packages: true
18+
docker-images: true
19+
swap-storage: true
20+
1721
- uses: actions/checkout@v4
22+
23+
- name: Set up QEMU
24+
uses: docker/setup-qemu-action@v3
25+
26+
- name: Set up Docker Buildx
27+
uses: docker/setup-buildx-action@v3
28+
1829
- name: Login to Docker Hub
1930
uses: docker/login-action@v3
2031
with:
2132
username: flashinfer
2233
password: ${{ secrets.DOCKERHUB_TOKEN }}
2334

24-
- uses: docker/build-push-action@v4
35+
- name: Build and push AMD64 image
36+
uses: docker/build-push-action@v5
2537
with:
2638
context: docker
2739
file: docker/Dockerfile.ci_gpu
40+
platforms: linux/amd64
2841
push: true
29-
tags: flashinfer/flashinfer-ci:latest
42+
tags: |
43+
flashinfer/flashinfer-ci:amd64
44+
cache-from: type=registry,ref=flashinfer/flashinfer-ci:buildcache-amd64
45+
cache-to: type=registry,ref=flashinfer/flashinfer-ci:buildcache-amd64,mode=max
46+
provenance: false
47+
sbom: false
48+
49+
- name: Clean up after AMD64 build
50+
run: |
51+
df -h /
52+
docker buildx prune -af
53+
docker system prune -af --volumes
54+
sudo rm -rf /tmp/* /var/tmp/* ~/.docker/buildx
55+
df -h /
56+
57+
- name: Re-setup Docker Buildx for ARM64
58+
uses: docker/setup-buildx-action@v3
59+
60+
- name: Build and push ARM64 image
61+
uses: docker/build-push-action@v5
62+
with:
63+
context: docker
64+
file: docker/Dockerfile.ci_gpu
65+
platforms: linux/arm64
66+
push: true
67+
tags: |
68+
flashinfer/flashinfer-ci:arm64
69+
cache-from: type=registry,ref=flashinfer/flashinfer-ci:buildcache-arm64
70+
cache-to: type=registry,ref=flashinfer/flashinfer-ci:buildcache-arm64,mode=max
71+
provenance: false
72+
sbom: false
73+
74+
- name: Create and push multi-arch manifest
75+
run: |
76+
docker buildx imagetools create -t flashinfer/flashinfer-ci:latest \
77+
flashinfer/flashinfer-ci:amd64 \
78+
flashinfer/flashinfer-ci:arm64

3rdparty/composable_kernels

Submodule composable_kernels deleted from 5055b3b

Jenkinsfile

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -133,7 +133,7 @@ stage('Unittest') {
133133
cancel_previous_build()
134134
parallel(
135135
failFast: true,
136-
'AOT-Build-Import': {
136+
'AOT-Build-Import-x86-64': {
137137
try {
138138
run_unittest_CPU_AOT_COMPILE('CPU-LARGE-SPOT')
139139
} catch (Throwable ex) {
@@ -151,6 +151,24 @@ stage('Unittest') {
151151
}
152152
}
153153
},
154+
'AOT-Build-Import-aarch64': {
155+
try {
156+
run_unittest_CPU_AOT_COMPILE('ARM-LARGE-SPOT')
157+
} catch (Throwable ex) {
158+
echo 'Exception during SPOT run ' + ex.toString()
159+
if (is_last_build()) {
160+
// retry if we are currently at last build
161+
// mark the current stage as success
162+
// and try again via on demand node
163+
echo 'Exception during SPOT run ' + ex.toString() + ' retry on-demand'
164+
currentBuild.result = 'SUCCESS'
165+
run_unittest_CPU_AOT_COMPILE('ARM-LARGE')
166+
} else {
167+
echo 'Exit since it is not last build'
168+
throw ex
169+
}
170+
}
171+
},
154172
'JIT-Unittest-1': {
155173
try {
156174
shard_run_unittest_GPU('GPU-G5-SPOT', 1)

NOTICE

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
FlashInfer
2+
Copyright 2025 NVIDIA
3+
Copyright 2023-2025 FlashInfer community (https://flashinfer.ai/)
4+
5+
-------------------------------------------------------------------------------------------------
6+
Some of the code in this project are adapted from other open-source projects with different
7+
licenses. This product also bundles some third-party components under other open source licenses.
8+
See licenses/ for text of these licenses.

0 commit comments

Comments
 (0)