Skip to content

Commit ad46747

Browse files
committed
feat: Add xpu vllm docker
Signed-off-by: Zhan Xue <[email protected]>
1 parent 046229f commit ad46747

File tree

5 files changed

+1036
-5
lines changed

5 files changed

+1036
-5
lines changed

container/build.sh

Lines changed: 16 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,8 @@ declare -A FRAMEWORKS=(["VLLM"]=1 ["TRTLLM"]=2 ["NONE"]=3 ["SGLANG"]=4)
5454
DEFAULT_FRAMEWORK=VLLM
5555

5656
SOURCE_DIR=$(dirname "$(readlink -f "$0")")
57-
DOCKERFILE=${SOURCE_DIR}/Dockerfile
57+
DOCKERFILE_BASE=${SOURCE_DIR}/Dockerfile
58+
DOCKERFILE=${DOCKERFILE_BASE}
5859
BUILD_CONTEXT=$(dirname "$(readlink -f "$SOURCE_DIR")")
5960

6061
# Base Images
@@ -304,6 +305,9 @@ get_options() {
304305
--enable-media-nixl)
305306
ENABLE_MEDIA_NIXL=true
306307
;;
308+
--enable-xpu)
309+
ENABLE_XPU=true
310+
;;
307311
--make-efa)
308312
NIXL_UCX_REF=$NIXL_UCX_EFA_REF
309313
;;
@@ -477,6 +481,7 @@ show_help() {
477481
echo " [--make-efa Enables EFA support for NIXL]"
478482
echo " [--enable-kvbm Enables KVBM support in Python 3.12]"
479483
echo " [--enable-media-nixl Enable media processing with NIXL support (default: true for frameworks, false for none)]"
484+
echo " [--enable-xpu Enables XPU support in Python 3.12]"
480485
echo " [--use-sccache enable sccache for Rust/C/C++ compilation caching]"
481486
echo " [--sccache-bucket S3 bucket name for sccache (required with --use-sccache)]"
482487
echo " [--sccache-region S3 region for sccache (required with --use-sccache)]"
@@ -539,7 +544,13 @@ fi
539544

540545
# Update DOCKERFILE if framework is VLLM
541546
if [[ $FRAMEWORK == "VLLM" ]]; then
542-
DOCKERFILE=${SOURCE_DIR}/Dockerfile.vllm
547+
if [ ! -z ${ENABLE_XPU} ]; then
548+
echo "INFO: Selecting xpu dockerfile "
549+
DOCKERFILE_BASE=${SOURCE_DIR}/xpu/Dockerfile.xpu
550+
DOCKERFILE=${SOURCE_DIR}/xpu/Dockerfile.xpu.vllm
551+
else
552+
DOCKERFILE=${SOURCE_DIR}/Dockerfile.vllm
553+
fi
543554
elif [[ $FRAMEWORK == "TRTLLM" ]]; then
544555
DOCKERFILE=${SOURCE_DIR}/Dockerfile.trtllm
545556
elif [[ $FRAMEWORK == "NONE" ]]; then
@@ -902,18 +913,18 @@ if [[ -z "${DEV_IMAGE_INPUT:-}" ]]; then
902913
# Use BuildKit for enhanced metadata
903914
if [ -z "$RUN_PREFIX" ]; then
904915
if docker buildx version &>/dev/null; then
905-
docker buildx build --builder default --progress=plain --load -f "${SOURCE_DIR}/Dockerfile" --target runtime $PLATFORM $BUILD_ARGS $CACHE_FROM $CACHE_TO --tag $DYNAMO_BASE_IMAGE $BUILD_CONTEXT_ARG $BUILD_CONTEXT $NO_CACHE 2>&1 | tee "${BASE_BUILD_LOG}"
916+
docker buildx build --builder default --progress=plain --load -f "${DOCKERFILE_BASE}" --target runtime $PLATFORM $BUILD_ARGS $CACHE_FROM $CACHE_TO --tag $DYNAMO_BASE_IMAGE $BUILD_CONTEXT_ARG $BUILD_CONTEXT $NO_CACHE 2>&1 | tee "${BASE_BUILD_LOG}"
906917
BUILD_EXIT_CODE=${PIPESTATUS[0]}
907918
else
908-
DOCKER_BUILDKIT=1 docker build --progress=plain -f "${SOURCE_DIR}/Dockerfile" --target runtime $PLATFORM $BUILD_ARGS $CACHE_FROM $CACHE_TO --tag $DYNAMO_BASE_IMAGE $BUILD_CONTEXT_ARG $BUILD_CONTEXT $NO_CACHE 2>&1 | tee "${BASE_BUILD_LOG}"
919+
DOCKER_BUILDKIT=1 docker build --progress=plain -f "${DOCKERFILE_BASE}" --target runtime $PLATFORM $BUILD_ARGS $CACHE_FROM $CACHE_TO --tag $DYNAMO_BASE_IMAGE $BUILD_CONTEXT_ARG $BUILD_CONTEXT $NO_CACHE 2>&1 | tee "${BASE_BUILD_LOG}"
909920
BUILD_EXIT_CODE=${PIPESTATUS[0]}
910921
fi
911922

912923
if [ ${BUILD_EXIT_CODE} -ne 0 ]; then
913924
exit ${BUILD_EXIT_CODE}
914925
fi
915926
else
916-
$RUN_PREFIX docker build -f "${SOURCE_DIR}/Dockerfile" --target runtime $PLATFORM $BUILD_ARGS $CACHE_FROM $CACHE_TO --tag $DYNAMO_BASE_IMAGE $BUILD_CONTEXT_ARG $BUILD_CONTEXT $NO_CACHE
927+
$RUN_PREFIX docker build -f "${DOCKERFILE_BASE}" --target runtime $PLATFORM $BUILD_ARGS $CACHE_FROM $CACHE_TO --tag $DYNAMO_BASE_IMAGE $BUILD_CONTEXT_ARG $BUILD_CONTEXT $NO_CACHE
917928
fi
918929

919930
# Start framework build

0 commit comments

Comments
 (0)