[英文版|中文版]

💫 曦望芯科(Sunrise)sunrise#

  • 基于 Triton 3.4,x64

  • 适用于 S2

1. 构建与运行环境#

1.1 使用预装镜像(S2)#

如果使用此预装镜像,则无需执行后续步骤 1.x。 如果网络连接可用,也无需执行后续步骤 1.x,因为构建过程中会自动获取依赖项。

TODO

1.2 手动下载 FlagTree 依赖项#

mkdir -p ~/.flagtree/sunrise; cd ~/.flagtree/sunrise
wget https://baai-cp-web.ks3-cn-beijing.ksyuncs.com/trans/sunrise-llvm21-glibc2.39-glibcxx3.4.33-x86_64_v0.4.0.tar.gz
tar zxvf sunrise-llvm21-glibc2.39-glibcxx3.4.33-x86_64_v0.4.0.tar.gz
wget https://baai-cp-web.ks3-cn-beijing.ksyuncs.com/trans/sunriseTritonPlugin-cpython3.10-glibc2.39-glibcxx3.4.33-x86_64_v0.4.0.tar.gz
tar zxvf sunriseTritonPlugin-cpython3.10-glibc2.39-glibcxx3.4.33-x86_64_v0.4.0.tar.gz

1.3 手动下载 Triton 依赖项#

Triton 依赖项已在预装镜像中下载并安装完毕。 如果不需要从源码构建 FlagTree 或 Triton,则无需下载 Triton 依赖项。

cd ${YOUR_CODE_DIR}/FlagTree
# 适用于 Triton 3.4(x64)
wget https://baai-cp-web.ks3-cn-beijing.ksyuncs.com/trans/build-deps-triton_3.4.x-linux-x64.tar.gz
sh python/scripts/unpack_triton_build_deps.sh ./build-deps-triton_3.4.x-linux-x64.tar.gz

执行上述脚本后,原有的 ~/.triton 目录将被重命名,并创建一个新的 ~/.triton 目录用于存放预下载的包。 请注意,脚本执行过程中会提示手动确认。

2. 安装命令#

2.1 免源码安装#

# 注意:请先安装 PyTorch,再执行以下命令
python3 -m pip uninstall -y triton  # 重复执行该命令直到完全卸载
RES="--index-url=https://resource.flagos.net/repository/flagos-pypi-hosted/simple"
python3.10 -m pip install flagtree===0.4.0+sunrise3.4 $RES

预装镜像中已安装 flagtree,可通过以下命令检查:

python3 -m pip show flagtree

2.2 从源码构建#

cd ${YOUR_CODE_DIR}/FlagTree
git checkout -b triton_v3.4.x origin/triton_v3.4.x
export TRITON_BUILD_WITH_CLANG_LLD=1
export TRITON_OFFLINE_BUILD=1
export TRITON_BUILD_PROTON=OFF
export FLAGTREE_BACKEND=sunrise
MAX_JOBS=32 python3 -m pip install . --no-build-isolation -v

3. 测试与验证#

参考 Sunrise 后端测试