1. 06 1月, 2021 1 次提交
    • L
      [Cherry-Pick 2.0][Dynamic Inplace] Support ShareInplaceVersionCounterWith for... · 743649b5
      liym27 提交于
      [Cherry-Pick 2.0][Dynamic Inplace] Support ShareInplaceVersionCounterWith for C++ Tensor (#29842) (#30105)
      
      Before this PR, SharePlaceHolderWith share Tensor between different C++ Variable, which meas sharing the data, shape, and inplace_version_counter_ of Tensor.
      But in some cases, Sharing data and inplace_version_counter_ but not sharing shape is needed. For example, inplace op reshape, can't share shape.
      
      This PR, discard SharePlaceHolderWith, and expose ShareInplaceVersionCounterWith for C++ Tensor.
      This reverts commit b10ecd9d.
      
      * Support ShareInplaceVersionCounterWith to share the same inplace version counter for VarBase
      743649b5
  2. 29 12月, 2020 1 次提交
    • C
      [Cherry-pick] Complex network execute support (#29905) · 91ebc460
      Chen Weihang 提交于
      * [Complex] Add support for complex grad accumulated (#29889)
      
      * add support for complex grad accumulated
      
      * add unittest for coverage
      
      * update test dtype
      
      * remove useless blank line
      
      * [Complex] Handle complex to real after type promotion (#29855)
      
      * try to add fwd op input dtypes
      
      * refactor base impl
      
      * return tmp_ins after dygraph prepare data
      
      * fix typo found in debug
      
      * polish comment & add complex net test
      
      * revert detail change
      
      * fix unittest failed
      
      * add complex kernel condition control
      
      * fix xpu test failed & polish comment
      
      * polish details by review comments
      
      * Complex op test (#29753)
      
      * delete no need to calculate inputs in dygraph op_test
      
      * delete no need to calculate inputs in dygraph op_test
      
      * change grad elementwise_mul for complex types (#29757)
      
      * add conj op for complex types
      
      * add conj for complex types
      
      * add more test case
      
      * add conj_op test
      
      * modify conj api and impl
      
      * add complex type for fill_constant_op xpu
      
      * add setConstant for complex type
      
      * remove complex conj test file
      
      * user define grad for test_conj_op
      
      * add test case for static mode of conj api
      
      * modify conj doc
      
      * change input args name to x
      
      * remove useless codes
      
      * conj support real types
      
      * add conj test case for real number
      
      * delete no need to calculate inputs in dygraph op_test
      
      * delete no need to calculate inputs in dygraph op_test
      
      * modify grad of mul for complex types
      
      * fix the grads of inputs args order not match bug
      
      * change the grad of div when complex types (#29804)
      
      * change the grad of div when complex types
      
      * fix the grads of inputs args order not match bug
      Co-authored-by: Nchentianyu03 <chentianyu03@baidu.com>
      91ebc460
  3. 30 11月, 2020 1 次提交
    • L
      Check whether there is any inplace operation affecting gradient calculation. (#27901) · 865a4598
      liym27 提交于
      * Add a class TensorInplaceVersion to count the inplace version and put it in framework::Tensor instead of Allocation or Variable.
      
      * Add a new attribute `_inplace_version` for VarBase.
      
      * Raise exception if an inplace operation can result in incorrect gradient computation.
      
      * Add a new interface _bump_inplace_version() for VarBase to bump the version whenever the Tensor is modified through an inplace operation.
      
      * For api assign, call _bump_inplace_version() when it's an inplace operation inn dynamic mode.
      
      * Use original var_wrapper if the inplace_version is not changed.
      
      * Replace SnapshotVarWrapperList with SnapshotVarWrapper to optimize performane.
      865a4598
  4. 24 9月, 2020 1 次提交
    • W
      use iwyu clean include (#27267) · df43905f
      wanghuancoder 提交于
      * use iwyu clean include, test=develop, test=win
      
      * compilation error, test=develop
      
      * fix compilation error2, test=develop
      
      * fix compilation error3, test=develop
      
      * fix compilation error4, test=develop
      
      * fix compilation error5, test=develop
      
      * fix compilation error6, test=develop
      
      * fix compilation error7, test=develop
      
      * fix compilation error8, test=develop
      
      * fix compilation error8, test=develop
      
      * fix compilation error10, test=develop
      
      * fix compilation error11, test=develop
      df43905f
  5. 08 9月, 2020 1 次提交
    • W
      Error msg/polish tensor error msg (#26976) · 13804ed8
      WeiXin 提交于
      * polish one line error message in tensor.cc
      
      * polish error messages in tensor.cc,tensor.h tensor_impl.h
      
      * polish error messages in tensor.cc tensor.h tensor_impl.h
      
      * polish error messages in tensor.cc,tensor.h tensor_impl.h
      
      * polish error messages in tensor.cc tensor.h tensor_impl.h tensor_test.cc
      
      * polish error messages in tensor.cc tensor.h tensor_impl.h
      13804ed8
  6. 03 6月, 2020 1 次提交
  7. 25 3月, 2020 1 次提交
  8. 10 12月, 2019 1 次提交
    • A
      MKL-DNN 1.0 Update (#20162) · e81f0228
      Adam 提交于
      * MKLDNN v1.0 rebase to Paddle 1.6
      test=develop
      
      * Add hacky paddle::string::to_string() implementation
      
      * vectorize<int64-t>() -> vectorize() cleanup
      test=develop
      
      * PADDLE_ENFORCE and void_cast fixes
      test=develop
      
      * Rebase changes
      test=develop
      
      * Cosmetics
      test=develop
      
      * Delete MKL from mkldnn.cmake
      test=develop
      
      * CMake debug commands
      test=develop
      
      * Delete MKLDNN_VERBOSE and rebase fixes
      test=develop
      
      * Rebase fixes
      test=develop
      
      * Temporarily disable int8 resnet101 vgg16 and vgg19 tests
      test=develop
      
      * Add libmkldnn.so.1 to python setup
      test=develop
      
      * Add libmkldnn.so.1 to inference_lib cmake after rebase
      test=develop
      
      * Post rebase fixes + FC int8 changes
      test=develop
      
      * Fix LRN NHWC
      test=develop
      
      * Fix NHWC conv3d
      test=develop
      
      * Windows build fix + next conv3d fix
      test=develop
      
      * Fix conv2d on AVX2 machines
      test=develop
      e81f0228
  9. 27 11月, 2019 1 次提交
    • Y
      Support numpy bridge (enabled by default in dygraph mode) (#20983) · d5ff79e5
      Youwei Song 提交于
      * add numpy bridge
      
      * fix template compile
      
      * add unittest, add default
      test=develop
      
      * fix unittest
      test=develop
      
      * fix unittest
      test=develop
      
      * zero_copy=True for to_variable,
      test=develop
      
      * bug fix
      test=develop
      
      * disable deprecated NumPy API
      test=develop
      
      * use better design of NumpyAllocator
      test=develop
      
      * fix Py_None check
      test=develop
      
      * reset c++ tracer when jump out dygraph guard
      test=develop
      
      * refine PADDLE_ENFORCE_xx format
      test=develop
      
      * bug fix of tracer switch
      test=develop
      
      * update decref
      test=develop
      d5ff79e5
  10. 19 11月, 2019 1 次提交
  11. 11 7月, 2019 1 次提交
    • Z
      Feature/buffer_shared_inplace (#17911) · d3003a16
      Zeng Jinle 提交于
      * feature/buffer_shared_inplace, test=develop
      
      * refine code, test=develop
      
      * fix elementwise_add op cpu inplace and sum inplace bug, test=develop
      
      * add unittest and debug log, test=develop
      
      * fix parallel_executor scope bug, polish code, test=develop
      
      * fix sum op, activation op, single_in_place_inference bug, test=develop
      
      * remove kLocalExecScopeName, test=develop
      
      * fix unittest,test=develop
      
      * fix out_var first version bug, test=develop
      
      * follow comments,test=develop
      d3003a16
  12. 10 6月, 2019 1 次提交
  13. 28 3月, 2019 2 次提交
    • C
      Fuse Adam And SGD ops (#15933) · 1096746c
      chengduo 提交于
      * fuse optimizer
      1096746c
    • J
      [MKL-DNN] Tensor modifications revert (#16462) · 26323274
      Jacek Czaja 提交于
      * Revert "[MKL-DNN] Fix to crash of Transformer when mkldnn is to be used (#16233)"
      
      This reverts commit 13816dd4.
      Apart from enabling transformer for MKL-DNN
      
      * Revert "- MKL-DNN pooling updated to set_prim_desc"
      
      This reverts commit c63f6b20.
      
      Conflicts:
      	paddle/fluid/operators/mkldnn/concat_mkldnn_op.cc
      
      * Revert "[MKL-DNN] MKL-DNN specific Tensor modification (#15429)"
      
      test=develop
      
      This reverts commit dec9cf53.
      
      * - concat compilation fix
      
      - lint
      
      test=develop
      
      - Lint fixes
      
      test=develop
      
      - Lint fixes
      
      test=develop
      
      - Fix Transpose MKLDNN op
      
      test=develop
      26323274
  14. 25 2月, 2019 1 次提交
    • J
      [MKL-DNN] MKL-DNN specific Tensor modification (#15429) · dec9cf53
      Jacek Czaja 提交于
      * - Implemented draft of primitive desc keeping in Tensor
      
      test=develop
      
      - TransposeMKLDNNHandler::AcquireSrcMemory was reimplemented
      
      - Added nchw and nc formats setting for sake of compatiblity
      
      Fixed unit tests
      
      - Worakaround to problem with 5D data in conv
      
      - Added 3D and 1D MKL-DNN formats for name handles for tensor
      
      test=develop
      
      - Fix to UTs
      
      test=develop
      
      - Conv fp32 op was updated
      
      Cosmetic fixes
      
      test=develop
      
      - tensor mkldnn cosmetics
      
      test=develop
      
      - Moved most of mkl-dnn specific code from Tensor to mkl-dnn utils
      
      * - Lint fixes
      
      test=develop
      
      * - setting prim dec in Tensor , sets also layout to kMKLDNN
      
      test=develop
      
      * - Moved creation of prim desc totally out of Tensor
      
      test=develop
      
      * - Cosmetic fixes adter review
      
      test=develop
      dec9cf53
  15. 25 12月, 2018 1 次提交
  16. 21 12月, 2018 1 次提交
    • C
      [Feature] Add Temporary Allocator (#14875) · 79bd6dfa
      chengduo 提交于
      * Add Temporal Allocator
      
      * add Temporay Allocator to DeviceContext
      test=develop
      
      * code refine
      test=develop
      
      * fix mean_iou
      test=develop
      
      * Add DeviceTemporaryAllocator
      test=develop
      
      * fix conv_op bug
      test=develop
      
      * small fix
      test=develop
      
      * code refine
      test=develop
      
      * log refine
      test=develop
      
      * fix unit test
      test=develop
      
      * move double check
      
      * refine concat_and_split
      test=develop
      
      * add limit_of_temporary_allocation
      test=develop
      
      * fix name
      test=develop
      79bd6dfa
  17. 17 12月, 2018 1 次提交
  18. 13 12月, 2018 1 次提交
  19. 12 12月, 2018 1 次提交
  20. 07 12月, 2018 1 次提交
    • S
      polish code · eb825246
      sneaxiy 提交于
      add unittest model containing while_op
      remove unnecessary codes
      test=develop
      eb825246
  21. 04 12月, 2018 1 次提交
  22. 03 12月, 2018 1 次提交
  23. 08 11月, 2018 1 次提交
  24. 25 10月, 2018 1 次提交
  25. 23 10月, 2018 1 次提交
  26. 29 9月, 2018 1 次提交
  27. 28 9月, 2018 1 次提交
  28. 15 9月, 2018 1 次提交
  29. 12 9月, 2018 1 次提交
  30. 02 9月, 2018 1 次提交
  31. 17 8月, 2018 2 次提交
  32. 02 8月, 2018 1 次提交
  33. 07 6月, 2018 1 次提交
    • M
      Mkldnn layout (#11040) · 3ff9ba0e
      mozga-intel 提交于
      * Add MKLDNN layout support in Paddle
      
      Add MKLDNN layout in Paddle so that MKLDNN friendly memory layout
      can be used in MKLDNN enabled OP kernel. Before this commit, NCHW
      is hardcode to be used in all MKLDNN op kernels. As a result,
      non-optimized execution path is selected in MKLDNN primitive which
      bring worse performance.
      Besides framework change, three MKLDNN OP kernels were updated
      for using new MKLDNN layout. They are conv/pool2d/batch_norm.
      Other MKLDNN OP kernels need be also updated in similar way to
      achieve best performance.
      
      * Add MKLDNN layout support in activation OP
      
      * Don't populate layout from input to output when kMKLDNN in
      
      * Refine pool mkldnn op kernel
      
      * MKLDNN layout
      
      * Remove the inferitance from tensor file
      
      * MKLDNN layout: refactoring
      
      * Remove additional #define to register new operator
      
      * Prepare mkldnn tests to work with layout
      3ff9ba0e
  34. 06 6月, 2018 1 次提交
  35. 18 4月, 2018 2 次提交
  36. 16 4月, 2018 2 次提交