首页 > 系统相关 >如何以时间间隔捕获CPU,procrank,内存和顶级信息?

如何以时间间隔捕获CPU,procrank,内存和顶级信息?

时间:2022-12-07 10:32:26浏览次数:52  
标签:cpuinfo cur procrank echo cat 内存 freq txt CPU


我们处理了一些在money或稳定性测试中复制的软件监督问题。根据

logcat,内核和跟踪日志分析,SWWD阻塞的线程的回溯不是固定的。 在

换句话说,阻塞的线程在特定功能中不会被阻塞。 SWWD的原因是相对的

与整个Android系统的性能。为了调试这些问题,我们需要更详细的CPU,

procrank,内存和顶级信息。 以下是捕获这些信息的脚本和用法

与时间间隔。


[Perfscript.sh]
#=================================================================
#Scriptof capturing CPU, procrank, memory and top information with time interval.
mkdirPerfLogs
cdPerfLogs
rm./*.txt
echo"Start..."
while:
do
echo"Perf"
MYDATE=`date+%y-%m-%d_%H:%M:%S`
echo$MYDATE
#Printcurrent CPU frequency
#Modifybelow lines based on CPU core number.
echo""
echo"${MYDATE}" >> cpuinfo_cur_freq.txt &
echo"cpu0 cur freq:`cat/sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq`" >>
cpuinfo_cur_freq.txt&
echo"cpu1 cur freq:`cat /sys/devices/system/cpu/cpu1/cpufreq/scaling_cur_freq`">>
cpuinfo_cur_freq.txt&
echo"cpu2 cur freq:`cat/sys/devices/system/cpu/cpu2/cpufreq/scaling_cur_freq`" >>
cpuinfo_cur_freq.txt&
echo"cpu3 cur freq:`cat/sys/devices/system/cpu/cpu3/cpufreq/scaling_cur_freq`" >>
cpuinfo_cur_freq.txt&
echo"cpu4 cur freq:`cat/sys/devices/system/cpu/cpu4/cpufreq/scaling_cur_freq`" >>
cpuinfo_cur_freq.txt&
echo"cpu5 cur freq:`cat/sys/devices/system/cpu/cpu5/cpufreq/scaling_cur_freq`" >>
cpuinfo_cur_freq.txt&
echo"cpu6 cur freq:`cat /sys/devices/system/cpu/cpu6/cpufreq/scaling_cur_freq`">>
cpuinfo_cur_freq.txt&
echo"cpu7 cur freq:`cat/sys/devices/system/cpu/cpu7/cpufreq/scaling_cur_freq`" >>
cpuinfo_cur_freq.txt&
echo"${MYDATE}" >> procrank.txt &
procrank>> procrank.txt &
echo"${MYDATE}" >> proc_meminfo.txt &
cat/proc/meminfo >> proc_meminfo.txt &
echo"${MYDATE}" >> meminfo.txt &
dumpsysmeminfo >> meminfo.txt &
echo"${MYDATE}" >> top.txt &
top -t-m 8 -n 1 >> top.txt &
sleep60 #60 seconds, you can modify the time interval.
done
#
#=================================================================
[Usage]
adbroot
adbremount
adbpush Perfscript.sh /data
adbshell
cd/data
shPerfscript.sh
//Testthe issue ......
//Pulllogs.
adb pull/data/PerfLogs .




标签:cpuinfo,cur,procrank,echo,cat,内存,freq,txt,CPU
From: https://blog.51cto.com/u_15904120/5917911

相关文章

  • Qt获取windows下的CPU序号
     QStringfrmMain::getWMIC(constQString&cmd){//获取cpu名称:wmiccpugetName//获取cpu核心数:wmiccpugetNumberOfCores//获取cpu线程数:wmiccpu......
  • 数组:内存分析及三种初始化
    数组(堆和栈的关系)内存分析:通常我们说的分析java内存,指的是分析java的堆内存(heapmemory),稍微扩展点,还可能涉及到持久带内存(jre7以前)或者Metaspace(jre8以后)。.一般的垃圾......
  • php-fpm进程过多,导致CPU过高
    今天发现服务器的php-fpm进程突然过多,导致CPU过高,其他项目的访问受到影响。我通过以下三个基本步骤定位到了问题,发现了其原因。 基本步骤:先用top命令查看进程情况,找出......
  • 内存数据簇和数据库数据簇使用实例
    TABLES:SFLIGHT.types:beginofty_sflight,carridtypesflight-carrid,connidtypesflight-connid,fldatetypesflight-fldate,planetypety......
  • 以修改内存的方式实现导入表动态注入
    简介搜索"导入表注入",网上大堆的博客和代码,统统都是修改PE文件实现的.这里将介绍exe加载到内存后,修改主模块映像,而不必去改变本地的exe文件的注入方法.原理注......
  • 034-MemoryStream内存数据读写
    位与字节计算机中最小的单位时“位”,用bit表示,数据是用二进制来表示。但是bit过小,因此用字节来作为存储单位,用“Byte”表示,其中8位组成一个字节。所以一个字节表示的数的......
  • 【深入理解java虚拟机】 - HotSpot虚拟机中对象的创建、内存布局和访问
    文章目录​​对象的创建​​​​对象的内存布局​​​​对象头​​​​实例数据​​​​对齐填充​​​​对象的访问定位​​​​句柄​​​​直接指针​​​​优缺点​​对......
  • 查找linux下进程占用CPU过高的原因,以php-fpm为例
    很多时候,线上服务器的进程在某时间段内长时间占用CPU过高,为了优化,我们需要找出原因。1、找出占用CPU最高的10个进程psaux|sort-k3nr|head-n10或查看占用内存最高的1......
  • JVM内存结构
    JVM内存结构  线程共享的由:堆和方法区线程隔离:虚拟机栈、本地方法栈和程序计数器 堆:  虚拟机栈:......
  • 内存马
    Tomcat-filter内存马参考文章:http://wjlshare.com/archives/1529https://jkme.github.io/2022/04/14/memory-shell-1.html#Listenerhttps://xz.aliyun.com/t/10196h......