1fb726d48Sopenharmony_ci# Scheduling analysis 抓取和展示说明 2fb726d48Sopenharmony_ci 3fb726d48Sopenharmony_ci抓取和展示 CPU 调度分析,线程调度分析相关数据。 4fb726d48Sopenharmony_ci 5fb726d48Sopenharmony_ci## Scheduling analysis 的抓取 6fb726d48Sopenharmony_ci 7fb726d48Sopenharmony_ci### Scheduling analysis 抓取界面配置说明 8fb726d48Sopenharmony_ci 9fb726d48Sopenharmony_ci打开 Scheduling analysis 开关抓取调度分析数据。 10fb726d48Sopenharmony_ci 11fb726d48Sopenharmony_ci 12fb726d48Sopenharmony_ci### Scheduling analysis 文件的抓取 13fb726d48Sopenharmony_ci 14fb726d48Sopenharmony_ci点击 Record setting,在 output file path 输入文件名 hiprofiler_dataScheduling.htrace,拖动滚动条设置 buffer size 大小是 64MB,抓取时长是 50s。 15fb726d48Sopenharmony_ci 16fb726d48Sopenharmony_ci点击 Trace command,就会根据上面的配置生成抓取命令,点击 Record 抓取,抓取过程中会显示抓取时长。 17fb726d48Sopenharmony_ci 18fb726d48Sopenharmony_ci 19fb726d48Sopenharmony_ci## Scheduling analysis 功能介绍 20fb726d48Sopenharmony_ci 21fb726d48Sopenharmony_ci将抓取的文件导入到 smartperf 工具查看。 22fb726d48Sopenharmony_ci 23fb726d48Sopenharmony_ci### CPU 频点分析 24fb726d48Sopenharmony_ci 25fb726d48Sopenharmony_ci点击下拉列表框选择 CPU Frequency,可以看到各核 CPU 的各频点持续时长的占比图,以颜色区分各频点。 26fb726d48Sopenharmony_ci 27fb726d48Sopenharmony_ci点击 CPU Frequency 饼图,可以跳转到详细信息界面,用饼图和表格来展示某个 CPU 下各频点持续时长的的相关数据。 28fb726d48Sopenharmony_ci 29fb726d48Sopenharmony_ci 30fb726d48Sopenharmony_ci- No:编号。 31fb726d48Sopenharmony_ci- frequency:频率。 32fb726d48Sopenharmony_ci- min:最小时长。 33fb726d48Sopenharmony_ci- max:最大时长。 34fb726d48Sopenharmony_ci- average:平均时长。 35fb726d48Sopenharmony_ci- duration:运行总时长。 36fb726d48Sopenharmony_ci 点击详细页的 CPU Frequency 饼图,可以跳转某个 CPU 下某个频点的运行的线程信息。 37fb726d48Sopenharmony_ci  38fb726d48Sopenharmony_ci- No:编号。 39fb726d48Sopenharmony_ci- t_name:线程名。 40fb726d48Sopenharmony_ci- tid:线程id。 41fb726d48Sopenharmony_ci- p_name:进程名。 42fb726d48Sopenharmony_ci- p_pid:进程id。 43fb726d48Sopenharmony_ci- duration:运行总时长。 44fb726d48Sopenharmony_ci 45fb726d48Sopenharmony_ci### CPU Idle 分析 46fb726d48Sopenharmony_ci 47fb726d48Sopenharmony_ci点击下拉列表框选择 CPU Idle,可以看到各 CPU 的 Idle 的时长占比饼图,以颜色区分各 Idle。 48fb726d48Sopenharmony_ci 49fb726d48Sopenharmony_ci点击 CPU Idle 饼图,可以跳转到某 CPU 的 idle 分析的详细数据,以饼图和表格的形式展示。 50fb726d48Sopenharmony_ci 51fb726d48Sopenharmony_ci 52fb726d48Sopenharmony_ci- No:编号。 53fb726d48Sopenharmony_ci- idle:idle值。 54fb726d48Sopenharmony_ci- min:最小时长。 55fb726d48Sopenharmony_ci- max:最大时长。 56fb726d48Sopenharmony_ci- average:平均时长。 57fb726d48Sopenharmony_ci- duration:运行总时长。 58fb726d48Sopenharmony_ci 59fb726d48Sopenharmony_ci### CPU Irq 分析 60fb726d48Sopenharmony_ci 61fb726d48Sopenharmony_ci点击下拉列表框选择 CPU Irq,可以看到各 CPU 的 Irq 的时长占比饼图,以颜色区分。 62fb726d48Sopenharmony_ci 63fb726d48Sopenharmony_ci点击 CPU Irq 饼图,可以跳转到某 CPU 的 Irq 分析的详细数据,以饼图和表格的形式展示。 64fb726d48Sopenharmony_ci 65fb726d48Sopenharmony_ci 66fb726d48Sopenharmony_ci- No:编号。 67fb726d48Sopenharmony_ci- block:irq的类型。 68fb726d48Sopenharmony_ci- name:irp名称。 69fb726d48Sopenharmony_ci- min:最小时长。 70fb726d48Sopenharmony_ci- max:最大时长。 71fb726d48Sopenharmony_ci- average:平均时长。 72fb726d48Sopenharmony_ci- duration:运行总时长。 73fb726d48Sopenharmony_ci 74fb726d48Sopenharmony_ci### CPU 占用率显示 75fb726d48Sopenharmony_ci 76fb726d48Sopenharmony_ci以表格显示各 CPU 的占用率。 77fb726d48Sopenharmony_ci 78fb726d48Sopenharmony_ci 79fb726d48Sopenharmony_ci### Top20 线程大中小核占用率 80fb726d48Sopenharmony_ci 81fb726d48Sopenharmony_ci选择 Thread Analysis 标签页,各个 CPU 通过勾选 big 或者 middle 或者 small 来设置 CPU 的分类。 82fb726d48Sopenharmony_ci 83fb726d48Sopenharmony_ci各 CPU 勾选好大中小核,点击 Upload 可以跳转到各个线程 CPU 占用率情况的展示页面。 84fb726d48Sopenharmony_ci 85fb726d48Sopenharmony_ci如上图所示: 86fb726d48Sopenharmony_ci 87fb726d48Sopenharmony_ci- 三色柱状图:各个线程CPU的占用率情况,其中以颜色区分占用的大中小核的占用率情况,并以表格的形式展示各个线程的基本信息和大中小核占用率。 88fb726d48Sopenharmony_ci- 单色柱状图:分别统计线程在某一个类别(大、中、小)的CPU的占用率,并显示出线程的基本信息和占用率。 89fb726d48Sopenharmony_ci 表格的字段说明: 90fb726d48Sopenharmony_ci- tid:线程号。 91fb726d48Sopenharmony_ci- t_name:线程名。 92fb726d48Sopenharmony_ci- pid:进程号。 93fb726d48Sopenharmony_ci- p_name:进程名。 94fb726d48Sopenharmony_ci- big core:大核占用时长。 95fb726d48Sopenharmony_ci- middle core:中核占用时长。 96fb726d48Sopenharmony_ci- small core:小核占用时长。 97fb726d48Sopenharmony_ci- cpu..(us):运行总时长(..代表cpu号)。 98fb726d48Sopenharmony_ci 99fb726d48Sopenharmony_ci### 单个线程频点分布 100fb726d48Sopenharmony_ci 101fb726d48Sopenharmony_ci点击单个线程频点分布的标签,通过在 Thread Search 选择线程,来展示单个线程的频点分布情况。 102fb726d48Sopenharmony_ci 103fb726d48Sopenharmony_ci 104fb726d48Sopenharmony_ci- NO:编号。 105fb726d48Sopenharmony_ci- cpu:cpu编号。 106fb726d48Sopenharmony_ci- frequency:频点。 107fb726d48Sopenharmony_ci- duration:运行时长。 108fb726d48Sopenharmony_ci- %:频点占用率。 109fb726d48Sopenharmony_ci 110fb726d48Sopenharmony_ci### Top20 单次运行超长线程 111fb726d48Sopenharmony_ci 112fb726d48Sopenharmony_ci通过点击 Top20 单次运行超长线程标签,显示线程的单次运行时长来统计出单次运行时长最大的 20 个线程。 113fb726d48Sopenharmony_ci 114fb726d48Sopenharmony_ci 115fb726d48Sopenharmony_ci- NO:编号。 116fb726d48Sopenharmony_ci- tid:线程号。 117fb726d48Sopenharmony_ci- t_name:线程名。 118fb726d48Sopenharmony_ci- pid:进程号。 119fb726d48Sopenharmony_ci- p_name:进程名。 120fb726d48Sopenharmony_ci- max duration:最大运行时长。 121fb726d48Sopenharmony_ci- timestamp:时间戳信息。 122fb726d48Sopenharmony_ci 123fb726d48Sopenharmony_ci### Top20 进程线程数 124fb726d48Sopenharmony_ci 125fb726d48Sopenharmony_ci通过点击 Top20 进程线程数标签,显示线程数量最多的 20 个进程,以饼图和表格方式显示。 126fb726d48Sopenharmony_ci 127fb726d48Sopenharmony_ci 128fb726d48Sopenharmony_ci- NO:编号。 129fb726d48Sopenharmony_ci- pid:进程号。 130fb726d48Sopenharmony_ci- p_name:进程名。 131fb726d48Sopenharmony_ci- thread count:线程数量。 132fb726d48Sopenharmony_ci 133fb726d48Sopenharmony_ci### Top20 切换次数线程 134fb726d48Sopenharmony_ci 135fb726d48Sopenharmony_ci通过点击 Top20 切换次数线程标签,显示切换次数最多的 20 个进程,以饼图和表格方式显示。 136fb726d48Sopenharmony_ci 137fb726d48Sopenharmony_ci 138fb726d48Sopenharmony_ci- NO:编号。 139fb726d48Sopenharmony_ci- tid:线程号。 140fb726d48Sopenharmony_ci- t_name:线程名。 141fb726d48Sopenharmony_ci- pid:进程号。 142fb726d48Sopenharmony_ci- p_name:进程名。 143fb726d48Sopenharmony_ci- sched_switch count:切换次数。 144