PcieThrough(PCIe 直通)场景对 broadcast 模板提出了新的调度约束:该场景下输入数据经 PCIe 直通到设备,模板默认的 OneDim 快速分支与 NDDMA 调度不再适用,需要统一走 UB BRC 调度;同时非连续输入模板在 PcieThrough 场景下不受支持,需要在 tiling 阶段显式拦截,避免问题下发到 kernel 侧。
PcieThrough 特性配套需求,与 ops-math 仓库 mul/select 算子适配 PR(https://gitcode.com/cann/ops-math/pull/5116)协同提出。
BroadcastBaseTiling::DoTiling
GetPcieThroughInfo
context_->GetPcieThroughFlag()
!isPcieThrough
DoBroadcastOpTiling
isUbBroadcast = true
cann_version_headers
version/metadef_version.h
关联 PR:https://gitcode.com/cann/opbase/pull/788
/assign @hahaha22
Backgroud(背景信息)
PcieThrough(PCIe 直通)场景对 broadcast 模板提出了新的调度约束:该场景下输入数据经 PCIe 直通到设备,模板默认的 OneDim 快速分支与 NDDMA 调度不再适用,需要统一走 UB BRC 调度;同时非连续输入模板在 PcieThrough 场景下不受支持,需要在 tiling 阶段显式拦截,避免问题下发到 kernel 侧。
Origin(信息来源)
PcieThrough 特性配套需求,与 ops-math 仓库 mul/select 算子适配 PR(https://gitcode.com/cann/ops-math/pull/5116)协同提出。
Benefit / Necessity (价值/作用)
Design(设计方案)
BroadcastBaseTiling::DoTiling新增GetPcieThroughInfo步骤,经context_->GetPcieThroughFlag()(METADEF_VERSION_NUM >= 90200000 编译期门控,低版本兜底 false)获取场景标志!isPcieThrough条件,PcieThrough 场景统一进入DoBroadcastOpTilingDoBroadcastOpTiling中 PcieThrough 时强制isUbBroadcast = true,走 UB BRC 调度cann_version_headers链接以包含version/metadef_version.h关联 PR:https://gitcode.com/cann/opbase/pull/788