feat: Introduce custom RCCL library management for gfx1151, including build scripts, Docker integration, and VLLM benchmarks.
This commit is contained in:
Executable
+50
@@ -0,0 +1,50 @@
|
||||
#!/bin/bash
|
||||
set -e
|
||||
# Configuration
|
||||
REPO_URL="https://github.com/kyuz0/rocm-systems.git"
|
||||
BRANCH="gfx1151-rccl"
|
||||
BUILD_DIR="build_gfx1151"
|
||||
ROCM_PATH=${ROCM_PATH:-/opt/rocm}
|
||||
# Project sub-directory
|
||||
PROJECT_DIR="projects/rccl"
|
||||
echo "=== Building RCCL for gfx1151 ==="
|
||||
echo "Repo: $REPO_URL"
|
||||
echo "Branch: $BRANCH"
|
||||
echo "ROCm Path: $ROCM_PATH"
|
||||
# 1. Clone/Fetch
|
||||
if [ -d "rocm-systems" ]; then
|
||||
echo "Directory 'rocm-systems' exists. Updating..."
|
||||
cd rocm-systems
|
||||
git fetch origin
|
||||
git checkout $BRANCH
|
||||
git pull origin $BRANCH
|
||||
else
|
||||
echo "Cloning repository..."
|
||||
git clone -b $BRANCH $REPO_URL
|
||||
cd rocm-systems
|
||||
fi
|
||||
# 2. Setup Build Directory
|
||||
echo "Entering project directory..."
|
||||
cd $PROJECT_DIR
|
||||
mkdir -p $BUILD_DIR
|
||||
cd $BUILD_DIR
|
||||
echo "Configuring CMake for gfx1151..."
|
||||
# We explicitly set GPU_TARGETS to gfx1151 to override the default list.
|
||||
# We also set AMDGPU_TARGETS for standard rocm-cmake compliance.
|
||||
CXX=$ROCM_PATH/bin/hipcc cmake .. \
|
||||
-DCMAKE_CXX_COMPILER=$ROCM_PATH/bin/hipcc \
|
||||
-DDEFAULT_GPUS="gfx1151" \
|
||||
-DGPU_TARGETS="gfx1151" \
|
||||
-DAMDGPU_TARGETS="gfx1151" \
|
||||
-DCMAKE_INSTALL_PREFIX=./install \
|
||||
-DBUILD_TESTS=OFF \
|
||||
-DGENERATE_SYM_KERNELS=OFF \
|
||||
-DENABLE_AMDSMI=OFF \
|
||||
-DCMAKE_BUILD_TYPE=Release
|
||||
# 3. Build
|
||||
echo "Building librccl.so..."
|
||||
make -j$(nproc)
|
||||
echo "=== Build Complete ==="
|
||||
echo "Libraries are located in:"
|
||||
echo " $(pwd)/librccl.so"
|
||||
echo " $(pwd)/librccl.so.1"
|
||||
Reference in New Issue
Block a user