Name |
Date |
Size |
#Lines |
LOC |
||
---|---|---|---|---|---|---|
.. | - | - | ||||
include/ | 12-May-2024 | - | 584 | 372 | ||
BUILD.gn | D | 12-May-2024 | 1.2 KiB | 53 | 46 | |
CPU.cpp | D | 12-May-2024 | 6.4 KiB | 193 | 160 | |
DDR.cpp | D | 12-May-2024 | 2.3 KiB | 70 | 52 | |
FPS.cpp | D | 12-May-2024 | 7.5 KiB | 214 | 183 | |
GPU.cpp | D | 12-May-2024 | 3.6 KiB | 115 | 89 | |
Power.cpp | D | 12-May-2024 | 5.1 KiB | 125 | 102 | |
RAM.cpp | D | 12-May-2024 | 3.1 KiB | 87 | 67 | |
README.md | D | 12-May-2024 | 4.9 KiB | 139 | 127 | |
Temperature.cpp | D | 12-May-2024 | 4.4 KiB | 121 | 100 | |
gp_utils.cpp | D | 12-May-2024 | 4.2 KiB | 131 | 102 | |
profiler.cpp | D | 12-May-2024 | 5.9 KiB | 141 | 118 | |
smartperf_command.cpp | D | 12-May-2024 | 5.9 KiB | 153 | 130 | |
smartperf_main.cpp | D | 12-May-2024 | 814 | 24 | 7 |
README.md
1## 工具介绍 2 3OpenHarmony性能测试工具,通过采集设备性能指标,对采集数据进行实时展示、导出csv。 4 5## 支持功能 6 7> 当前版本支持如下功能 8 9- 支持RK3568、Hi3516、WGR; 10- 支持Shell启动; 11- 支持采集整机CPU、GPU、DDR、POWER、TEMPERATURE、应用的FPS、RAM; 12 13## 使用方式 14 15**1、SP_daemon --help** 16```bash 17> hdc_std shell 18:/ # cd data/local/tmp 19:/data/local/tmp # SP_daemon --help 20usage: SP_daemon <options> <arguments> 21-------------------------------------------------------------------- 22These are common commands list: 23 -N set num of profiler <must be non-null> 24 -PKG set pkg_name of profiler 25 -PID set process id of profiler 26 -c get cpuFreq and cpuLoad 27 -g get gpuFreq and gpuLoad 28 -d get ddrFreq 29 -f get fps 30 -t get soc-temp gpu-temp .. 31 -p get current_now and voltage_now 32 -r get ram(pss) 33-------------------------------------------------------------------- 34Example: SP_daemon -N 2 -PKG com.ohos.contacts -c -g -t -p -r 35-------------------------------------------------------------------- 36``` 37**2、SP_daemon -N 2 -PKG com.ohos.contacts -c -g -t -p -r** 38```bash 39:/data/local/tmp # ./SP_daemon -N 2 -PKG com.ohos.contacts -c -g -t -p -r 40set num:2 41set pkg name:com.ohos.contacts 42 43----------------------------------Print START------------------------------------ 44order:0 ambient=0.000000 45order:1 cpu0freq=1700000 46order:2 cpu0load=-1.000000 47order:3 cpu1freq=1700000 48order:4 cpu1load=-1.000000 49order:5 cpu2freq=1700000 50order:6 cpu2load=-1.000000 51order:7 cpu3freq=1700000 52order:8 cpu3load=-1.000000 53order:9 cpu4freq=2343000 54order:10 cpu4load=-1.000000 55order:11 cpu5freq=2343000 56order:12 cpu5load=-1.000000 57order:13 cpu6freq=2343000 58order:14 cpu6load=-1.000000 59order:15 cpu7freq=2756000 60order:16 cpu7load=-1.000000 61order:17 current_now=-1213.000000 62order:18 gpufreq=260000000 63order:19 gpuload=0.000000 64order:20 pss=37589 65order:21 voltage_now=4.308090 66----------------------------------Print END-------------------------------------- 67----------------------------------Print START------------------------------------ 68order:0 ambient=0.000000 69order:1 cpu0freq=1700000 70order:2 cpu0load=13.592233 71order:3 cpu1freq=1700000 72order:4 cpu1load=42.718445 73order:5 cpu2freq=1700000 74order:6 cpu2load=55.238094 75order:7 cpu3freq=1700000 76order:8 cpu3load=16.000000 77order:9 cpu4freq=826000 78order:10 cpu4load=0.000000 79order:11 cpu5freq=826000 80order:12 cpu5load=1.923077 81order:13 cpu6freq=826000 82order:14 cpu6load=0.961538 83order:15 cpu7freq=2756000 84order:16 cpu7load=99.038460 85order:17 current_now=-1139.000000 86order:18 gpufreq=260000000 87order:19 gpuload=0.000000 88order:20 pss=37589 89order:21 voltage_now=4.308323 90----------------------------------Print END-------------------------------------- 91:/data/local/tmp # 92``` 93**3、执行完毕后会在data/local/tmp生成data.csv文件,每次执行命令覆盖写入** 94```bash 95:/data/local/tmp # cat data.csv 96ambient,cpu0freq,cpu0load,cpu1freq,cpu1load,cpu2freq,cpu2load,cpu3freq,cpu3load,cpu4freq,cpu4load,cpu5freq,cpu5load,cpu6freq,cpu6load,cpu7freq,cpu7load,current_now,gpufreq,gpuload,pss,voltage_now 970.000000,1700000,-1.000000,1700000,-1.000000,1700000,-1.000000,1700000,-1.000000,2343000,-1.000000,2343000,-1.000000,2343000,-1.000000,2756000,-1.000000,-1213.000000,260000000,0.000000,37589,4.308090 980.000000,1700000,13.592233,1700000,42.718445,1700000,55.238094,1700000,16.000000,826000,0.000000,826000,1.923077,826000,0.961538,2756000,99.038460,-1139.000000,260000000,0.000000,37589,4.308323 99:/data/local/tmp # 100``` 101--- 102 103## 选项说明 104 105| 命令 | 功能 |是否必选| 106| :-----| :--------------------- |:-----| 107| -N | 设置采集次数 |是| 108| -PKG | 设置包名 | 否| 109| -PID | 设置进程pid(对于ram适用) |否| 110| -c | 是否采集cpu | 否| 111| -g | 是否采集gpu |否| 112| -f | 是否采集fps |否| 113| -t | 是否采集温度 |否| 114| -p | 是否采集电流 |否| 115| -r | 是否采集内存 |否| 116 117 118--- 119## 构建方式 120> 当前未在系统内集成,需拉取openHarmony代码到本地,将本代码拷贝到目录里,并修改项目build.gn文件以及对应子系统的bundle.json文件,然后编译。 121> 例:编RK3568版本 122第一步:将本代码放置\foundation\graphic\standard\rosen\samples\opensourcesp目录下 123第二步:修改本代码中的build.gn文件 124第三步:修改对应子系统bundle.json文件 \foundation\graphic\standard 125在文件中加入代码路径以及编译出的二进制文件名称 126"build": { 127 "sub_component": [ 128 ...., 129 "//foundation/graphic/standard/rosen/samples/opensourcesp:SP_daemon" 130 ] 131} 132第四步:执行全量编译命令: ./build.sh --product-name rk3568 --ccache 133 134### 推送方式 135```shell 136hdc_std shell mount -o rw,remount / 137hdc_std file send SP_daemon /data/local/tmp 138hdc_std shell chmod a+x /data/local/tmp/SP_daemon 139```