带你读《2022技术人的百宝黑皮书》——淘宝逛逛ODL模型优化总结(5)

简介: 带你读《2022技术人的百宝黑皮书》——淘宝逛逛ODL模型优化总结(5)

带你读《2022技术人的百宝黑皮书》——淘宝逛逛ODL模型优化总结(4) https://developer.aliyun.com/article/1246918?groupCode=taobaotech



除此之外,Cuda Graph优化无法将其覆盖,最终导致在晚高峰期间,GPU的算力无法得到充分释放,模型的RT及P99上涨严重。服务的稳定性无法得到保障,无法为我们的推荐服务提供低延时的排序服务。


image.png


优化方案


我们在离线模型训练阶段,对tf框架中的keras.layers.Dense类的实现部分进行了简化,替换成了简单的Reshape-MatMul-Reshape结构(可参考keras.backend.dot实现),在算法同学使用优化后的tf框架进行训练后,我们重新部署了模型,结构变化符合预期,全连接网络的结构变得更加简洁,且避免了引入与Cuda Graph不兼容的算子,这也帮助我们在模型的GPU优化部分拿到了最大的收益。


image.png


后续的一些适配操作


我们打开了Cuda Graph优化后,发现集群出现了coredump,经过分析堆栈发现问题出现在了CallGraphOP节点的内部,原因应该是Cuda Graph不支持该算子。从CudaGraph原理上来看,它需要capture一个较为固定的指令集流程,所以它对一些算子可能存在着天然的排异(如带有逻辑分支的算子),意味着在capture子图的流程中,需要做一些兼容和适配的工作。


适配方式也很方便,直接将CallGraphOP加入CudaGraph组图脚本中的BLACKLIST中即可,这样在Cuda Graph子图切割的过程中,就会把CallGraphOP自然地排除在Cuda Graph子图外边了。




带你读《2022技术人的百宝黑皮书》——淘宝逛逛ODL模型优化总结(6) https://developer.aliyun.com/article/1246916?groupCode=taobaotech

相关文章
|
缓存 TensorFlow 算法框架/工具
带你读《2022技术人的百宝黑皮书》——淘宝逛逛ODL模型优化总结(2)
带你读《2022技术人的百宝黑皮书》——淘宝逛逛ODL模型优化总结(2)
|
缓存 并行计算 算法
带你读《2022技术人的百宝黑皮书》——淘宝逛逛ODL模型优化总结(6)
带你读《2022技术人的百宝黑皮书》——淘宝逛逛ODL模型优化总结(6)
|
缓存 异构计算
带你读《2022技术人的百宝黑皮书》——淘宝逛逛ODL模型优化总结(3)
带你读《2022技术人的百宝黑皮书》——淘宝逛逛ODL模型优化总结(3)
|
机器学习/深度学习 算法 TensorFlow
带你读《2022技术人的百宝黑皮书》——淘宝逛逛ODL模型优化总结(1)
带你读《2022技术人的百宝黑皮书》——淘宝逛逛ODL模型优化总结(1)
|
并行计算 数据可视化 TensorFlow
带你读《2022技术人的百宝黑皮书》——淘宝逛逛ODL模型优化总结(4)
带你读《2022技术人的百宝黑皮书》——淘宝逛逛ODL模型优化总结(4)
带你读《2022技术人的百宝黑皮书》——多模态技术在淘宝主搜召回场景的探索(5)
带你读《2022技术人的百宝黑皮书》——多模态技术在淘宝主搜召回场景的探索(5)
|
数据挖掘
带你读《2022技术人的百宝黑皮书》——多模态技术在淘宝主搜召回场景的探索(4)
带你读《2022技术人的百宝黑皮书》——多模态技术在淘宝主搜召回场景的探索(4)
带你读《2022技术人的百宝黑皮书》——多模态技术在淘宝主搜召回场景的探索(7)
带你读《2022技术人的百宝黑皮书》——多模态技术在淘宝主搜召回场景的探索(7)
118 0
带你读《2022技术人的百宝黑皮书》——多模态技术在淘宝主搜召回场景的探索(8)
带你读《2022技术人的百宝黑皮书》——多模态技术在淘宝主搜召回场景的探索(8)
|
计算机视觉 异构计算 SEO
带你读《2022技术人的百宝黑皮书》——多模态技术在淘宝主搜召回场景的探索(2)
带你读《2022技术人的百宝黑皮书》——多模态技术在淘宝主搜召回场景的探索(2)