Skip to content

Conversation

@Enigmatisms
Copy link

#87 的 reopen 版本,消除了 #89 的冲突。本 PR 还包含了 #86 的 code,所以 #86 已经 closed,本 PR 一起全部进行了测试(同时包含 #81 )。#86 相关的优化见 #86 的 PR 描述。

初步简化了 FMv3 的模板表达:

  • 删除了 Split 相关逻辑(包括简化了 PPT/DualPPTX 的多余 fast_divmod 模块)
  • 删除了 Is_flashmask bool template arg
  • 删除了 IntraWGOverlap bool template arg,默认一定 True

benchmark除了 seqlen = 128 有所提升(转静态调度)之外其他配置的性能没有变化,正确性已经通过测试(逐位对齐)。

为了不引起前序未合入 PR 冲突,本 PR 应该在 #81, #86 合入后合入。#81 合入需要手动解冲突,#86 合入后需要 rebase。

大幅简化了 tile_scheduler.h,删除了不必要的实现,将公共部分用基类管理。PPT 增加了步长设置,某些 mask 类型利用 Stride 是有利的。

TODO

  • 应基于 本 PR 合入前后的编译体积/编译时间设置一个 benchmark,关系到用户体验,这是因为本 PR 做了【初步的】编译体积优化。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants