[plain] view plain copy
startTime=$(date +%Y-%m-%d-%H-%M-%S)  
pathName="/data/cpu_logs"  
fileName="$pathName/CPUINFO_$startTime.csv"  
  
# create dir  
if [ ! -d $pathName ]; then  
    mkdir -p $pathName  
    chmod 777 $pathName  
fi  
  
#cat /proc/kmsg > /data/local/cpu_logs/1/SOC_kernel.log &  
#cat /proc/kmsg > /data/SOC_kernel.log &  
  
# write title to file  
titleName="TIME,EMMC_THERM,POPMEM,CAMERA,MODEM,CPU0,CPU1,CPU2,CPU3,CPU4,CPU5,CPU6,CPU7,\  
CPU0FREQ,CPU1FREQ,CPU2FREQ,CPU3FREQ,CPU4FREQ,CPU5FREQ,CPU6FREQ,CPU7FREQ,GPU0,GPU1,GPUFREQ,SOC,Bat_TEMP,Bat_current"  
echo $titleName>> $fileName  
  
while [ 1 ]; do  
    sleep 1  
    deltaTime=$(date +%H:%M:%S)  
    CPUONLINE=$(cat /sys/devices/system/cpu/online)  
    LCD=$(cat /sys/class/leds/lcd-backlight/brightness)  
    BMS=$(($(cat /sys/devices/virtual/thermal/thermal_zone0/temp) / 1000))  # change to C  
    Bat_TEMP=$(($(cat /sys/devices/virtual/thermal/thermal_zone1/temp) / 1000))  
    Hexagon1=$(cat /sys/devices/virtual/thermal/thermal_zone3/temp)  
    EMMC_THERM=$(cat /sys/devices/virtual/thermal/thermal_zone20/temp)  
    POPMEM=$(cat /sys/devices/virtual/thermal/thermal_zone4/temp)  
    CAMERA=$(cat /sys/devices/virtual/thermal/thermal_zone5/temp)  
    MDSS=$(cat /sys/devices/virtual/thermal/thermal_zone6/temp)  
    MODEM=$(cat /sys/devices/virtual/thermal/thermal_zone7/temp)  
    CPU0=$(cat /sys/devices/virtual/thermal/thermal_zone9/temp)  
    CPU1=$(cat /sys/devices/virtual/thermal/thermal_zone10/temp)  
    CPU2=$(cat /sys/devices/virtual/thermal/thermal_zone11/temp)  
    CPU3=$(cat /sys/devices/virtual/thermal/thermal_zone12/temp)  
    CPU4=$(cat /sys/devices/virtual/thermal/thermal_zone15/temp)  
    CPU5=$(cat /sys/devices/virtual/thermal/thermal_zone16/temp)  
    CPU6=$(cat /sys/devices/virtual/thermal/thermal_zone17/temp)  
    CPU7=$(cat /sys/devices/virtual/thermal/thermal_zone8/temp)  
    GPU0=$(cat /sys/devices/virtual/thermal/thermal_zone13/temp)  
    GPU1=$(cat /sys/devices/virtual/thermal/thermal_zone14/temp)  
    PM8994_TZ=$(($(cat /sys/devices/virtual/thermal/thermal_zone18/temp) / 1000))     
    Bat_current=$(cat /sys/class/power_supply/battery/current_now)  
    SOC=$(cat /sys/class/power_supply/battery/capacity)  
    GPUFREQ=$(($(cat /sys/class/kgsl/kgsl-3d0/gpuclk) / 1000)) # change to KHz  
      
    if [ -d /sys/devices/system/cpu/cpu0/cpufreq ]; then  
    CPU0FREQ=$(cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq)  
    else  
    CPU0FREQ="0"  
    fi  
    if [ -d /sys/devices/system/cpu/cpu1/cpufreq ]; then  
    CPU1FREQ=$(cat /sys/devices/system/cpu/cpu1/cpufreq/scaling_cur_freq)  
    else  
    CPU1FREQ="0"  
    fi  
    if [ -d /sys/devices/system/cpu/cpu2/cpufreq ]; then  
    CPU2FREQ=$(cat /sys/devices/system/cpu/cpu2/cpufreq/scaling_cur_freq)  
    else  
    CPU2FREQ="0"  
    fi  
    if [ -d /sys/devices/system/cpu/cpu3/cpufreq ]; then  
    CPU3FREQ=$(cat /sys/devices/system/cpu/cpu3/cpufreq/scaling_cur_freq)  
    else  
    CPU3FREQ="0"  
    fi  
    if [ -d /sys/devices/system/cpu/cpu4/cpufreq ]; then  
    CPU4FREQ=$(cat /sys/devices/system/cpu/cpu4/cpufreq/scaling_cur_freq)  
    else  
    CPU4FREQ="0"  
    fi  
    if [ -d /sys/devices/system/cpu/cpu5/cpufreq ]; then  
    CPU5FREQ=$(cat /sys/devices/system/cpu/cpu5/cpufreq/scaling_cur_freq)  
    else  
    CPU5FREQ="0"  
    fi  
    if [ -d /sys/devices/system/cpu/cpu6/cpufreq ]; then  
    CPU6FREQ=$(cat /sys/devices/system/cpu/cpu6/cpufreq/scaling_cur_freq)  
    else  
    CPU6FREQ="0"  
    fi  
    if [ -d /sys/devices/system/cpu/cpu7/cpufreq ]; then  
    CPU7FREQ=$(cat /sys/devices/system/cpu/cpu7/cpufreq/scaling_cur_freq)  
    else  
    CPU7FREQ="0"  
    fi  
      
    echo "$deltaTime,$EMMC_THERM,$POPMEM,$CAMERA,$MODEM,$CPU0,$CPU1,$CPU2,$CPU3,$CPU4,$CPU5,$CPU6,$CPU7,\  
