- 11 10月, 2021 1 次提交
-
-
由 Huihuang Zheng 提交于
Add use_cinn flag and use it to control whether we run PaddlePaddle using CINN. Also add: Replace PaddlePaddle graph with a CINN graph in a pass PE Method to feed data and run the graph by CINN
-
- 18 9月, 2021 1 次提交
-
-
由 Huihuang Zheng 提交于
Add basic Cost Model, it uses executor to run program and profile it to get op time. This is an early basic version, we will add more functions in the future.
-
- 17 9月, 2021 1 次提交
-
-
由 wuhuanzhou 提交于
#### 背景 #35602 提供Python侧开发子图替换类Pass的方式: - 利用Paddle Python API或者辅助类型定义子图program用来匹配/替换图; - Python侧注册Pass时,将注册函数最终转换为protobuf定义的PassDesc数据形式,供C++侧进行解析完成Pass实例注册。 本PR即为根据PassDesc规则描述解析生成Pass实例。 #### 方案设计 ##### Pass规则验证 在以往的Pass开发中,会存在随着算子迭代引发的匹配失效或者错误匹配的问题,该问题可以通过扫描算子支持的参数设置及参数类型等来判断是否应该使用该Pass或者给出提示需要修改Pass代码。 当前Pass开发中提供了算子兼容性OpCompatSensiblePass用于解决上述问题。但同时还存在不足:由于以往Pass开发在运行时才能获取到pattern信息,所以需要在执行Pass时才可以判断。 使用PassDesc表示的Pass可以在执行Pass前验证上述问题,这个过程在VerifyDesc中完成。 ##### 根据匹配子图构造pattern GeneratePass对于图匹配和替换使用GraphPatternDecetor完成,构造匹配pattern实际上就是将对应对象成员PDPattern中添加PDNode和边关系。该过程在函数`InitGeneratePattern`中完成,该函数没有作为GeneratePass的成员方法,主要出于后续可能开发新的Decetor考虑,GeneratePass与Decetor的操作是没有关联的。 初始化pattern主要通过遍历匹配子图program的全部算子实现: 1. 添加当前算子对应PDNode及限制条件(算子类型、属性限制等); 2. 遍历当前算子对应输入并从pattern中尝试获取PDNode: - 在pattern中获取到PDNode且为输出节点:表示属于匹配子图的中间节点,将该PDNode设置为中间节点; - 在pattern中没有获取到PDNode:添加该输入PDNode并设置作为输入节点; - 设置输入到算子的边关系; 3. 遍历当前算子对应输出: - 在pattern中获取到PDNode且为输入节点:表示属于匹配子图的中间节点,将该PDNode设置为中间节点; - 在pattern中没有获取到PDNode:添加该输入PDNode并设置作为输出节点; - 设置算子到输出的边关系; ##### 根据替换子图操作graph 替换子图操作的过程在`GetGenerateRewrite`函数中完成,与`InitGeneratePattern`类似没有作为GeneratePass的成员方法。 生成替换子图操作过程如下: 1. 判断冗余替换子图; 2. 遍历替换子图program的全部算子添加替换子图Node: 1. 添加当前算子的Node及属性设置; 2. 遍历当前算子对应输入,添加中间variable节点; 3. 遍历当前算子对应输出,添加中间variable节点; 4. 添加输入/输出节点与算子节点的边关系; 3. 删除匹配图中属于中间节点的Node; ##### 优化子图验证 对于替换子图或者替换后的计算图是否可以正确运行等,可以在执行Pass时验证,从而防止在后续执行计算图时出现异常。 当前Pass执行直接修改计算图,验证失败时无法很好的完成还原操作,目前子图验证暂时默认成功,留到后续改进。
-
- 17 8月, 2021 1 次提交
-
-
由 Zeng Jinle 提交于
* add inplace passes and tests * update * fix use_cuda undefined fix compile error of op compat * add more ut * fix CPU CI error * check adam unique * fix mac/windows ci, improve coverage * fix ci error * follow weihang's comment * fix BlockDesc::MoveFrom * follow qiuliang's comment * update * follow huihuang's comments
-
- 06 8月, 2021 1 次提交
-
-
由 Qi Li 提交于
-
- 12 6月, 2021 1 次提交
-
-
由 joanna.wozna.intel 提交于
* Small changes related to BF16 fusion_gru and fusion_lstm * Correct to pass arg by value * Add conditions to rnn op * Correct the spelling mistake * Improving the test with checking activation * Trigger CI
-
- 03 6月, 2021 1 次提交
-
-
由 王明冬 提交于
-
- 26 5月, 2021 1 次提交
-
-
由 wuhuanzhou 提交于
* optimize OP's compilation time, test=develop * add more op and run ci test, test=develop * CUDA Kernel register in cc file, test=develop * fix macros, test=develop * fix undefined symbol error, test=develop * fix compilation error and undefined symbol, test=develop * fix compilation error on Windows, test=develop * fix compilation error on Windows, test=develop
-
- 25 5月, 2021 1 次提交
-
-
由 王明冬 提交于
-
- 21 5月, 2021 1 次提交
-
-
由 王明冬 提交于
-
- 28 4月, 2021 1 次提交
-
-
由 denglin-github 提交于
* Add dlnne engine runtime * Fix log * Remove <const_cast> and remove unrelated modify with dlnne, +clang-format * Fix CMakeList format error * Add copyright message * Fix dlnne CMakeList.txt * Add some paddlepaddle_pass to support more networks * Fix some format bug * Add delete dropout_op pass * Fix some format bug * Fix format bug
-
- 22 2月, 2021 1 次提交
-
-
由 Qi Li 提交于
-
- 03 2月, 2021 1 次提交
-
-
由 Adam Osewski 提交于
-
- 16 1月, 2021 1 次提交
-
-
由 Adam Osewski 提交于
* Move pass tester helper functions to single common place. * Use helper functions in two more fuse pass tests.
-
- 13 1月, 2021 1 次提交
-
-
由 alncat 提交于
* added support for inference using qunatization aware trained dygraph * added support for inference using qunatization aware trained dygraph correct boost get usage * Delete incorrect warning message (#30196) * fix warning and no grad * clean redundant API alias in 2.0 - part 2 (#30013) * delete paddle.nn.functional.assign * fix dynamic to static error * just add the op error message for the matmul xpu (#30246) add the op error message for the matmul xpu * Add Static Variable Clone (#30208) Add clone method for static Variable so that this interface will be same as dygraph. It fixed some bugs in dy2stat * use wget to replace curl to download the lcov file (#30229) * use wget to replace curl to download the lcov file * add cache for lcov * fix test_pool3d_op timeout issue (#30248) * Fix unittests bugs. (#30250) * modify error message based on comments (#30189) * modify error message based on comments * edit code according to review. * Correct spelling according to review. * Fix bug for 'save mutiple method' (#30218) * Fix bug for 'save mutiple method' * To pass coverage. * edit code to pass coverage. * edit code to pass coverage. * add unittest for coverage. * change for coverage. * edit for coverage. * added support for inference using qunatization aware trained dygraph * Alias from paddle.fluid.layers.auc to paddle.static.auc (#30206) * add alias from fluid.layers.auc to static.auc * Update __init__.py * added support for inference using qunatization aware trained dygraph correct boost get usage * corrected boost get usage * corrected naming issues and enforcing zero check * correct paddle enforce message * added more error checkings * corrected error report message and optimized code * corrected findvar usage * corrected paddle_enforce in scope * correct error messages * correct error reporting format Co-authored-by: NLielinJiang <50691816+LielinJiang@users.noreply.github.com> Co-authored-by: NXiaoguangHu <46782768+XiaoguangHu01@users.noreply.github.com> Co-authored-by: Nwawltor <fangzeyang0904@hotmail.com> Co-authored-by: NHuihuang Zheng <zhhsplendid@gmail.com> Co-authored-by: NYUNSHEN XIE <1084314248@qq.com> Co-authored-by: NBai Yifan <me@ethanbai.com> Co-authored-by: Ngongweibao <weibao.gong@gmail.com> Co-authored-by: NWeiXin <weixin10@baidu.com> Co-authored-by: NJiaqi Liu <liujiaqi06@baidu.com>
-
- 31 12月, 2020 1 次提交
-
-
由 cc 提交于
* Add mkldnn nearest_interp and bilinear_interp op * don't run mkldnn interpolate in default * add interpolate_mkldnn_pass
-
- 29 12月, 2020 1 次提交
-
-
由 cc 提交于
* map matmul/squeeze2+matmul/reshape2+matmul to mul
-
- 28 12月, 2020 1 次提交
-
-
由 Wilber 提交于
-
- 24 12月, 2020 1 次提交
-
-
由 jakpiase 提交于
-
- 23 12月, 2020 1 次提交
-
-
由 YUNSHEN XIE 提交于
* remove duplicate ut reload * remove duplicate ut define in cmakelist
-
- 25 11月, 2020 1 次提交
-
-
由 Wojciech Uss 提交于
* Add multi_gru_fuse_pass and tests * fix date * cleaned up headers
-
- 24 11月, 2020 1 次提交
-
-
由 Wojciech Uss 提交于
* Add multi_gru_seq_fuse_pass and tests * fix date * removed unused functions
-
- 04 11月, 2020 1 次提交
-
-
由 石晓伟 提交于
* enhance the op_version_registry, test=develop * add unittests, test=develop * enhance the op_version_registry, test=develop * fix bugs, test=develop * revert pybind_boost_headers.h, test=develop * fix a attribute bug, test=develop
-
- 27 10月, 2020 1 次提交
-
-
由 Zhang Ting 提交于
* add fuse_bn_add_act pass
-
- 26 10月, 2020 1 次提交
-
-
由 Adam Osewski 提交于
-
- 14 9月, 2020 1 次提交
-
-
由 joanna.wozna.intel 提交于
-
- 29 7月, 2020 1 次提交
-
-
由 Zhou Wei 提交于
-
- 21 6月, 2020 1 次提交
-
-
由 Shibo Tao 提交于
* don't re-generate header file if content doesn't change. test=develop * add copy_if_different function. test=develop
-
- 09 6月, 2020 1 次提交
-
-
由 Sylwester Fraczek 提交于
* remove gmock from ut test=develop * coverage enabled for r+t+m fuse pass test=develop
-
- 03 6月, 2020 1 次提交
-
-
由 Jacek Czaja 提交于
-
- 08 5月, 2020 1 次提交
-
-
由 Huihuang Zheng 提交于
1. To make ProgramTranslator to support `assert` grammar, this PR adds `assert` python API and C++ code. 2. Fix a bug: graph_pattern_detector.h #include <gtest/gtest_prod.h> but didn't declared dependency at CMakeLists, which can cause single build failure. 3. Refactoring `Formatter` in print_op to make it reusable and reuse the formatter to print in assert op.
-
- 28 4月, 2020 1 次提交
-
-
由 Sylwester Fraczek 提交于
-
- 24 4月, 2020 2 次提交
-
-
由 Jacek Czaja 提交于
-
由 arlesniak 提交于
-
- 22 4月, 2020 1 次提交
-
-
由 Jacek Czaja 提交于
-
- 13 4月, 2020 1 次提交
-
-
由 joanna.wozna.intel 提交于
-
- 09 4月, 2020 1 次提交
-
-
由 mozga-intel 提交于
* Remove the NGraph engine from PDPD repository 1. Each operator was removed from the operator's directory 2. Each test was removed from the unittest directory 3. The parallel executor support was removed from the PDPD 4. The CMake file was removed from the PDPD 5. The NG flags were removed from the repository test=develop * Remove ngraph from: 1. Cmake file 2. Python file test=develop
-
- 01 4月, 2020 1 次提交
-
-
由 Jacek Czaja 提交于
-
- 27 3月, 2020 1 次提交
-
-
由 Tao Luo 提交于
test=develop
-
- 20 3月, 2020 1 次提交
-
-
由 Wilber 提交于
update embedding_eltwise_layernorm fuse pass and fused kernel, to support multi input
-