mirror of
https://github.com/deepseek-ai/DeepInfer.git
synced 2026-10-26 16:35:05 +00:00
DeepEP now records an HTTPS DeepJIT URL, so build_vendor no longer needs the git@github.com rewrite. Co-authored-by: Shaoyuan Chen <chensy@deepseek.com>
55 lines
1.5 KiB
Bash
Executable File
55 lines
1.5 KiB
Bash
Executable File
#!/bin/bash
|
|
set -e
|
|
|
|
REPO_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
|
VENDOR_DIR="${REPO_ROOT}/vendor"
|
|
|
|
case "${DEEPINFER_ACCELERATOR:-nvidia}" in
|
|
nvidia)
|
|
BUILD_TARGET=CUDA
|
|
PACKAGES=(DeepSelect FlashMLA DeepEP DeepGEMM)
|
|
INSTALL=(deep_select flash_mla deep_ep deep_gemm)
|
|
;;
|
|
ascend)
|
|
BUILD_TARGET=ASCEND
|
|
PACKAGES=(DeepSelect FlashMLA DeepEP-Ascend DeepGEMM-Ascend)
|
|
INSTALL=(deep_select flash_mla deep_ep deep_gemm)
|
|
;;
|
|
*)
|
|
echo "Unsupported DEEPINFER_ACCELERATOR: '${DEEPINFER_ACCELERATOR}' (expect nvidia or ascend)" >&2
|
|
exit 1
|
|
;;
|
|
esac
|
|
|
|
PLATFORM_TAG="${DEEPINFER_ACCELERATOR:-nvidia}-$(uname -m)"
|
|
WHEEL_DIR="${WHEEL_DIR:-${REPO_ROOT}/build/${PLATFORM_TAG}/vendor-wheels}"
|
|
|
|
echo "📥 Initializing submodules ..."
|
|
git -C "${REPO_ROOT}" submodule update --init
|
|
|
|
target_var() {
|
|
case "$1" in
|
|
DeepSelect) echo DEEP_SELECT_BUILD_TARGET_PLATFORM ;;
|
|
FlashMLA) echo FLASH_MLA_BUILD_TARGET_PLATFORM ;;
|
|
*) echo "" ;;
|
|
esac
|
|
}
|
|
|
|
mkdir -p "${WHEEL_DIR}"
|
|
for pkg in "${PACKAGES[@]}"; do
|
|
echo "🔧 Building ${pkg} (${BUILD_TARGET}) ..."
|
|
envs=()
|
|
var="$(target_var "${pkg}")"
|
|
[ -n "${var}" ] && envs+=("${var}=${BUILD_TARGET}")
|
|
[ "${pkg}" = DeepGEMM ] && envs+=(DG_FORCE_BUILD=1)
|
|
(
|
|
cd "${VENDOR_DIR}/${pkg}"
|
|
git submodule update --init --recursive
|
|
env "${envs[@]}" python setup.py bdist_wheel --dist-dir "${WHEEL_DIR}"
|
|
)
|
|
done
|
|
|
|
echo "📦 Installing wheels from ${WHEEL_DIR} ..."
|
|
python -m pip install --no-deps --no-index --find-links "${WHEEL_DIR}" "${INSTALL[@]}"
|
|
echo "✅ vendor operators installed"
|