1. 19 2月, 2021 1 次提交
    • H
      [Cherry-pick][Dy2stat] Add Support for Tuple in Loop and Refine Error Message (#31036) · 9ad9f357
      Huihuang Zheng 提交于
      * Add Support for Tuple in for Loop (#30998)
      
      Dy2stat didn't support tuple as iteration variable in the past. This PR added there main cases:
      
             1). Non-enumerate case: for var1, var2 in var|var.numpy() will be re-written as:
                for FOR_ITER_TUPLE_PREFIX_x in var | var.numpy():
                  var1 = FOR_ITER_TUPLE_PREFIX_x[0]
                  var2 = FOR_ITER_TUPLE_PREFIX_x[1]
              2). Enumerate out tuple case: for t in enumerate(var|var.numpy) will be rewritten as:
                for FOR_ITER_TUPLE_INDEX_PREFIX_x, FOR_ITER_TUPLE_PREFIX_x in enumerate(var|var.numpy):
                  t = (FOR_ITER_TUPLE_INDEX_PREFIX_x, FOR_ITER_TUPLE_PREFIX_x)
              3). Enumerate inner tuple case: for i, (var1, (var2, va3)) in enumerate(var|var.numpy()) will
              be re-written as:
                for i, FOR_ITER_TUPLE_PREFIX_x in var | var.numpy():
                  var1 = FOR_ITER_TUPLE_PREFIX_x[0]
                  var2 = FOR_ITER_TUPLE_PREFIX_x[1][0]
                  var3 = FOR_ITER_TUPLE_PREFIX_x[1][1]
      
      * Refine fake_interface Error Message (#30981)
      
      Refine fake_interface Error Message
      9ad9f357
  2. 20 1月, 2021 1 次提交
  3. 14 1月, 2021 1 次提交
  4. 05 1月, 2021 1 次提交
    • L
      [Cherry-pick 2.0] cherry pick 3 PRs about Dynamic-to-Static (#30100) · faeee3c3
      liym27 提交于
      * [cherry-pick 2.0] Fix unitest test_slice (#29740)
      
      Before this commit, test_slice use old api `dygraph_to_static_func` to use Dynamic-t-Static and use Executor explicitly,which is not recommended to users.
      After fixed, use recommended API `paddle.jit.to_static` to replace `dygraph_to_static_func`, which won't trigger the random exception on coverage CI.
      
      * [cherry-pick 2.0][Dy2Stat] Support grammar: for ele in var[idx] (#29541)
      
      Support to transformfor ele in var stms in which var is a slice of Tensor.
      
      * [cherry-pick 2.0][Dy2Stat] Fix bug for loop: a variable is used and created in loop, but used before created (#29769)
      faeee3c3
  5. 28 12月, 2020 2 次提交
    • L
      [Cherry-Pick 2.0][Dy2Stat] 1. Fix bug of for-range stmts. 2. Support that step... · a8b6dd86
      liym27 提交于
      [Cherry-Pick 2.0][Dy2Stat] 1. Fix bug of for-range stmts. 2. Support that step value is negative in for-range stmts (#29519) (#29874)
      
      1. Fix error in _build_cond_stmt of for-range stmts.
      
      2. Support that step value is negative in for-range stmts
      
      3. Fix code because of the diff between Py2 and Py3
      a8b6dd86
    • H
      [Cherry-pick] Cherry-pick of PR#29579 and PR#29617 (#29904) · 63939597
      Huihuang Zheng 提交于
      * [Dy2stat] Enable jit.save to Save Without Running (#29579)
      
      Enable jit.save to Save Without Running.
      
      * Modify CublasHandleHolder to Fix Random Unittest Failure. test=develop (#29617)
      
      Modify CublasHandleHolder from using PADDLE_ENFORCE_CUDA_SUCCESS to PADDLE_RETRY_CUDA_SUCCESS to fix random unittest failure. We checked that the unittest log showed CUDA allocation error at this file, which may due to GPU not enough. We fixed similar failure in the past, so we applied PADDLE_RETRY_CUDA_SUCCESS here.
      63939597
  6. 04 12月, 2020 1 次提交
  7. 30 11月, 2020 1 次提交
    • W
      save model after jit.load (#28748) · 1476e1f9
      WeiXin 提交于
      * Changed a variable name error
      
      * Add comments
      
      * Move member functions of TranslatedLayer out of function
      
      * edit code according to review
      
      * Edit input argument of '_run_static_graph'
      
      * reset due to Segmentation fault
      
      * rename variables when stitching graph
      
      * modify code according CI
      
      * Add comments to '__i_m_p_l__'
      
      * remove blanks befor 'Get...'
      
      * edit code according to review
      
      * Add a comment to '_execution_method_creator'
      
      * Edit a comment to '_execution_method_creator'
      1476e1f9
  8. 19 11月, 2020 1 次提交
  9. 26 10月, 2020 1 次提交
  10. 29 9月, 2020 1 次提交
    • H
      [Dy2stat] Refine Dy2stat APIs to 2.0rc (#27430) · cc2fc938
      Huihuang Zheng 提交于
      Refine Dy2stat APIs to 2.0rc
      
      After discussion, we accepted 3 key points from reviewers:
      
      1. In 2.0rc we changed dygraph_to_static folder to dy2static
      2. Keep the three files: convert_call_func.py, convert_operators.py, variable_trans_func.py
      3. Remove convert_operators path when users import convert_xxx. 
      
      After this PR, users can import convert_xxx APIs by:
      
      `import paddle.jit.dy2static.convert_xxx`
      
      The file structure will be:
      
      ```
      jit
          dy2static
                convert_operators.py
                convert_func_call.py
                variable_trans_func.py
      ```
      
      Detail changed API in files:
      
      In python/paddle/jit/dygraph_to_static/convert_call_func.py:
      from ...fluid.dygraph.dygraph_to_static.convert_call_func import convert_call  #DEFINE_ALIAS
      
      In python/paddle/jit/dygraph_to_static/convert_operators.py:
      from ...fluid.dygraph.dygraph_to_static.convert_operators import cast_bool_if_necessary  #DEFINE_ALIAS
      from ...fluid.dygraph.dygraph_to_static.convert_operators import convert_assert  #DEFINE_ALIAS
      from ...fluid.dygraph.dygraph_to_static.convert_operators import convert_ifelse  #DEFINE_ALIAS
      from ...fluid.dygraph.dygraph_to_static.convert_operators import convert_len  #DEFINE_ALIAS
      from ...fluid.dygraph.dygraph_to_static.convert_operators import convert_logical_and  #DEFINE_ALIAS
      from ...fluid.dygraph.dygraph_to_static.convert_operators import convert_logical_not  #DEFINE_ALIAS
      from ...fluid.dygraph.dygraph_to_static.convert_operators import convert_logical_or  #DEFINE_ALIAS
      from ...fluid.dygraph.dygraph_to_static.convert_operators import convert_print  #DEFINE_ALIAS
      from ...fluid.dygraph.dygraph_to_static.convert_operators import convert_var_dtype  #DEFINE_ALIAS
      from ...fluid.dygraph.dygraph_to_static.convert_operators import convert_var_shape  #DEFINE_ALIAS
      from ...fluid.dygraph.dygraph_to_static.convert_operators import convert_while_loop  #DEFINE_ALIAS
      
      In python/paddle/jit/dygraph_to_static/variable_trans_func.py:
      from ...fluid.dygraph.dygraph_to_static.variable_trans_func import create_fill_constant_node  #DEFINE_ALIAS
      from ...fluid.dygraph.dygraph_to_static.variable_trans_func import create_static_variable_gast_node  #DEFINE_ALIAS
      from ...fluid.dygraph.dygraph_to_static.variable_trans_func import data_layer_not_check  #DEFINE_ALIAS
      from ...fluid.dygraph.dygraph_to_static.variable_trans_func import to_static_variable  #DEFINE_ALIAS
      from ...fluid.dygraph.dygraph_to_static.variable_trans_func import to_static_variable_gast_node  #DEFINE_ALIAS
      cc2fc938
  11. 02 9月, 2020 1 次提交
  12. 31 8月, 2020 1 次提交
  13. 27 8月, 2020 1 次提交
  14. 21 8月, 2020 1 次提交
  15. 19 8月, 2020 2 次提交
  16. 12 8月, 2020 1 次提交
  17. 02 7月, 2020 1 次提交
  18. 19 6月, 2020 1 次提交
  19. 09 6月, 2020 1 次提交
  20. 03 6月, 2020 1 次提交
  21. 21 5月, 2020 1 次提交
  22. 19 5月, 2020 1 次提交
  23. 18 5月, 2020 1 次提交
    • C
      [Dy2static] Add for enumerate Variable support (#24398) · 03ba5b74
      Chen Weihang 提交于
      * initial test
      
      * for enumerate basic implement, test=develop
      
      * update unittests, test=develop
      
      * refine unittests to adapt new training mode, test=develop
      
      * refactor for node stmts parsing code, test=develop
      
      * self-review & polish details, test=develop
      03ba5b74
  24. 13 5月, 2020 1 次提交
  25. 12 5月, 2020 1 次提交
  26. 24 4月, 2020 1 次提交
    • L
      [Dy2Stat] Optimize loop cond (#24049) · 2961a4f0
      liym27 提交于
      * Simplify code for gast.If in is_control_flow_to_transform.
      * Move IsControlFlowVisitor to file utils. 
      * Don't use convert_call for build-in func in CallTransformer. 
      * Optimize api is_control_flow_to_transform. 
      * Polish the document of IsControlFlowVisitor.
      2961a4f0
  27. 17 4月, 2020 1 次提交
  28. 10 4月, 2020 1 次提交
  29. 04 4月, 2020 1 次提交
  30. 24 3月, 2020 2 次提交
  31. 19 3月, 2020 2 次提交
  32. 17 3月, 2020 1 次提交
  33. 14 3月, 2020 1 次提交
  34. 12 3月, 2020 1 次提交
  35. 11 3月, 2020 2 次提交