其他分享
首页 > 其他分享> > 关于dumpsys gfxinfo framestats 详细帧数据分析说明

关于dumpsys gfxinfo framestats 详细帧数据分析说明

作者:互联网

精确的帧时间信息

Android 6.0 附带提供了一个适用于 gfxinfo 的新命令,即:framestats,该命令会根据最近的帧提供非常详细的帧时间信息,让您能够更准确地查出并调试问题。

    >adb shell dumpsys gfxinfo <PACKAGE_NAME> framestats

   

该命令会从应用生成的最近 120 个帧中输出带有纳秒时间戳的帧时间信息。以下是 adb dumpsys gfxinfo <PACKAGE_NAME> framestats 的原始输出示例:

    0,27965466202353,27965466202353,27965449758000,27965461202353,27965467153286,27965471442505,27965471925682,27965474025318,27965474588547,27965474860786,27965475078599,27965479796151,27965480589068,

    0,27965482993342,27965482993342,27965465835000,27965477993342,27965483807401,27965486875630,27965487288443,27965489520682,27965490184380,27965490568703,27965491408078,27965496119641,27965496619641,

    0,27965499784331,27965499784331,27965481404000,27965494784331,27965500785318,27965503736099,27965504201151,27965506776568,27965507298443,27965507515005,27965508405474,27965513495318,27965514061984,

    0,27965516575320,27965516575320,27965497155000,27965511575320,27965517697349,27965521276151,27965521734797,27965524350474,27965524884536,27965525160578,27965526020891,27965531371203,27965532114484,

   

每行输出均代表应用生成的一帧。每行都有固定的列数,描述帧生成管道的每个阶段所花的时间。下文将详细描述此格式,包括每列代表的具体内容。

Framestats 数据格式

由于数据块是 CSV 格式的输出,因此将其粘贴到所选的电子表格工具或使用脚本进行收集和解析非常简单。下表解释了输出数据列的格式。所有时间戳均以纳秒计。

您可以通过不同的方法使用此数据。一种简单却有用的可视化方式就是在不同的延迟时段中显示帧时间 (FRAME_COMPLETED - INTENDED_VSYNC) 分布的直方图(参见下图)。此图直观地表明,大部分帧非常有效,截止时间远低于 16 毫秒(显示为红色),但是少数帧明显超出了截止时间。我们可以观察此直方图中的变化趋势,了解所产生的整体变化或新异常值。此外,您还可以根据数据中的多个时间戳绘制表示输入延迟、布局所用时间或其他类似关注指标的图表。

标签:动画,framestats,dumpsys,毫秒,gfxinfo,START,时间,VSYNC,应用
来源: https://blog.csdn.net/jamelee/article/details/122587993