$CPU0FREQ,$CPU1FREQ,$CPU2FREQ,$CPU3FREQ,$CPU4FREQ,$CPU5FREQ,$CPU6FREQ,$CPU7FREQ,$GPU0,$GPU1,$GPUFREQ,$SOC,$Bat_TEMP,$Bat_current">> $fileName  
  
    echo "$deltaTime,$EMMC_THERM,$POPMEM,$CAMERA,$MODEM,$CPU0,$CPU1,$CPU2,$CPU3,$CPU4,$CPU5,$CPU6,$CPU7,\  
$CPU0FREQ,$CPU1FREQ,$CPU2FREQ,$CPU3FREQ,$CPU4FREQ,$CPU5FREQ,$CPU6FREQ,$CPU7FREQ,$GPU0,$GPU1,$GPUFREQ,$SOC,$Bat_TEMP,$Bat_current"     
done

高通msm8994性能及温度监测脚本的更多相关文章

  1. 高通msm8994启动流程简介

    处理器信息 8994包含如下子系统: 子系统 处理器 含义 APSS 4*Cortex-A53 应用子系统 APSS 4*Cortex-A57 应用子系统 LPASS QDSP6 v5.5A(Hexa ...

  2. 高通msm8994启动流程简单介绍

    处理器信息 8994包括例如以下子系统: 子系统 处理器 含义 APSS 4*Cortex-A53 应用子系统 APSS 4*Cortex-A57 应用子系统 LPASS QDSP6 v5.5A(He ...

  3. 高通msm8994手动提升性能脚本

    点击打开链接 [plain] view plain copy stop thermald stop mpdecision stop thermal-engine # online A57 echo 1 ...

  4. 【转】高通平台android 环境配置编译及开发经验总结

    原文网址:http://blog.csdn.net/dongwuming/article/details/12784535 1.高通平台android开发总结 1.1 搭建高通平台环境开发环境 在高通 ...

  5. 针对高通BMS的研究 高通电量计

    点击打开链接 高通8064 8974 8926等pm芯片都集成了电量计,估计后续芯片都会一直存在,现在许多项目UI状态栏电池都有百分比显示,所以需要深入分析BMS有助于解决电量方面的BUG. 一: S ...

  6. 科普:WiFi是谁申请的专利?高通吗?错!

    你给Wi-Fi交过专利费吗?你知道Wi-Fi是谁申请的专利吗? 答:肯定是高通! 错! Wi-Fi技术由澳洲政府的研究机构CSIRO在90年代发明并于1996年在美国成功申请了无线网技术专利.(US ...

  7. 高通/苹果/联发科:手机CPU那些事

    如今人们买手机,都比较关心采用了什么CPU,因为CPU直接决定了这台手机的性能,CPU之于手机就好比人的大脑,它是整台手机的控制中枢系统,也是逻辑部分的控制中心.又相当于车的发动机,发动机越强劲,车子 ...

  8. 手机低端市场,联发科 vs 高通

    联发科(MTK) 是山寨机的源头,我过去曾经鄙视他,现在来了180度转弯. 其实联发科是台湾的上市公司,手机如此复杂的东西,当年 联发科能把基础的手机做出来,而后小山寨厂改改外形,配件就能出若干款手机 ...

  9. 高通msm8909耳机调试

    http://blog.csdn.net/mike8825/article/details/69489865?locationnum=3&fps=1 1.DTS相应修改: DTS相关代码:ke ...

随机推荐

  1. bzoj3685普通van Emde Boas树 线段树

    3685: 普通van Emde Boas树 Time Limit: 9 Sec  Memory Limit: 128 MBSubmit: 1932  Solved: 626[Submit][Stat ...

  2. (转)FIDDER教程

    Fiddler是最强大最好用的Web调试工具之一,它能记录所有客户端和服务器的http和https请求,允许你监视,设置断点,甚至修改输入输出数据. 使用Fiddler无论对开发还是测试来说,都有很大 ...

  3. Vue2学习(1)

    学习Vue2的computed 属性和 watcher 主要将computed 和methods和watcher作比较,对其各自的相关优缺点作了介绍. computed 属性会基于它所依赖的数据进行缓 ...

  4. html5应用程序缓存

    缓存概念: ------页面缓存: html.JS.CSS等,这些缓存资源是由于浏览器的行为而产生; ------数据缓存 ----------AppCache:  Cache Manifest 操作 ...

  5. Linux学习之CentOS(二十)------vi/vim 按键说明

    vi/vim 按键说明 除了上面简易范例的 i, Esc, :wq 之外,其实 vim 还有非常多的按键可以使用. 第一部份:一般模式可用的光标移动.复制粘贴.搜索替换等 移动光标的方法 h 或 向左 ...

  6. Servlet-----response.getWriter().write()与out.print()的区别

    50313  1.首先介绍write()和print()方法的区别:  (1).write():仅支持输出字符类型数据,字符.字符数组.字符串等  (2).print():可以将各种类型(包括Obje ...

  7. Hibernate 自动生产表

    hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库. 今天就来演示一下Hibernate最初级的 ...

  8. 初识Redis系列之一:简单介绍

    一:Redis是什么? Redis全称:REmote DIctionary Server(Redis) .Redis是一个由Salvatore Sanfilippo写的key-value存储系统,AN ...

  9. hasattr(),getattr(),setattr()的使用

    # 首先你有一个command.py文件,内容如下,这里我们假若它后面还有100个方法 class MyObject(object): def __init__(self): self.x = def ...

  10. FJUT寒假作业涨姿势题解

    题意非常简单易懂,对于涨姿势0,数据非常小,比较容易想到的是直接循环暴力解题完成任务.把数据放入数组arr,循环i,j控制所有区间算和.结果记入vis. 到了涨姿势1,2,3,我们观察数据变化,发现数 ...