Android   发布时间:2022-04-28  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了android – 使用’perf record’设置样本分析的速率大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
据我了解,Linux性能计数器子系统使用 perf record命令来执行cpu和硬件计数器的基于样本的分析(例如缓存未命中).

>如何指定perf记录的采样率?我从手册页中看到的最接近的是一个有点神秘的选项“-c,– count =要抽样的事件期间”,但是不清楚这是指时段为持续时间还是反时速率时段(如果是后者,它预期的单位).
>在移动Android设备上为应用程序采样的“良好”采样率是多少?什么比率太低而无用,什么比率过高?

解决方法

首先,您需要获取具有perf列表的事件列表.我没有使用android的经验,所以,如果可以,请展示此列表中最有趣的部分.

1)-c是将采样之间的事件计数. (仅对第一个事件进行采样,1个采样全部,100000个采样每第100000个事件)例如.如果有一个cpu tick事件(像TSC那样smth),那么count是ticks的数量,我建议你设置的采样时间不要超过1毫秒.要获得滴答计数,请使用公式:cpu_Freq_in_MHz * 1000.这是每毫秒获取样本的事件计数,例如对于800 MHz cpu和tick事件使用-c 800000.

对于其他事件,您应该估计,他们会多久做一次.如果您不知道,您可以从计数值开始计算,然后检查是否收集了足够的样本.如果没有,请将计数降低十次并再次检查.刻度的计数将是安全的,因为刻度线是任何cpu中最常见的事件之一.

2)各种PMU的良好速率不同,使用“-e”或“–event =”选项选择.如果事件很少,每秒不超过1000,您甚至可以对每个事件进行采样.如果事件就像缓存未命中,您应该尝试几种变体,因为良好的值取决于采样的代码.采样率太低会使您获得少量样本,结果将不可靠且噪声很大.但是对于太高的速率,结果也会被噪声化,因为每个PMU都会影响跟踪的程序.我建议你平均每秒使用不超过1000个事件.

大佬总结

以上是大佬教程为你收集整理的android – 使用’perf record’设置样本分析的速率全部内容,希望文章能够帮你解决android – 使用’perf record’设置样本分析的速率所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。