(此 ISSUE 为 PaddlePaddle Hackathon 活动的任务 ISSUE,更多详见PaddlePaddle Hackathon)
【任务说明】
-
任务标题:在 Paddle 中实现 Common Subexpression Elimination(公共子表达式删除)的图优化 pass
-
技术标签:深度学习框架,C++,图优化
-
任务难度:困难
-
详细描述: 在深度学习相关的计算图中,会存在一些公共的子串,例如 h = a + b + c,f = b + a+ e,那么在整个计算图中,根据加法算子的交换律,a + b = b + a,那么我们可以将上面公式化简为 n = a + b, h = n + c ,f = n + e,这样可以减少一次 kernel 的运算,进而提升整体的执行效率。
【提交内容】
-
任务提案
-
任务 PR 到 Paddle
-
相关技术文档
-
任务单测文件
【技术要求】
-
熟练掌握 C++
-
熟悉图操作
-
了解 Paddle pass相关的技术背景