摘要: 飞桨Paddle动转静@to_static技术设计 一、整体概要 在深度学习模型构建上,飞桨框架支持动态图编程和静态图编程两种方式,其代码编写和执行方式均存在差异: 动态图编程: 采用 Python 的编程风格,解析式地执行每一行网络代码,并同时返回计算结果。 静态图编程: 采用先编译后执行的方式。需先在代码中预定义完整的神经网络结构,飞桨框架会将神 阅读全文
posted @ 2023-05-12 11:01 Aurelius84 阅读(346) 评论(0) 推荐(1) 编辑
摘要: cuBlas API Launch Latency 耗时异常分析记录 一、背景 最近在做 AI 编译器生成 Kernel 支持 Bert 模型训练调优工作,在分析 bert 的timeline中发现,在每个 step 的前两个 cinn_instruction_run 之后,总是固定跟着一个 2.5 ms 左右的空白。但 HOST 端其实很早就 emit 了CUDA 阅读全文
posted @ 2023-05-12 10:45 Aurelius84 阅读(211) 评论(0) 推荐(0) 编辑
摘要: AI 编译器CINN中的OpLowering优化Pass 一、Lower 主逻辑 在 OpLower::Lower() 接口中,主要分为两大类: Elementwise类,主要涉及的 OpPattern 包括:kElementwise 、kBroadcast 、kInjective Reduce 类,主要涉及的OpPattern包括:kReduction 阅读全文
posted @ 2023-05-12 10:17 Aurelius84 阅读(77) 评论(0) 推荐(1) 编辑