1. 01 11月, 2021 1 次提交
    • C
      add cinn_launch_op for using CINN to optimize graph (#36600) · 0a963ee9
      CtfGo 提交于
      增加CinnLaunchOp,负责执行Cinn子图编译的结果,要点如下:
      1. 在子图划分的BuildCinnPass中,每个子图在原图中会被替换为该CinnLaunchOp,由它来调用Cinn进行子图编译、执行的功能。
      2. CinnLaunchOp的输入/输出即为子图的输入和输出,另外增加`compilation_key`属性,它可由该属性key从全局Cache中获取子图对象、编译结果,该属性由BuildCinnPass在创建Op时进行设置
      3. CinnLaunchOp功能实现的流程为:
              - 从全局Cache中获取子图对象
              - 从全局Cache中获取子图编译结果,未命中cache时进行即时编译
              - 根据编译结果的变量信息(数据类型、shape)初始化运行时数据,分配内存/显存
              - 将运行时数据打包为参数,调用cinn的可执行对象runtime program进行计算
              - 子图运行结果通过参数指针同步到paddle侧的tensor
      0a963ee9
  2. 28 10月, 2021 1 次提交
    • Z
      Fix several bugs for enabling Paddle to train with CINN. (#36739) · c93331c5
      Zhen Wang 提交于
      * Update the content of `test_parallel_executor_run_cinn.py`.
      
      * Fix some bugs in the topological sort and `CreateNewSubGraph`.
      
      * Update the CINN commit id used by Paddle.
      
      * Update the unit test to `add+relu`.
      
      * Update according to reviewers' suggestion.
      c93331c5
  3. 26 10月, 2021 1 次提交
  4. 25 10月, 2021 1 次提交
    • Z
      Create CinnCompiler class for compiling subgraphs found by build_cinn_pass. (#36562) · 4c460378
      Zhen Wang 提交于
      * Init the functions of CinnCompiler.
      
      * Add the unit test for CinnCompiler.
      
      * Fix some compilation errors.
      
      * Update the UT of cinn_compiler.
      
      * Use Decomposer&OpFusion passes in CinnCompiler::CompileGraph.
      
      * Update some comments.
      
      * Uncomment some includes in build_cinn_pass.cc.
      
      * Use refs instead of ptrs as returned types of FindGraph & Compile in
      CinnCompiler.
      
      * Use the merged CinnGraphSymbolization functions in CinnCompiler.
      4c460378
  5. 23 10月, 2021 2 次提交
    • J
      add cinn graph symbolization (#36417) · bbd4bd73
      jiangcheng 提交于
      * add cinn graph symbolization
      
      * fix some bug
      
      * add paddle scope to cinn scope
      
      * add paddle scope to CINN scope in Symbolization, and add feed op when build cinn pass
      
      * fix some bug
      
      * fix some bug by review advices
      
      * optimize code problem
      
      * revert build_cinn_pass and move the change to https://github.com/PaddlePaddle/Paddle/pull/36503
      
      * fix some bug after co-compilation
      
      * perfect single test script
      
      * remove scope and rename feed_target to input_tensor
      
      * using std::unordered_map instead of absl::flat_hash_map
      
      * fix single test bug
      
      * revert to preverion for WITH_CINN has add in later PR
      
      * full error information for CI
      
      * full enfore information for CI pass
      bbd4bd73
    • J
      Add transformer of paddle desc and cinn desc (#36100) · 3cb6f65e
      jiangcheng 提交于
      * add transformer of paddle desc and cinn desc
      
      * change LOG(FATAL) to PADDLE_THROW for ci
      
      * full error imformation for ci
      
      * fix some problem as review advice
      
      * fix some bug
      
      * move vat type utils to tansform_desc header file
      
      * add if NOT WITH_CINN control whether compile
      
      * build_strategy check whether open WITH_CINN
      
      * add control WITH_CINN in cmake
      3cb6f65e
  6. 19 10月, 2021 1 次提交
  7. 15 10月, 2021 1 次提交
    • J
      Add BuildCinnPass (#36345) · b3f02c57
      jiangcheng 提交于
      * Add CinnSubgraphSearchPass
      
      * solve CI problem of subgraph order not same
      
      * fix some bug by review advices
      
      * ensure the independently of subgraph, that mean the subgraph should not have link to out-graph
      
      * rename cinn_subgraph_search_pass to build_cinn_pass and delete paddle_to_cinn_pass
      
      * add flag to control wheter append build cinn pass
      
      * remove AppendPass at ParallelExecutorPassBuilder
      
      * rename paddle_to_cinn_pass to build_cinn_pass in build_strategy and close test_run_from_cinn
      b3f02c57
  8. 11 10月, 2021 1 次提交
  9. 28 9月, 2021 1 次提交
    • H
      Add Basic CINN Runner Class (#35978) · 6f18b041
      Huihuang Zheng 提交于
      * Add Basic CINN Runner Class
      
      * Add CinnCacheKey
      
      * Add Cache logic and improve CinnCacheKey
      
      
      * Modify as reviewer commented
      
      * Implement hash_combine to fix MAC build.
      6f18b041