Ouzhang's picture
Add files using upload-large-folder tool
31dc8dc verified
Raw
History Blame Contribute Delete
1.92 kB
#!/usr/bin/env bash
set -euo pipefail
git submodule update --init --recursive
VENV_ROOT="$(pwd)"
echo "[VENV_ROOT]: $VENV_ROOT"
NVSHMEM_ROOT="$VENV_ROOT/.venv/lib/python3.12/site-packages/nvidia/nvshmem"
NVSHMEM_LIB_DIR="$NVSHMEM_ROOT/lib"
echo "[NVSHMEM_ROOT]: $NVSHMEM_ROOT"
echo "[NVSHMEM_LIB_DIR]: $NVSHMEM_LIB_DIR"
if [[ ! -d "$NVSHMEM_LIB_DIR" ]]; then
echo "ERROR: NVSHMEM lib dir not found: $NVSHMEM_LIB_DIR"
exit 1
fi
cd "$NVSHMEM_LIB_DIR"
if [[ -L "libnvshmem_host.so" ]]; then
echo "[INFO] libnvshmem_host.so is a symlink, removing it"
rm -f "libnvshmem_host.so"
elif [[ -e "libnvshmem_host.so" ]]; then
echo "[INFO] libnvshmem_host.so exists and is not a symlink, keeping it"
else
echo "[INFO] libnvshmem_host.so does not exist, will create it"
fi
if [[ ! -e "libnvshmem_host.so" ]]; then
if [[ -e "libnvshmem_host.so.3" ]]; then
ln -s "libnvshmem_host.so.3" "libnvshmem_host.so"
echo "[INFO] linked libnvshmem_host.so -> libnvshmem_host.so.3"
else
target="$(find . -maxdepth 1 -type f -name 'libnvshmem_host.so.*' | sort | head -n 1 | sed 's|^\./||')"
if [[ -n "${target:-}" ]]; then
ln -s "$target" "libnvshmem_host.so"
echo "[INFO] linked libnvshmem_host.so -> $target"
else
echo "ERROR: no libnvshmem_host.so.* found in $NVSHMEM_LIB_DIR"
exit 1
fi
fi
fi
echo "[INFO] current host libs:"
ls -l libnvshmem_host.so*
cd "$VENV_ROOT/thirdparty/DeepEP"
unset TORCH_CUDA_ARCH_LIST
export TORCH_CUDA_ARCH_LIST="9.0"
unset DISABLE_SM90_FEATURES
rm -rf build
find . -name '*.so' -delete 2>/dev/null || true
export NVSHMEM_DIR="$NVSHMEM_ROOT"
export LD_LIBRARY_PATH="$NVSHMEM_LIB_DIR:${LD_LIBRARY_PATH:-}"
echo "[INFO] TORCH_CUDA_ARCH_LIST=$TORCH_CUDA_ARCH_LIST"
echo "[INFO] NVSHMEM_DIR=$NVSHMEM_DIR"
echo "[INFO] LD_LIBRARY_PATH=$LD_LIBRARY_PATH"
python setup.py install
python -c "import deep_ep; print('<<< deep_ep import ok >>>')"