1. 26 10月, 2021 1 次提交
    • L
      [cherry-pick-2.2] Fused attention op forward (#35905) (#36708) · d2be870a
      Li Min 提交于
      功能:本PR的目标是提高attention模块的计算性能。
      为了减少框架层对op的调度开销,本PR通过在C++层手动实现attention模块,对外提供attention 大op;
      为了减少防存开销,本PR采取了两种优化方法:
      (1)在q,k,v计算时通过共享输入X,将该处的gemm,transpose和bias add从三次调用减少为一次;
      (2)使用kernel融合优化技术,在不同cuda kernel之间通过寄存器传输数据;
      d2be870a
  2. 17 9月, 2021 1 次提交
  3. 16 9月, 2021 1 次提交
  4. 09 9月, 2021 1 次提交
  5. 12 8月, 2021 1 次提交
  6. 06 5月, 2021 1 次提交
    • R
      [ROCM] bugfix for unittest (#32392) · 31392627
      ronnywang 提交于
      * fix test_unpool_op
      
      * fix test_inplace_addto_strategy
      
      * fix test_conv2d_fusion_op
      
      * fix test_imperative_lod_tensor_to_selected_rows, test_imperative_selected_rows_to_lod_tensor
      
      * fix test_dot_op
      
      * fix test_correlation_op
      
      * fix tracer
      
      * fix test_memcpy_op
      31392627
  7. 03 3月, 2021 1 次提交
  8. 27 1月, 2021 1 次提交
    • J
      REUPLOAD Added vanilla LSTM and LSTM with peepholes oneDNN fp32 kernel (#30719) · f8da5536
      jakpiase 提交于
      * added external reorder to profiler
      
      * resolved conflict
      
      * added enable_static
      
      * initial version of lstm, not working yet
      
      * added lstm to operators.cmake
      
      * added vanilla lstm mkldnn op
      
      * added peephole weights integration
      
      * minor changes
      
      * added formatting
      
      * added fusion_lstm_mkldnn to static_whitelist
      
      * added formatting
      
      * removed comment
      
      * moved use_peepholes attribute inside is_cached block
      
      * reverted wrong changes
      
      * minor formatting change
      
      * minor changes
      
      * changed stream handling
      
      * minor change
      
      * added datatype to GetExpectedKernelType()
      
      * added reading stream from TLS
      f8da5536
  9. 26 1月, 2021 2 次提交
  10. 07 12月, 2020 1 次提交
    • L
      Compiling operator libraries with Unity build (#29130) · 671555ed
      LoveAn 提交于
      * Compiling operator libraries with Unity Build on Windows CPU.
      
      * Compiling operator libraries with Unity Build on Windows GPU, no_test, test=windows_ci
      
      * Add option in windows ci script, no_test, test=windows_ci
      
      * Optimize parallel compiling, test=develop
      
      * remove limit of parallel compile and skip some ops in UB, test=develop
      
      * remove changes of header file, test=develop
      
      * remove changes of header file, test=develop
      
      * fix test_eye_op unittest failed, test=develop
      
      * Compiling operator libraries with Unity Build on Linux, test=develop
      
      * set default WITH_UNITY_BUILD=OFF, test=develop
      
      * Move unity build rules into a single file and add comment, test=develop
      
      * optimize parallel compilation, test=develop
      
      * fix undefined reference error on coverage ci, test=develop
      671555ed
  11. 12 11月, 2020 1 次提交
  12. 23 9月, 2020 1 次提交
  13. 06 8月, 2020 1 次提交
    • A
      Add oneDNN fusion_gru kernel (#25594) · 68c6160e
      Adam 提交于
      * Add oneDNN fusion_gru kernel and fix fc+gru pass
      test=develop
      
      * Formatting changes
      test=develop
      
      * Lint fixes
      test=develop
      
      * Add memory::format_tag::any to GRU weights
      test=develop
      
      * Fix build with CUDA
      
      * Fix build with CUDA v2
      68c6160e
  14. 11 3月, 2020 1 次提交
  15. 10 1月, 2020 1 次提交
    • Z
      Add bn and relu fuse pass (#22048) · 46189b16
      Zhen Wang 提交于
      * add bn and relu fuse pass
      
      * add op attr assert and dtype assert
      
      * fix some inputs&&outputs bugs for the fused op and pattern.
      
      * add the unittest for fuse_bn_act_pass. test=develop
      
      * use normative enforce statements. test=develop
      
      * add the cpu test. test=develop
      
      * add the support of batch_size=1 for the bn with relu op. test=develop
      
      * add the error type for paddle throws. test=develop
      
      * add fused_batch_norm_act and fused_batch_norm_act_grad to op_has_unsed_vars_white_list. test=develop
      46189b16
  16. 03 1月, 2020 1 次提交
    • Y
      Add the first implememtation of fusion_group op (#19621) · d4832077
      Yiqun Liu 提交于
      * Add the dynamic load of nvrtc, and support runtime compiling of CUDA kernel using nvrtc.
      test=develop
      
      * Call CUDA driver api to launch the kernel compiled by nvrtc.
      test=develop
      
      * Disable for mac and windows.
      test=develop
      
      * Refine the codes to support manually specified num_threads and workload_per_thread.
      test=develop
      
      * Refine the CUDA kernel to support large dims.
      test=develop
      
      * Add DeviceCodePool to manage all device codes.
      
      * Add the first implementation fusion_group op.
      
      * Add unit-test for fusion_group op.
      
      * Add the check of result.
      
      * Add the check of nvrtc in unit-test.
      test=develop
      
      * Add comment to explain the inputs, outputs and features of fusion_group op.
      test=develop
      
      * Disable fusion_group op for mac and windows.
      test=develop
      
      * Make the compiling of device code return status instead of hanging up.
      test=develop
      
      * Add the check of whether there is CUDA driver library, and do not core dump when failing to call the CUDA driver API.
      
      * Unify fusion_group_op's input and output names.
      test=develop
      
      * Add the check of CUDA driver library in unittest.
      test=develop
      
      * Refine the calling of PADDLE_ENFORCE.
      test=develop
      d4832077
  17. 30 10月, 2019 1 次提交
  18. 19 9月, 2019 1 次提交
    • Y
      Add a pass to fuse fc+elementwise_add+layernorm (#19776) · 3cd985a6
      Yiqun Liu 提交于
      * Add fc_elementwise_layernorm_fuse pass and unittest.
      
      * Add fused_fc_elementwise_layernorm op and its GPU kernel.
      test=develop
      
      * Apply fc_elementwise_layernorm_fuse_pass to GPU inference.
      
      * Add the setting of attrs in the definition of binary_op.
      test=develop
      
      * Add comment.
      
      * Implement the unittest.
      test=develop
      
      * Change the unittest name of layer_norm.
      test=develop
      3cd985a6
  19. 03 1月, 2019 1 次提交
  20. 28 12月, 2018 1 次提交
    • Q
      Inception fusion operator. (#14968) · 6f0a1d7b
      qingqing01 提交于
      * Inception fusion operator.
      * Support horizontal layer fusion in conv_fusion_op.
      * Search conv algo strategy for variable-length input.
         search N times and cache the searched algos. For other input, choose the algo of input whose area is closest to this input.
      6f0a1d7b
  21. 26 11月, 2018 1 次提交
  22. 16 11月, 2018 1 次提交
    • W
      Refine operator cmake (#14413) · a2d9b344
      Wu Yi 提交于
      * wip simplify operator framework
      
      * wip
      
      * wip
      
      * done test=develop
      
      * clean test=develop
      
      * fix test=develop
      
      * fix deps test=develop
      
      * fix cpu build test=develop
      
      * fix tensorrt build test=develop
      
      * fix tests test=develop
      
      * fix test=develop
      
      * fix cpu build test=develop
      a2d9b344