执行摘要
默认禁用 FA3 sparse mask 内核以减小 wheel 体积
如果不禁用该 flag,wheel 体积很大,超过 500MB。禁用后可减小至 361MB,减少分发和存储成本。
变更安全且收益明确,值得快速合并。适合作为了解 sgl-kernel 编译系统的示例。
变更较简单,无实质性 review 讨论。PR CI 中有两条 bot 评论,一条提示配额限制,另一条是 /tag-and-rerun-ci 命令,无技术讨论。
如果不禁用该 flag,wheel 体积很大,超过 500MB。禁用后可减小至 361MB,减少分发和存储成本。
变更安全且收益明确,值得快速合并。适合作为了解 sgl-kernel 编译系统的示例。
变更较简单,无实质性 review 讨论。PR CI 中有两条 bot 评论,一条提示配额限制,另一条是 /tag-and-rerun-ci 命令,无技术讨论。
SGL_KERNEL_ENABLE_FA3_SPARSE_MASK:在 sgl-kernel/CMakeLists.txt 中新增该选项,默认值为 OFF。FLASHATTENTION_DISABLE_SPARSE_MASK,跳过 sparse mask 内核的编译。| 文件 | 模块 | 状态 | 重要度 |
|---|---|---|---|
sgl-kernel/CMakeLists.txt |
内核编译 | modified | 2.47 |
sgl-kernel/CMakeLists.txt
configuration
唯一变更文件,新增编译选项和条件宏定义,控制 FA3 sparse mask 内核是否编译。
# sgl-kernel/CMakeLists.txt
# 新增编译选项,默认关闭 sparse mask 内核以减小 wheel 体积
option(SGL_KERNEL_ENABLE_FA3_SPARSE_MASK "Enable FA3 sparse mask kernels" OFF)
# ... 在 FA3 编译配置中,如果选项关闭,则添加宏定义跳过 sparse mask 内核
if(SGL_KERNEL_ENABLE_FA3)
# 其他配置 ...
if(NOT SGL_KERNEL_ENABLE_FA3_SPARSE_MASK)
list(APPEND FLASH_OPS_COMPILE_DEFS FLASHATTENTION_DISABLE_SPARSE_MASK)
endif()
target_compile_definitions(flash_ops PRIVATE ${FLASH_OPS_COMPILE_DEFS})
endif()
当前评论区没有形成足够清晰的争议点或结论,后续有更多讨论时会体现在这里。
当前没有检测到明确关联的 Issue 链接,后续同步到相关引用后会出现在这里。
参与讨论