抖音renderD128系统级疑难OOM分析与解决
Source :
mp.weixin.qq.com
抖音长期存在renderD128内存占用过多导致的虚拟内存OOM,且多次出现renderD128内存激增导致OOM指标严重劣化甚至发版熔断。因受限于闭源的GPU驱动以及现场有效信息极少,多个团队都进行过分析,但一直未能定位到问题根因,问题反馈到厂商也一直没有结论。以往发生renderD128内存激增时,解决办法往往都是通过二分法去定位导致问题的MR进行回滚(MR代码写法并无问题,仅仅是正常调用系统API),但是回滚业务代码会影响业务正常需求的合入,也无法从根本上解决该问题,每次也会消耗我们大量人力去分析排查,因此我们有必要投入更多时间和精力定位根因并彻底解决该问题。在历经数月的深入分析和排查后,我们最终定位了问题根因并彻底解决了该问题,取得了显著的OOM收益,renderD128内存问题导致的发版熔断也未再发生。接下来,将详细介绍下我们是如何一步步分析定位到问题根因,以及最终如何将这个问题给彻底解决的。