1# SmartPerf Device性能工具使用指导 2<!--Kit: Test Kit--> 3<!--Subsystem: Test--> 4<!--Owner: @niu-guoliang--> 5<!--Designer: @niu-guoliang--> 6<!--Tester: @laonie666--> 7<!--Adviser: @Brilliantry_Rui--> 8 9## 工具简介 10 11SmartPerf Device是一款基于系统开发的性能功耗测试工具,操作简单易用。该工具可以监测性能、功耗相关指标,包括FPS、CPU、GPU、RAM、Temp等,通过量化的指标项了解应用、整机性能状况。 12 13在开发过程中,会使用到有屏或无屏设备,对此SmartPerf Device提供了两种方式:分别是Device-hap端和Device-daemon端。Device-hap端适用于有屏设备,支持可视化操作。测试时是通过悬浮窗的开始和暂停来实时展示性能指标数据,保存后可生成数据报告,在报告中可分析各指标数据详情。Device-daemon端支持shell命令行方式,同时适用于有屏和无屏设备。 14 15### 指标说明 16 17- CPU:每秒读取一次设备节点下CPU大中小核的频点和各核使用率,衡量应用占用CPU资源的情况,占用过多的CPU资源会导致芯片发烫。 18- GPU:每秒读取一次设备节点下GPU的频点和负载信息,衡量应用占用GPU资源的情况,当GPU占用过多时,会导致性能下降,应用程序的运行速度变慢。 19- FPS:应用界面每秒刷新次数,衡量应用画面的流畅度,FPS越高通常表示图像流畅度越好,用户体验也越好。 20- TEMP:每秒读取一次设备节点下GPU温度、系统芯片温度信息。 21- RAM:每秒读取一次应用进程的实际物理内存,衡量应用的内存占比情况。 22- snapshot:每2秒截取一张应用界面截图。 23 24## 实现原理 25 26下图展示了SmartPerf Device工具的主要功能组成。Device-hap端设置好采集项和采集参数后,启动应用,FPS、RAM、Trace等指标通过消息发送给Device-daemon端,Device-daemon端进行数据采集、持久化和数据分析,将生成的报告回传给Device-hap端,Device-hap端进行可视化显示。 27 28 29 30## 约束与限制 31 321. Device-daemon端<!--Del-->、Device-hap端<!--DelEnd-->在API 9版本开始预置使用。<!--RP1--><!--RP1End--> 33 342. Device-daemon端执行需连接硬件设备,Device-hap端需在有屏幕设备使用。 35 363. Device-daemon端执行前需完成[hdc环境配置](../dfx/hdc.md)。 37 38<!--RP3--> 39## SmartPerf Device-hap端 40 41下面的操作步骤和界面内容以RK3568设备为例。 42 43### 获取应用列表 44 45点击设备上"SmartPerf Device-hap端"应用图标,进入"首页",点击"请选择一个应用",在应用列表页选择需要测试的应用。 46 47 48 49 50 51### 设置采集参数 52 53应用选择完成后回到开始测试页面,根据实际业务需要,配置"测试指标"。同时,可修改测试名称(测试名称包含测试的应用名称和测试时间,会呈现在报告列表中),是否抓取trace,选择是否开启截图。配置完成后,点击底部"开始测试"按钮。 54 55### 悬浮窗控制采集 56 57点击悬浮窗"start"开始采集,点击悬浮窗"计时器"(如下图中00:07)暂停采集。再次点击"计时器",继续开始采集。双击"计时器",实时展示采集数据。长按"计时器",结束采集。<br>整个过程中,可拖动悬浮框调整悬浮框位置。 58 59 60 61 62### 查看报告 63 64点击"报告",查看测试报告列表。点击项目,进入报告详情页,查看测试指标项详情。 65 66 67 68 69## SmartPerf Device-daemon端 70 71### 采集前提 72 73- 进入shell 74 75 ``` 76 C:\Users\issusser>hdc shell 77 $ 78 ``` 79 80- 拉起和查看daemon进程 81 82 ``` 83 C:\Users\issusser>hdc shell 84 // 拉起daemon进程 85 $ SP_daemon 86 // 查看daemon进程是否存在 87 $ ps -ef | grep SP_daemon 88 shell 1584 1 0 21:50:05 ? 00:00:00 SP_daemon 89 shell 1595 1574 3 21:51:02 pts/0 00:00:00 grep SP_daemon 90 $ 91 ``` 92 93- 执行和查看帮助命令 94 95 ``` 96 $ SP_daemon --help 97 OpenHarmony performance testing tool SmartPerf command-line version 98 Usage: SP_daemon [options] [arguments] 99 100 options: 101 -N set the collection times(default value is 0) range[1,2147483647], for example: -N 10 102 -PKG set package name, must add, for example: -PKG ohos.samples.ecg 103 -PID set process pid, must add, for example: -PID 3568 104 -threads get threads, must add -PID or -PKG for example: 105 -threads -PID 3568 or -threads -PKG ohos.samples.ecg 106 -fds get file descriptor, must add -PID or -PKG for example: 107 -fds -PID 3568 or -fds -PKG ohos.samples.ecg 108 -c get device CPU frequency and CPU usage, process CPU usage and CPU load .. 109 -ci get cpu instructions and cycles 110 -g get device GPU frequency and GPU load 111 -f get app refresh fps(frames per second) and fps jitters and refreshrate 112 -profilerfps get refresh fps and timestamp 113 -sections set collection time period(using with profilerfps) 114 -t get remaining battery power and temperature.. 115 -p get battery power consumption and voltage(Not supported by some devices) 116 -print start mode print log 117 -r get process memory and total memory 118 -snapshot get screen capture 119 -net get uplink and downlink traffic 120 -start collection start command 121 -stop collection stop command 122 -VIEW set layler, for example: -VIEW DisplayNode 123 -OUT set csv output path. 124 -d get device DDR information 125 -screen get screen resolution 126 -deviceinfo get device information 127 -server start a process to listen to the socket message of the start and stop commands 128 -clear clear the process ID 129 -ohtestfps used by the validator to obtain the fps, the collection times can be set 130 -editorServer start a process to listen to the socket message of the editor 131 -recordcapacity get the battery level difference 132 --version get version 133 --help get help 134 -editor scenario-based collection identifier, parameter configuration items can be added later 135 responseTime get the page response delay after an application is operated 136 completeTime get the page completion delay after an application is operated 137 fpsohtest used by the validator to obtain the fps 138 example1: 139 SP_daemon -N 20 -c -g -t -p -r -net -snapshot -d 140 SP_daemon -N 20 -PKG ohos.samples.ecg -c -g -t -p -f -r -net -snapshot -d 141 SP_daemon -start -c 142 SP_daemon -stop 143 example2: These parameters need to be used separately 144 SP_daemon -screen 145 SP_daemon -deviceinfo 146 SP_daemon -server 147 SP_daemon -clear 148 SP_daemon -ohtestfps 10 149 SP_daemon -editorServer 150 SP_daemon -recordcapacity 151 example3: These parameters need to be used separately 152 SP_daemon -editor responseTime ohos.samples.ecg app name 153 SP_daemon -editor completeTime ohos.samples.ecg app name 154 SP_daemon -editor fpsohtest 155 156 157 158 command exec finished! 159 $ 160 ``` 161 162 163### 基础采集 164 165基础采集主要采集整机或者应用的gpu、fps、CPU、DDR、内存等,支持秒级采集和启停采集,并将采集的结果写入data.csv。 166 167**1. 秒级采集** 168 169| 命令参数 |必选| 说明 | 170| :-----| :-----| :--------------------- | 171| -N |是| 设置采集次数,一秒采集一次。 | 172| -PKG |否| 设置包名。 | 173| -PID |否| 设置进程ID或者线程ID。 | 174| -threads |否| 采集应用子线程数量。 | 175| -fds |否| 采集应用文件描述符,仅支持root用户采集。 | 176| -c |否| 采集cpu的频点和使用率。<br>设置应用包名时,采集整机和应用CPU信息。 <br>不设置应用包名时,采集整机CPU信息。 | 177| -ci |否| 采集cpu的指令数。<br>设置应用包名时,采集整机和应用CPU指令数。 <br>不设置应用包名时,采集整机CPU指令数。 | 178| -g |否| 采集gpu的频点和负载信息。 | 179| -f |否| 采集指定应用的fps以及屏幕刷新率,必须设置应用包名。 | 180| -t |否| 采集GPU温度、系统芯片温度。 | 181| -r |否| 采集内存。<br>设置应用包名时,采集整机和应用内存信息。 <br>不设置应用包名时,采集整机内存信息。 | 182| -snapshot |否| 屏幕截图。 | 183| -net |否| 采集网络速率。 | 184| -VIEW |否| 设置图层,需要先获取应用图层名。 | 185| -d |否| 采集DDR。 | 186| -sections|否| 设置分段采集。 | 187 188- 设置包名并采集1次应用的线程数量 189 190 ``` 191 $ SP_daemon -N 1 -PKG ohos.samples.ecg -threads 192 193 order:0 timestamp=1741415592481 194 order:1 threadsNum=18847:113| 195 order:2 tids=18847:43411 43409 43350 43236 25783 25622 25384 25381 19423 19170 19167 19166 19165 19163 19162 19159 19157 19156 19154 19153 19152 19151 19150 19149 19147 19146 19145 19142 19141 19140 19139 19136 19135 19134 19120 19112 19111 19088 19083 19081 19077 19076 19075 19074 19073 19072 19071 19070 19055 19044 19040 19039 19034 19033 19032 19031 19030 19029 19028 19027 19019 19017 19016 19015 19014 19013 19012 19011 19009 19007 19006 19005 19004 19003 19001 19000 18999 18998 18997 18996 18995 18994 18993 18992 18991 18990 18989 18988 18987 18986 18985 18984 18983 18982 18981 18980 18977 18974 18946 18942 18936 18934 18933 18931 18930 18929 18928 18927 18926 18925 18924 18923 18847| 196 197 command exec finished! 198 $ 199 ``` 200 201- 采集2次整机CPU大中小核频率、各核使用率 202 203 ``` 204 $ SP_daemon -N 2 -c 205 206 order:0 timestamp=1501839064260 207 order:1 TotalcpuUsage=0.502513 208 order:2 TotalcpuidleUsage=99.497487 209 order:3 TotalcpuioWaitUsage=0.000000 210 order:4 TotalcpuirqUsage=0.000000 211 order:5 TotalcpuniceUsage=0.000000 212 order:6 TotalcpusoftIrqUsage=0.000000 213 order:7 TotalcpusystemUsage=0.251256 214 order:8 TotalcpuuserUsage=0.251256 215 order:9 cpu0Frequency=1992000 216 order:10 cpu0Usage=1.000000 217 order:11 cpu0idleUsage=99.000000 218 order:12 cpu0ioWaitUsage=0.000000 219 order:13 cpu0irqUsage=0.000000 220 order:14 cpu0niceUsage=0.000000 221 order:15 cpu0softIrqUsage=0.000000 222 order:16 cpu0systemUsage=0.000000 223 order:17 cpu0userUsage=1.000000 224 order:18 cpu1Frequency=1992000 225 order:19 cpu1Usage=0.000000 226 order:20 cpu1idleUsage=100.000000 227 order:21 cpu1ioWaitUsage=0.000000 228 order:22 cpu1irqUsage=0.000000 229 order:23 cpu1niceUsage=0.000000 230 order:24 cpu1softIrqUsage=0.000000 231 order:25 cpu1systemUsage=0.000000 232 order:26 cpu1userUsage=0.000000 233 order:27 cpu2Frequency=1992000 234 order:28 cpu2Usage=1.000000 235 order:29 cpu2idleUsage=99.000000 236 order:30 cpu2ioWaitUsage=0.000000 237 order:31 cpu2irqUsage=0.000000 238 order:32 cpu2niceUsage=0.000000 239 order:33 cpu2softIrqUsage=0.000000 240 order:34 cpu2systemUsage=1.000000 241 order:35 cpu2userUsage=0.000000 242 order:36 cpu3Frequency=1992000 243 order:37 cpu3Usage=0.000000 244 order:38 cpu3idleUsage=100.000000 245 order:39 cpu3ioWaitUsage=0.000000 246 order:40 cpu3irqUsage=0.000000 247 order:41 cpu3niceUsage=0.000000 248 order:42 cpu3softIrqUsage=0.000000 249 order:43 cpu3systemUsage=0.000000 250 order:44 cpu3userUsage=0.000000 251 252 ... 253 254 command exec finished! 255 $ 256 ``` 257 258- 设置包名并采集2次整机CPU大中小核频率、各核使用率以及进程CPU使用率、负载 259 260 ``` 261 $ SP_daemon -N 2 -PKG ohos.samples.ecg -c 262 263 264 265 order:0 timestamp=1741415021814 266 order:1 ChildProcCpuLoad=NA 267 order:2 ChildProcCpuUsage=NA 268 order:3 ChildProcId=NA 269 order:4 ChildProcSCpuUsage=NA 270 order:5 ChildProcUCpuUsage=NA 271 order:6 ProcAppName=ohos.samples.ecg 272 order:7 ProcCpuLoad=2.742330 273 order:8 ProcCpuUsage=7.825508 274 order:9 ProcId=18847 275 order:10 ProcSCpuUsage=2.014652 276 order:11 ProcUCpuUsage=5.810856 277 order:12 TotalcpuUsage=22.527016 278 order:13 TotalcpuidleUsage=77.472984 279 order:14 TotalcpuioWaitUsage=0.000000 280 order:15 TotalcpuirqUsage=0.083126 281 order:16 TotalcpuniceUsage=0.000000 282 order:17 TotalcpusoftIrqUsage=0.000000 283 order:18 TotalcpusystemUsage=7.148795 284 order:19 TotalcpuuserUsage=15.295096 285 order:20 cpu0Frequency=1430000 286 order:21 cpu0Usage=52.475248 287 order:22 cpu0idleUsage=47.524752 288 order:23 cpu0ioWaitUsage=0.000000 289 order:24 cpu0irqUsage=0.000000 290 291 ... 292 293 command exec finished! 294 $ 295 ``` 296 297- 设置进程ID并采集2次整机CPU大中小核频率、各核使用率以及进程CPU使用率、负载 298 299 ``` 300 $ SP_daemon -N 2 -PID 18847 -c 301 302 303 304 order:0 timestamp=1741415133211 305 order:1 ChildProcCpuLoad=NA 306 order:2 ChildProcCpuUsage=NA 307 order:3 ChildProcId=NA 308 order:4 ChildProcSCpuUsage=NA 309 order:5 ChildProcUCpuUsage=NA 310 order:6 ProcAppName=ohos.samples.ecg 311 order:7 ProcCpuLoad=2.510634 312 order:8 ProcCpuUsage=7.005678 313 order:9 ProcId=18847 314 order:10 ProcSCpuUsage=2.697061 315 order:11 ProcUCpuUsage=4.308617 316 order:12 TotalcpuUsage=24.979114 317 order:13 TotalcpuidleUsage=75.020886 318 order:14 TotalcpuioWaitUsage=0.000000 319 order:15 TotalcpuirqUsage=0.083542 320 order:16 TotalcpuniceUsage=0.000000 321 order:17 TotalcpusoftIrqUsage=0.000000 322 order:18 TotalcpusystemUsage=8.270677 323 order:19 TotalcpuuserUsage=16.624896 324 order:20 cpu0Frequency=1430000 325 order:21 cpu0Usage=50.000000 326 order:22 cpu0idleUsage=50.000000 327 order:23 cpu0ioWaitUsage=0.000000 328 order:24 cpu0irqUsage=0.000000 329 ... 330 command exec finished! 331 $ 332 ``` 333 >**说明** 334 > 335 >- 使用该命令采集时需进入被测应用内。 336 337- 采集1次整机GPU频率和负载 338 339 ``` 340 $ SP_daemon -N 1 -g 341 342 343 344 order:0 timestamp=1503078740268 345 order:1 gpuFrequency=200000000 346 order:2 gpuLoad=38.000000 347 348 command exec finished! 349 $ 350 ``` 351 352- 采集2次整机温度 353 354 ``` 355 $ SP_daemon -N 2 -t 356 357 order:0 timestamp=1502720711191 358 order:1 gpu-thermal=42500.000000 359 order:2 soc-thermal=43.125000 360 361 362 order:0 timestamp=1502720712191 363 order:1 gpu-thermal=41875.000000 364 order:2 soc-thermal=42.500000 365 366 command exec finished! 367 $ 368 ``` 369 370- 采集2次整机内存 371 372 ``` 373 $ SP_daemon -N 2 -r 374 order:0 timestamp=1705041562521 375 order:1 memAvailable=7339224 376 order:2 memFree=7164708 377 order:3 memTotal=11641840 378 379 order:0 timestamp=1705041563527 380 order:1 memAvailable=7339136 381 order:2 memFree=7164684 382 order:3 memTotal=11641840 383 384 command exec finished! 385 $ 386 ``` 387 388- 设置包名并采集1次整机和指定应用进程内存 389 390 ``` 391 $ SP_daemon -N 1 -PKG ohos.samples.ecg -r 392 393 394 395 order:0 timestamp=1741415257059 396 order:1 arktsHeapPss=44835 397 order:2 childCarktsHeapPss=NA 398 order:3 childGpuPss=NA 399 order:4 childGraphicPss=NA 400 order:5 childHeapAlloc=NA 401 order:6 childHeapFree=NA 402 order:7 childHeapSize=NA 403 order:8 childNativeHeapPss=NA 404 order:9 childPrivateClean=NA 405 order:10 childPrivateDirty=NA 406 order:11 childPss=NA 407 order:12 childSharedClean=NA 408 order:13 childSharedDirty=NA 409 order:14 childStackPss=NA 410 order:15 childSwap=NA 411 order:16 childSwapPss=NA 412 order:17 gpuPss=222377 413 order:18 graphicPss=184276 414 order:19 heapAlloc=154696 415 order:20 heapFree=780 416 order:21 heapSize=163208 417 order:22 memAvailable=4612096 418 order:23 memFree=1240924 419 order:24 memTotal=11692696 420 order:25 nativeHeapPss=85290 421 order:26 privateClean=195816 422 order:27 privateDirty=418973 423 order:28 pss=693349 424 order:29 sharedClean=146848 425 order:30 sharedDirty=71056 426 order:31 stackPss=2492 427 order:32 swap=25360 428 order:33 swapPss=25356 429 430 command exec finished! 431 $ 432 ``` 433 434- 设置进程ID并采集1次整机和指定应用进程内存 435 436 ``` 437 $ SP_daemon -N 1 -PID 18847 -r 438 439 440 441 order:0 timestamp=1741415293198 442 order:1 arktsHeapPss=45011 443 order:2 childCarktsHeapPss=NA 444 order:3 childGpuPss=NA 445 order:4 childGraphicPss=NA 446 order:5 childHeapAlloc=NA 447 order:6 childHeapFree=NA 448 order:7 childHeapSize=NA 449 order:8 childNativeHeapPss=NA 450 order:9 childPrivateClean=NA 451 order:10 childPrivateDirty=NA 452 order:11 childPss=NA 453 order:12 childSharedClean=NA 454 order:13 childSharedDirty=NA 455 order:14 childStackPss=NA 456 order:15 childSwap=NA 457 order:16 childSwapPss=NA 458 order:17 gpuPss=222381 459 order:18 graphicPss=184276 460 order:19 heapAlloc=154588 461 order:20 heapFree=757 462 order:21 heapSize=163184 463 order:22 memAvailable=4612096 464 order:23 memFree=1238420 465 order:24 memTotal=11692696 466 order:25 nativeHeapPss=85274 467 order:26 privateClean=195996 468 order:27 privateDirty=418977 469 order:28 pss=693440 470 order:29 sharedClean=146848 471 order:30 sharedDirty=71056 472 order:31 stackPss=2492 473 order:32 swap=25360 474 order:33 swapPss=25356 475 476 command exec finished! 477 $ 478 ``` 479 >**说明** 480 > 481 >- 使用该命令采集时需进入被测应用内。 482 >- 该命令集成了历史版本-m的数据(arktsHeapPss、gpuPss、graphicPss...)。 483 484- 采集1次整机cpu指令数 485 486 ``` 487 $ SP_daemon -N 1 -ci 488 489 order:0 cycles per instruction=4.098151 490 order:1 hw-cpu-cycles=190604622.000000 491 order:2 hw-instructions=46509906.000000 492 order:3 timestamp=1609502927840 493 command exec finished! 494 $ 495 ``` 496 497- 设置包名并采集1次整机和指定应用cpu指令数 498 499 ``` 500 $ SP_daemon -N 1 -PKG ohos.samples.ecg -ci 501 502 order:0 cycles per instruction=4.121963 503 order:1 hw-cpu-cycles=190092457.000000 504 order:2 hw-instructions=46116973.000000 505 order:3 timestamp=1609502995191 506 command exec finished! 507 $ 508 ``` 509 >**说明** 510 > 511 >- 使用该命令采集时需进入被测应用内。 512 513- 采集2次截图 514 515 ``` 516 $ SP_daemon -N 2 -snapshot 517 518 order:0 timestamp=1501837609657 519 order:1 capture=data/local/tmp/capture/screenCap_1501837609657.png 520 521 522 order:0 timestamp=1501837610657 523 order:1 capture=NA 524 525 command exec finished! 526 $ 527 ``` 528 >**说明** 529 > 530 >- 截图采集是2秒截取一次。 531 > 532 >- 截图报告存放路径为:data/local/tmp/capture。 533 > 534 >- 采集结束后:进入 data/local/tmp/capture 查看生成的截图。 535 > 536 >- 导出截图到D盘:重启一个命令行工具执行命令: hdc file recv data/local/tmp/capture/screenCap_1700725192774.png D:\。 537 538- 采集2次网络速率 539 540 ``` 541 $ SP_daemon -N 2 -net 542 543 order:0 timestamp=1705041904832 544 order:1 networkDown=0 545 order:2 networkUp=0 546 547 order:0 timestamp=1705041905870 548 order:1 networkDown=22931 549 order:2 networkUp=2004 550 551 command exec finished! 552 $ 553 ``` 554 555- 设置包名并采集5次指定应用帧率 556 557 ``` 558 $ SP_daemon -N 5 -PKG ohos.samples.ecg -f 559 560 order:0 timestamp=1705306472232 561 order:1 fps=43 562 order:2 fpsJitters=602261688;;8352083;;8267708;;8305209;;8298437;;8308854;;8313542;;8569271;;8061458;;8300521;;8308333;;8309896;;8429167;;8241667;;8258333;;8318229;;8312500;;8304167;;41760937;;16418750;;8298959;;8319270;;8308334;;8313541;;8302605;;8320312;;8298958;;8326042;;8321354;;8301042;;8310417;;8309895;;8308855;;8331250;;8286458;;8343229;;8278125;;8311458;;8306250;;8312500;;8320834;;8346875;;8283333 563 order:3 refreshrate=69 564 565 order:0 timestamp=1705306473234 566 order:1 fps=40 567 order:2 fpsJitters=674427313;;8191145;;8310417;;8319271;;8301562;;8318750;;8302084;;8314062;;8333334;;8283854;;8307812;;8311979;;8310417;;8307813;;8309375;;8323958;;8306250;;8308333;;8317709;;8296875;;8721875;;7895833;;8320833;;8340625;;8276563;;8409896;;8216145;;8310938;;8301042;;8362500;;8252604;;8317708;;8376042;;8256250;;8292187;;8303125;;8313542;;8310417;;8520312 568 order:3 refreshrate=69 569 ... 570 571 command exec finished! 572 $ 573 ``` 574 575- 采集10次指定图层帧率 576 577 ``` 578 $ SP_daemon -N 10 -VIEW DisplayNode -f 579 order:0 timestamp=1705306822850 580 order:1 fps=15 581 order:2 fpsJitters=876291843;;8314062;;8308334;;8314583;;8310417;;8308333;;8326042;;8314583;;8292708;;8492709;;8143750;;8340104;;8294271;;8302604;;8297396 582 order:3 refreshrate=69 583 584 order:0 timestamp=1705306823852 585 order:1 fps=12 586 order:2 fpsJitters=906667363;;8279167;;8311458;;8315625;;8291146;;8313021;;8323438;;8293750;;8303125;;8313541;;8301563;;8317708 587 order:3 refreshrate=69 588 ... 589 590 command exec finished! 591 $ 592 ``` 593 >**说明** 594 > 595 >- DisplayNode 是指定的图层名。 596 > 597 >- 使用该命令采集时,需在传入的图层上操作页面。 598 > 599 >- 该命令不能与指定应用帧率一起采集(SP_daemon -N 20 -PKG ohos.samples.ecg -f 或 SP_daemon -N 20 -VIEW DisplayNode -f)。 600 601- 采集1次DDR信息 602 603 ``` 604 $ SP_daemon -N 1 -d 605 606 order:0 timestamp=1710916175201 607 order:1 ddrFrequency=1531000000 608 609 command exec finished! 610 $ 611 ``` 612 613- 全量采集示例1,采集整机信息,包括cpu、gpu、温度、内存信息、DDR信息、网络速率、屏幕截图 614 615 ``` 616 $ SP_daemon -N 10 -c -g -t -r -d -net -snapshot 617 618 order:0 timestamp=1501837838664 619 order:1 TotalcpuUsage=0.751880 620 order:2 TotalcpuidleUsage=99.248120 621 order:3 TotalcpuioWaitUsage=0.000000 622 order:4 TotalcpuirqUsage=0.000000 623 order:5 TotalcpuniceUsage=0.000000 624 order:6 TotalcpusoftIrqUsage=0.000000 625 order:7 TotalcpusystemUsage=0.501253 626 order:8 TotalcpuuserUsage=0.250627 627 order:9 cpu0Frequency=1992000 628 order:10 cpu0Usage=0.000000 629 order:11 cpu0idleUsage=100.000000 630 order:12 cpu0ioWaitUsage=0.000000 631 order:13 cpu0irqUsage=0.000000 632 order:14 cpu0niceUsage=0.000000 633 order:15 cpu0softIrqUsage=0.000000 634 order:16 cpu0systemUsage=0.000000 635 order:17 cpu0userUsage=0.000000 636 order:18 cpu1Frequency=1992000 637 order:19 cpu1Usage=0.000000 638 order:20 cpu1idleUsage=100.000000 639 order:21 cpu1ioWaitUsage=0.000000 640 order:22 cpu1irqUsage=0.000000 641 order:23 cpu1niceUsage=0.000000 642 order:24 cpu1softIrqUsage=0.000000 643 order:25 cpu1systemUsage=0.000000 644 order:26 cpu1userUsage=0.000000 645 order:27 cpu2Frequency=1992000 646 order:28 cpu2Usage=1.000000 647 order:29 cpu2idleUsage=99.000000 648 order:30 cpu2ioWaitUsage=0.000000 649 order:31 cpu2irqUsage=0.000000 650 order:32 cpu2niceUsage=0.000000 651 order:33 cpu2softIrqUsage=0.000000 652 order:34 cpu2systemUsage=1.000000 653 order:35 cpu2userUsage=0.000000 654 order:36 cpu3Frequency=1992000 655 order:37 cpu3Usage=0.000000 656 order:38 cpu3idleUsage=100.000000 657 order:39 cpu3ioWaitUsage=0.000000 658 order:40 cpu3irqUsage=0.000000 659 order:41 cpu3niceUsage=0.000000 660 order:42 cpu3softIrqUsage=0.000000 661 order:43 cpu3systemUsage=0.000000 662 order:44 cpu3userUsage=0.000000 663 order:45 gpuFrequency=200000000 664 order:46 gpuLoad=0.000000 665 order:47 gpu-thermal=40000.000000 666 order:48 soc-thermal=40.625000 667 order:49 memAvailable=1142820 668 order:50 memFree=687988 669 order:51 memTotal=1935948 670 order:52 ddrFrequency=800000000 671 order:53 networkDown=0 672 order:54 networkUp=0 673 order:55 capture=data/local/tmp/capture/screenCap_1501837838669.png 674 675 ... 676 677 command exec finished! 678 $ 679 ``` 680 681- 全量采集示例2,设置包名并采集指定应用信息,包括cpu、gpu、温度、fps、内存信息、DDR信息、网络速率、屏幕截图 682 683 ``` 684 $ SP_daemon -N 10 -PKG ohos.samples.ecg -c -g -t -f -r -d -net -snapshot -threads 685 686 order:0 timestamp=1741415955626 687 order:1 ChildProcCpuLoad=NA 688 order:2 ChildProcCpuUsage=NA 689 order:3 ChildProcId=NA 690 order:4 ChildProcSCpuUsage=NA 691 order:5 ChildProcUCpuUsage=NA 692 order:6 ProcAppName=ohos.samples.ecg 693 order:7 ProcCpuLoad=2.641511 694 order:8 ProcCpuUsage=6.026481 695 order:9 ProcId=18847 696 order:10 ProcSCpuUsage=1.747202 697 order:11 ProcUCpuUsage=4.279279 698 order:12 TotalcpuUsage=26.021798 699 order:13 TotalcpuidleUsage=73.978202 700 order:14 TotalcpuioWaitUsage=0.000000 701 order:15 TotalcpuirqUsage=0.068120 702 order:16 TotalcpuniceUsage=0.000000 703 order:17 TotalcpusoftIrqUsage=0.000000 704 order:18 TotalcpusystemUsage=10.762943 705 order:19 TotalcpuuserUsage=15.190736 706 ... 707 order:123 gpuFrequency=279000000 708 order:124 gpuLoad=0.000000 709 order:125 Battery=35.000000 710 order:126 cluster0=51.000000 711 order:127 gpu=47.000000 712 order:128 npu_thermal=35.000000 713 order:129 shell_back=36.627000 714 order:130 shell_frame=35.627000 715 order:131 shell_front=35.652000 716 order:132 soc_thermal=59.259000 717 order:133 system_h=37.000000 718 order:134 fps=30 719 order:135 fpsJitters=33501562;;50251042;;33522396;;16743750;;33482812;;33505730;;33507291;;33505209;;33502604;;50258854;;33518229;;33501563;;16753125;;50247916;;16751563;;33507812;;16740104;;16792188;;33464583;;33497917;;50261458;;33493750;;33511459;;33502083;;16744271;;16756250;;33505729;;50254687;;33507292;;50286979 720 order:136 refreshrate=60 721 order:137 arktsHeapPss=29564 722 order:138 gpuPss=254647 723 order:139 graphicPss=215796 724 order:140 heapAlloc=174032 725 order:141 heapFree=1232 726 order:142 heapSize=187924 727 order:143 memAvailable=3437568 728 order:144 memFree=780152 729 order:145 memTotal=11697880 730 order:146 nativeHeapPss=91244 731 order:147 privateClean=162560 732 order:148 privateDirty=488739 733 order:149 pss=761908 734 order:150 sharedClean=225060 735 order:151 sharedDirty=48740 736 order:152 stackPss=2596 737 order:153 swap=62024 738 order:154 swapPss=62024 739 order:155 ddrFrequency=1531000000 740 order:156 networkDown=215 741 order:157 networkUp=0 742 ... 743 order:180 capture=data/local/tmp/capture/screenCap_1741415955811.png 744 order:181 threadsNum=18847:111| 745 order:182 tids=18847:45862 45700 25783 25622 25384 25381 19423 19170 19167 19166 19165 19163 19162 19159 19157 19156 19154 19153 19152 19151 19150 19149 19147 19146 19145 19142 19141 19140 19139 19136 19135 19134 19120 19112 19111 19088 19083 19081 19077 19076 19075 19074 19073 19072 19071 19070 19055 19044 19040 19039 19034 19033 19032 19031 19030 19029 19028 19027 19019 19017 19016 19015 19014 19013 19012 19011 19009 19007 19006 19005 19004 19003 19001 19000 18999 18998 18997 18996 18995 18994 18993 18992 18991 18990 18989 18988 18987 18986 18985 18984 18983 18982 18981 18980 18977 18974 18946 18942 18936 18934 18933 18931 18930 18929 18928 18927 18926 18925 18924 18923 18847| 746 ... 747 748 command exec finished! 749 $ 750 ``` 751 752- 全量采集示例3,设置进程ID并采集指定应用信息,包括cpu、gpu、温度、fps、内存信息、DDR信息、网络速率、屏幕截图 753 754 ``` 755 $ SP_daemon -N 10 -PID 18847 -c -g -t -f -r -d -net -snapshot -threads 756 757 order:0 timestamp=1741416084766 758 order:1 ChildProcCpuLoad=NA 759 order:2 ChildProcCpuUsage=NA 760 order:3 ChildProcId=NA 761 order:4 ChildProcSCpuUsage=NA 762 order:5 ChildProcUCpuUsage=NA 763 order:6 ProcAppName=ohos.samples.ecg 764 order:7 ProcCpuLoad=2.857003 765 order:8 ProcCpuUsage=5.932203 766 order:9 ProcId=18847 767 order:10 ProcSCpuUsage=1.765537 768 order:11 ProcUCpuUsage=4.166667 769 order:12 TotalcpuUsage=28.442728 770 order:13 TotalcpuidleUsage=71.557272 771 order:14 TotalcpuioWaitUsage=0.000000 772 order:15 TotalcpuirqUsage=0.000000 773 order:16 TotalcpuniceUsage=0.000000 774 order:17 TotalcpusoftIrqUsage=0.000000 775 order:18 TotalcpusystemUsage=9.716860 776 order:19 TotalcpuuserUsage=18.725869 777 ... 778 order:123 gpuFrequency=279000000 779 order:124 gpuLoad=0.000000 780 order:125 Battery=35.000000 781 order:126 cluster0=51.000000 782 order:127 gpu=47.000000 783 order:128 npu_thermal=35.000000 784 order:129 shell_back=36.627000 785 order:130 shell_frame=35.627000 786 order:131 shell_front=35.652000 787 order:132 soc_thermal=59.259000 788 order:133 system_h=37.000000 789 order:134 fps=30 790 order:135 fpsJitters=33501562;;50251042;;33522396;;16743750;;33482812;;33505730;;33507291;;33505209;;33502604;;50258854;;33518229;;33501563;;16753125;;50247916;;16751563;;33507812;;16740104;;16792188;;33464583;;33497917;;50261458;;33493750;;33511459;;33502083;;16744271;;16756250;;33505729;;50254687;;33507292;;50286979 791 order:136 refreshrate=60 792 order:137 arktsHeapPss=29564 793 order:138 gpuPss=254647 794 order:139 graphicPss=215796 795 order:140 heapAlloc=174032 796 order:141 heapFree=1232 797 order:142 heapSize=187924 798 order:143 memAvailable=3437568 799 order:144 memFree=780152 800 order:145 memTotal=11697880 801 order:146 nativeHeapPss=91244 802 order:147 privateClean=162560 803 order:148 privateDirty=488739 804 order:149 pss=761908 805 order:150 sharedClean=225060 806 order:151 sharedDirty=48740 807 order:152 stackPss=2596 808 order:153 swap=62024 809 order:154 swapPss=62024 810 order:155 ddrFrequency=1531000000 811 order:156 networkDown=215 812 order:157 networkUp=0 813 ... 814 order:180 capture=data/local/tmp/capture/screenCap_1741416084923.png 815 order:181 threadsNum=18847:113| 816 order:182 tids=18847:46736 46734 46731 46663 25783 25622 25384 25381 19423 19170 19167 19166 19165 19163 19162 19159 19157 19156 19154 19153 19152 19151 19150 19149 19147 19146 19145 19142 19141 19140 19139 19136 19135 19134 19120 19112 19111 19088 19083 19081 19077 19076 19075 19074 19073 19072 19071 19070 19055 19044 19040 19039 19034 19033 19032 19031 19030 19029 19028 19027 19019 19017 19016 19015 19014 19013 19012 19011 19009 19007 19006 19005 19004 19003 19001 19000 18999 18998 18997 18996 18995 18994 18993 18992 18991 18990 18989 18988 18987 18986 18985 18984 18983 18982 18981 18980 18977 18974 18946 18942 18936 18934 18933 18931 18930 18929 18928 18927 18926 18925 18924 18923 18847| 817 ... 818 819 command exec finished! 820 $ 821 ``` 822 >**说明** 823 > 824 >- 使用该命令采集时需进入被测应用内。 825 826**2. 启停采集** 827 828执行start命令开始采集,操作设备或应用后,执行stop命令结束采集。 829 830| 命令参数 |必选| 说明 | 831| :-----|:-----| :--------------------- | 832| -start |是| 开始采集,该命令参数后可添加基础采集命令,每秒采集一次。 | 833| -stop |是| 结束采集,生成采集报告。 | 834| -print |否| 每秒打印启停采集信息。 | 835 836 837- 启停采集整机CPU大中小核频率、各核使用率 838 839 ``` 840 # 开始采集 841 $ SP_daemon -start -c 842 SP_daemon Collection begins 843 844 845 command exec finished! 846 $ 847 848 # 结束采集 849 $ SP_daemon -stop 850 SP_daemon Collection ended 851 Output Path: data/local/tmp/smartperf/1/t_index_info.csv 852 853 854 command exec finished! 855 $ 856 ``` 857 858- 启停采集并打印整机CPU大中小核频率、各核使用率 859 860 ``` 861 # 开始采集 862 # 打印启停采集信息 863 $ SP_daemon -start -c -print 864 SP_daemon Collection begins 865 866 order:0 TotalcpuUsage=20.860927 867 order:1 TotalcpuidleUsage=79.139073 868 order:2 TotalcpuioWaitUsage=0.000000 869 order:3 TotalcpuirqUsage=0.082781 870 order:4 TotalcpuniceUsage=0.000000 871 order:5 TotalcpusoftIrqUsage=0.000000 872 order:6 TotalcpusystemUsage=8.029801 873 order:7 TotalcpuuserUsage=12.748344 874 order:8 cpu0Frequency=1430000 875 order:9 cpu0Usage=44.554455 876 order:10 cpu0idleUsage=55.445545 877 order:11 cpu0ioWaitUsage=0.000000 878 order:12 cpu0irqUsage=0.000000 879 order:13 cpu0niceUsage=0.000000 880 order:14 cpu0softIrqUsage=0.000000 881 order:15 cpu0systemUsage=17.821782 882 order:16 cpu0userUsage=26.732673 883 order:17 cpu10Frequency=1239000 884 order:18 cpu10Usage=0.000000 885 order:19 cpu10idleUsage=100.000000 886 order:20 cpu10ioWaitUsage=0.000000 887 order:21 cpu10irqUsage=0.000000 888 order:22 cpu10niceUsage=0.000000 889 order:23 cpu10softIrqUsage=0.000000 890 order:24 cpu10systemUsage=0.000000 891 order:25 cpu10userUsage=0.000000 892 order:26 cpu11Frequency=1239000 893 order:27 cpu11Usage=0.000000 894 order:28 cpu11idleUsage=100.000000 895 order:29 cpu11ioWaitUsage=0.000000 896 order:30 cpu11irqUsage=0.000000 897 order:31 cpu11niceUsage=0.000000 898 order:32 cpu11softIrqUsage=0.000000 899 order:33 cpu11systemUsage=0.000000 900 order:34 cpu11userUsage=0.000000 901 ... 902 command exec finished! 903 $ 904 905 # 结束采集 906 # 在启停打印时,需重新开启命令框执行此命令 907 $ SP_daemon -stop 908 SP_daemon Collection ended 909 Output Path: data/local/tmp/smartperf/1/t_index_info.csv 910 911 command exec finished! 912 $ 913 ``` 914 >**说明** 915 > 916 >- 开始采集示例1(采整机cpu、gpu、温度、fps、内存信息、DDR信息、网络速率、屏幕截图):SP_daemon -start -c -g -t -r -d -net -snapshot。 917 > 918 >- 开始采集示例2(采整机和进程cpu负载、gpu、温度、fps、内存信息、DDR信息、网络速率、屏幕截图、线程数、文件描述符):SP_daemon -start -PKG ohos.samples.ecg -c -g -t -f -r -d -net -snapshot -threads -fds。 919 > 920 >- 开始采集示例3(采整机和进程cpu负载、gpu、温度、fps、内存信息、DDR信息、网络速率、屏幕截图、线程数、文件描述符):SP_daemon -start -PID 18847 -c -g -t -f -r -d -net -snapshot -threads -fds。 921 > 922 >- 开始采集示例4(采整机cpu、gpu、温度、fps、内存信息、DDR信息、网络速率、屏幕截图、线程数、文件描述符并且打印采集信息):SP_daemon -start -c -g -t -r -d -net -snapshot -threads -fds -print。 923 > 924 >- 开始采集示例5(采整机和进程cpu负载、gpu、温度、fps、内存信息、DDR信息、网络速率、屏幕截图、线程数、文件描述符并且打印采集信息):SP_daemon -start -PID 18847 -c -g -t -f -r -d -net -snapshot -threads -fds -print。 925 > 926 >- 启停服务文件输出路径为:data/local/tmp/smartperf/1/t_index_info.csv,可通过hdc file recv的方式导出查看报告,具体请查看csv采集结果。 927 928**3. 查看csv采集结果** 929 930若采集结果保存在csv文件中,可以按照如下操作导出和查看结果内容。 931 932 - 采集结果默认输出路径:/data/local/tmp/data.csv 933 934 - 查看文件位置 935 936 ``` 937 C:\Users\issusser>hdc shell 938 $ cd data/local/tmp 939 # ls 940 data.csv 941 $ 942 ``` 943 944 - 导出文件到指定路径 945 ``` 946 C:\Users\issusser>hdc file recv data/local/tmp/data.csv D:\ 947 [I][2023-11-08 16:16:41] HdcFile::TransferSummary success 948 FileTransfer finish, Size:429, File count = 1, time:6ms rate:71.50kB/s 949 950 C:\Users\issusser> 951 ``` 952 - 打开data.csv文件查看采集数据 953 954 在自定义导出路径里找到data.csv文件打开查看采集数据表,data.csv数据名描述如下: 955 956 | 数据项 | 说明 |备注| 957 | :-----| :--------------------- |:-----| 958 | threadsNum | 线程总数。 |-| 959 | tids | 线程id。 |-| 960 | fdTotal | 文件描述符总数。 |-| 961 | fds | 文件描述符。 |单位:Hz| 962 | cpuFrequency | CPU大中小核频率。 |单位:Hz| 963 | cpuUasge | CPU各核使用率。 |%| 964 | cpuidleUsage | CPU空闲态使用率。 |%| 965 | cpuioWaitUsage | 等待I/O的使用率。 |%| 966 | cpuirqUsage | 硬中断的使用率。 |%| 967 | cpuniceUsage | 低优先级用户态使用率。 |%| 968 | cpusoftIrqUsage | 软中断的使用率。 |%| 969 | cpusystemUsage | 系统/内核态使用率。 |%| 970 | cpuuserUsage | 用户态使用率。 |%| 971 | ProcId | 进程id。 |-| 972 | ChildProcId | 子进程id。 |-| 973 | ProcAppName | app包名。 |-| 974 | ProcCpuLoad | 进程CPU负载占比。 |%| 975 | ChildProcCpuLoad | 子进程CPU负载占比。 |%| 976 | ProcCpuUsage | 进程CPU使用率。 |%| 977 | ChildProcCpuUsage | 子进程CPU使用率。 |%| 978 | ProcUCpuUsage | 进程用户态CPU使用率。 |%| 979 | ChildProcCpuUsage | 子进程用户态CPU使用率。 |%| 980 | ProcSCpuUsage | 进程内核态CPU使用率。 |%| 981 | ChildProcSCpuUsage | 子进程内核态CPU使用率。 |%| 982 | gpuFrequency | 整机GPU的频率。 |%| 983 | gpuLoad | 整机GPU的负载占比。 |%| 984 | hw-instructions | 执行的指令数。 |-| 985 | cycles per instruction | 每条指令的平均周期数。 |单位:ns| 986 | hw-cpu-cycles | CPU时钟周期数。 |单位:ns| 987 | currentNow | 当前读到的电流值。 |单位:mA| 988 | voltageNow | 当前读到的电压值。 |单位:μV| 989 | fps | 每秒帧数。 |单位:fps| 990 | fpsJitters | 每一帧绘制间隔。 |单位:ns| 991 | refreshrate | 屏幕刷新率。 |单位:Hz| 992 | networkDown | 下行速率。 |单位:byte/s| 993 | networkUp | 上行速率。 |单位:byte/s| 994 | ddrFrequency | DDR频率。 |单位:Hz| 995 | gpu-thermal | GPU温度。 |单位:°C| 996 | soc-thermal | 系统芯片温度。 |单位:°C| 997 | memAvailable | 整机可用内存。 |单位:KB| 998 | memFree | 整机空闲内存。 |单位:KB| 999 | memTotal | 整机总内存。 |单位:KB| 1000 | pss | 进程实际使用内存。 |单位:KB| 1001 | Childpss | 子进程实际使用内存。 |单位:KB| 1002 | sharedClean | 进程共享的未改写页面。 |单位:KB| 1003 | ChildsharedClean | 子进程共享的未改写页面。 |单位:KB| 1004 | sharedDirty | 进程共享的已改写页面。 |单位:KB| 1005 | ChildsharedDirty | 子进程共享的已改写页面。 |单位:KB| 1006 | priviateClean | 进程私有的未改写页面。 |单位:KB| 1007 | ChildpriviateClean | 子进程私有的未改写页面。 |单位:KB| 1008 | privateDirty | 进程私有的已改写页面。 |单位:KB| 1009 | ChildprivateDirty | 子进程私有的已改写页面。 |单位:KB| 1010 | swapTotal | 进程总的交换内存。 |单位:KB| 1011 | ChildswapTotal | 子进程总的交换内存。 |单位:KB| 1012 | swapPss | 进程交换的pss内存。 |单位:KB| 1013 | ChildswapPss | 子进程交换的pss内存。 |单位:KB| 1014 | HeapSize | 进程堆内存大小。 |单位:KB| 1015 | ChildHeapSize | 子进程堆内存大小。 |单位:KB| 1016 | HeapAlloc | 进程可分配的堆内存大小。 |单位:KB| 1017 | ChildHeapAlloc | 子进程可分配的堆内存大小。 |单位:KB| 1018 | HeapFree | 进程剩余的堆内存大小。 |单位:KB| 1019 | ChildHeapFree | 子进程剩余的堆内存大小。 |单位:KB| 1020 | gpuPss | 进程使用的gpu内存大小。 |单位:KB| 1021 | ChildgpuPss | 子进程使用的gpu内存大小。 |单位:KB| 1022 | graphicPss | 进程使用的图形内存大小。 |单位:KB| 1023 | ChildgraphicPss | 子进程使用的图形内存大小。 |单位:KB| 1024 | arktsHeapPss | 进程使用的arkts内存大小。 |单位:KB| 1025 | ChildarktsHeapPss | 子进程使用的arkts内存大小。 |单位:KB| 1026 | nativeHeapPss | 进程使用的native内存大小。 |单位:KB| 1027 | ChildnativeHeapPss | 子进程使用的native内存大小。 |单位:KB| 1028 | stackPss | 进程使用的栈内存大小。 |单位:KB| 1029 | ChildstackPss | 子进程使用的栈内存大小。 |单位:KB| 1030 | timeStamp | 当前时间戳。 |对应采集时间| 1031 1032### 场景化采集 1033 1034除基础采集外,还支持采集响应和完成时延等内容。场景化采集结果不写入data.csv,采集结果直接在命令框显示。 1035 1036| 命令参数 |必选| 说明 | 1037| :-----|:-----| :--------------------- | 1038| -editor|是| 场景化采集标识,后可添加参数配置项。 | 1039| -responseTime|否| 响应时延。 | 1040| -completeTime|否| 完成时延。 | 1041| -fpsohtest|否| validator用于获取fps,1秒采集一次,默认采集10次。 | 1042 1043- 应用响应时延(命令仅支持RK) 1044 1045 ``` 1046 $ SP_daemon -editor responseTime ohos.samples.ecg ohtest 1047 time:544ms 1048 1049 command exec finished! 1050 ``` 1051 >**说明** 1052 > 1053 >- 采集前先进入应用内,在命令框回车后切换至应用内页面,等待打印采集结果。 1054 1055- 应用完成时延(命令仅支持RK) 1056 1057 ``` 1058 $ SP_daemon -editor completeTime ohos.samples.ecg ohtest 1059 time:677ms 1060 1061 command exec finished! 1062 ``` 1063 >**说明** 1064 > 1065 >- 采集前先进入应用内,在命令框回车后切换至应用内页面,等待打印采集结果。 1066 1067- validator获取应用页面帧率 1068 1069 ``` 1070 $ SP_daemon -editor fpsohtest 1071 set num:10 successfps:0|1726909713442fps:97|1726909714442fps:113|1726909715442fps:116|1726909716442fps:116|1726909717442fps:118|1726909718442fps:114|1726909719442fps:114|1726909720442fps:115|1726909721442fps:118|1726909722442SP_daemon exec finished! 1072 ``` 1073 >**说明** 1074 > 1075 >- 执行命令后需滑动或切换当前页面,等待10s后打印采集结果。 1076 1077### 其他采集 1078 1079当前设备电量采集结果可写入csv文件,其它命令需单独采集,采集结果不写入data.csv,仅在命令框显示。 1080 1081| 命令参数 |必选| 说明 | 1082| :-----|:-----| :--------------------- | 1083| -screen |否| 采集屏幕分辨率和刷新率。 | 1084| -deviceinfo|否| 获取设备信息。 | 1085| -server|否| 启停采集用来拉起daemon进程。 | 1086| -clear|否| 清除所有SP_daemon进程。 | 1087| -ohtestfps|否| validator用于获取fps,可设置采集次数(1秒采集一次)。 | 1088| -editorServer|否| editor工具用来拉起daemon进程。 | 1089| -recordcapacity|否| 获取当前设备电量。 | 1090| -profilerfps |否| 采集当前界面fps。 | 1091 1092- 获取屏幕分辨率 1093 1094 ``` 1095 $ SP_daemon -screen 1096 activeMode: 720x1280, refreshrate=69 1097 1098 1099 command exec finished! 1100 $ 1101 ``` 1102 >**说明** 1103 > 1104 >- activeMode表示当前屏幕分辨率,refreshrate表示屏幕刷新率。 1105 1106- 获取设备信息 1107 1108 ``` 1109 $ SP_daemon -deviceinfo 1110 abilist: default 1111 activeMode: 720x1280 1112 board: hw 1113 brand: default 1114 cpu_c1_cluster: 0 1 2 3 1115 cpu_c1_max: 1992000 1116 cpu_c1_min: 408000 1117 cpu_cluster_name: policy0 1118 daemonPerfVersion: 1.0.5 1119 deviceTypeName: rk3568 1120 fullname: OpenHarmony-5.1.0.46 1121 gpu_max_freq: 800000000 1122 gpu_min_freq: 200000000 1123 model: ohos 1124 name: OpenHarmony 3.2 1125 sn: 150100424a5444345209d941bec6b900 1126 version: OpenHarmony 5.1.0.46 1127 1128 command exec finished! 1129 $ 1130 ``` 1131 1132- 启动一个进程来监听start和stop命令的socket消息 1133 1134 ``` 1135 $ SP_daemon -server 1136 $ 1137 $ pidof SP_daemon 1138 7024 1139 $ 1140 ``` 1141 >**说明** 1142 > 1143 >- 可执行pidof SP_daemon查看进程id。 1144 1145- 清除SP_daemon进程ID 1146 1147 ``` 1148 $ pidof SP_daemon 1149 2725 1150 $ SP_daemon -clear 1151 1152 1153 command exec finished! 1154 $ 1155 $ pidof SP_daemon 1156 $ 1157 ``` 1158 >**说明** 1159 > 1160 >- 可执行pidof SP_daemon查看进程id。 1161 1162- validator用于获取当前页面帧率 1163 1164 ``` 1165 $ SP_daemon -ohtestfps 10 1166 set num:10 success 1167 fps:1|1501926684532 1168 fps:18|1501926685532 1169 fps:37|1501926686532 1170 fps:41|1501926687532 1171 fps:42|1501926688532 1172 fps:16|1501926689532 1173 fps:40|1501926690532 1174 fps:40|1501926691532 1175 fps:42|1501926692532 1176 fps:41|1501926693532 1177 SP_daemon exec finished! 1178 $ 1179 ``` 1180 >**说明** 1181 > 1182 >- 该条命令里的10表示采集的次数(一秒采集一次),可以设置为其他正整数。 1183 1184 1185- 启动一个进程来监听editor工具的socket消息 1186 1187 ``` 1188 $ SP_daemon -editorServer 1189 1190 1191 command exec finished! 1192 ``` 1193 1194 1195- 获取电池电量 1196 1197 ``` 1198 $ SP_daemon -recordcapacity 1199 recordTime: 1726903063 1200 recordPower: 5502 1201 ``` 1202 >**说明** 1203 > 1204 >- recordTime表示时间戳,recordPower表示当前时刻的电量。 1205 > 1206 >- 该命令需单独采集,采集结果写入/data/local/tmp/powerLeftRecord.csv,可以使用hdc file recv导出到本地。具体请参考查看csv采集结果。 1207 1208- 采集当前界面fps 1209 1210 ``` 1211 $ SP_daemon -profilerfps 10 1212 set num:10 success 1213 fps:0|1711692357278 1214 fps:0|1711692358278 1215 fps:1|1711692359278 1216 fps:0|1711692360278 1217 fps:0|1711692361278 1218 fps:0|1711692362278 1219 fps:0|1711692363278 1220 fps:0|1711692364278 1221 fps:26|1711692365278 1222 fps:53|1711692366278 1223 SP_daemon exec finished! 1224 $ 1225 ``` 1226 >**说明** 1227 > 1228 >- 该条命令里的100表示采集的次数(一秒采集一次),可以设置为其他正整数。 1229 1230- fps分段采集 1231 1232 ``` 1233 $ SP_daemon -profilerfps 100 -sections 10 1234 set num:100 success 1235 fps:0|1711692393278 1236 fps:0|1711692394278 1237 fps:0|1711692395278 1238 fps:44|1711692396278 1239 sectionsFps:0|1711692396278 1240 sectionsFps:0|1711692396378 1241 sectionsFps:40|1711692396478 1242 sectionsFps:60|1711692396578 1243 sectionsFps:60|1711692396678 1244 sectionsFps:60|1711692396778 1245 sectionsFps:60|1711692396878 1246 sectionsFps:40|1711692396978 1247 sectionsFps:60|1711692397078 1248 sectionsFps:60|1711692397178 1249 fps:51|1711692397278 1250 1251 ... 1252 1253 SP_daemon exec finished! 1254 $ 1255 ``` 1256 >**说明** 1257 > 1258 >- 该条命令里的100表示采集的次数(一秒采集一次),可以设置为其他正整数,10表示分段:目前支持设置 1-10(正整数)段采集。 1259 1260 1261<!--RP3End-->