1. 16 11月, 2021 1 次提交
    • L
      Fix attn_bias_add bug. (#37147) · a9e7a854
      Li Min 提交于
      fused_attention_op的实现中,使用了bias_add,且其实现是通过使用kernel primitive来实现的,之后kernel primitive的WriteData api接口及函数内部实现发生了更改,将判断越界的逻辑移到了template的参数中,使得调用的分支有错误,产生了越界赋值操作,污染了别的显存空间的内容。具体表现为:test_fused_attention_op_api.py 单次执行基本上不会报错,多次循环执行不同shape的输入,结果计算不对,具有偶发性,bug不易察觉。
      a9e7a854
  2. 12 11月, 2021 1 次提交
  3. 28 10月, 2021 1 次提交
  4. 27 10月, 2021 1 次提交
  5. 26 10月, 2021 1 次提交
    • L
      Add fused attention op backward and python layer. (#36498) · 5119428e
      Li Min 提交于
      功能:本PR的目标是提高attention模块的计算性能。
      为了减少框架层对op的调度开销,本PR通过在C++层手动实现attention模块,对外提供attention 大op;
      为了减少防存开销,本PR采取了两种优化方法:
      (1)在q,k,v计算时通过共享输入X,将该处的gemm,transpose和bias add从三次调用减少为一次;
      (2)使用kernel融合优化技术,在不同cuda kernel之间通过寄存器传输数据;
      5119428e
  6. 06 9月, 2021 1 次提交
    • F
      replase pass with error exception (#35367) · 5675042d
      Feng Xing 提交于
      This PR adds error exception in fused transformer python interface.
      The function body are not implemented (will be implemented later).
      Following zhiqiu's comment in previous PR-35206 (merged already), it is better to raise an exception instead of using "pass".
      5675042d
  7. 31 8月, 2021 1 次提交
    • F
      transformer opt python files (#35206) · e2991555
      Feng Xing 提交于
      This PR adds fused transformer python related files. It defines interface of fused transformer.
      
      Fused transformer implements an optimized version of transformer layer (in python/paddle/nn/layer/transformer.py). In this PR, four layers (functions) are defined:
      (1) FusedMultiHeadAttention: multi-head attention layer
      (2) FusedFeedForward: feed forward layer
      (3) FusedTransformerEncoderLayer: transformer encoder layer
      (4) FusedTransformer: transformer layer
      e2991555