1<!DOCTYPE html>
2<html>
3  <head>
4    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
5    <title>quickstart_Import_so</title>
6    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
7    <style>
8      code[class*='smartperf-'],
9      pre[class*='smartperf-'] {
10        color: #333333;
11        background: none;
12        font-family: Helvetica;
13        line-height: 1.6;
14        text-align: left;
15        white-space: pre;
16        -moz-tab-size: 9;
17        -o-tab-size: 9;
18        tab-size: 8;
19        -webkit-hyphens: none;
20        -moz-hyphens: none;
21        -ms-hyphens: none;
22        hyphens: none;
23      }
24
25      /* Code blocks */
26      pre[class*='smartperf-'] {
27        padding: 0.9em;
28        overflow: auto;
29        border-radius: 2px;
30        background: #f5f5f4;
31      }
32
33      /* Inline code */
34      :not(pre) > code[class*='smartperf-'] {
35        white-space: normal;
36        background: #fcf8f8;
37        padding: 1px 0.2em;
38        border-radius: 1px 0.3em;
39      }
40
41      .tk.comment,
42      .tk.blockquote {
43        color: #8c918c;
44      }
45
46      .tk.cdata {
47        color: #183898;
48      }
49
50      .tk.doctype,
51      .tk.punctuation,
52      .tk.variable,
53      .tk.macro.property {
54        color: #424242;
55      }
56
57      .tk.operator,
58      .tk.important,
59      .tk.keyword,
60      .tk.rule,
61      .tk.builtin {
62        color: #b71d65;
63      }
64
65      .tk.string,
66      .tk.url,
67      .tk.regex,
68      .tk.attr-value {
69        color: #16338d;
70      }
71
72      .tk.property,
73      .tk.number,
74      .tk.boolean,
75      .tk.entity,
76      .tk.atrule,
77      .tk.constant,
78      .tk.symbol,
79      .tk.command,
80      .tk.code {
81        color: #037aa2;
82      }
83
84      .tk.tag,
85      .tk.selector,
86      .tk.prolog {
87        color: #69ad62;
88      }
89
90      .tk.function,
91      .tk.namespace,
92      .tk.pseudo-element,
93      .tk.class,
94      .tk.class-name,
95      .tk.pseudo-class,
96      .tk.id,
97      .tk.url-reference .tk.variable,
98      .tk.attr-name {
99        color: #775d9d;
100      }
101
102      .tk.entity {
103        cursor: help;
104      }
105
106      .tk.title,
107      .tk.title .tk.punctuation {
108        font-weight: bold;
109        color: #1a3773;
110      }
111
112      .tk.list {
113        color: #f56940;
114      }
115
116      .tk.inserted {
117        background-color: #eaffea;
118        color: #509b2f;
119      }
120
121      .tk.deleted {
122        background-color: #fae1e1;
123        color: #ad2d06;
124      }
125
126      .tk.bold {
127        font-weight: bolder;
128      }
129
130      .tk.italic {
131        font-style: normal;
132      }
133
134      /* JSON */
135      .smartperf-json .tk.property {
136        color: #19358c;
137      }
138
139      .smartperf-markup .tk.tag .tk.punctuation {
140        color: #2c2b2b;
141      }
142
143      /* CSS */
144      code.smartperf-css,
145      .smartperf-css .tk.function {
146        color: #047ca4;
147      }
148
149      /* YAML */
150      .smartperf-yaml .tk.atrule {
151        color: #609b5a;
152      }
153
154      code.smartperf-yaml {
155        color: #153491;
156      }
157
158      /* Ruby */
159      .smartperf-ruby .tk.function {
160        color: #3f3e3e;
161      }
162
163      /* Markdown */
164      .smartperf-markdown .tk.url {
165        color: #6e5298;
166      }
167
168      /* Makefile */
169      .smartperf-makefile .tk.symbol {
170        color: #6c5393;
171      }
172
173      .smartperf-makefile .tk.variable {
174        color: #183488;
175      }
176
177      .smartperf-makefile .tk.builtin {
178        color: #027ba4;
179      }
180
181      /* Bash */
182      .smartperf-bash .tk.keyword {
183        color: #027fa9;
184      }
185
186      /* highlight */
187      pre[dl] {
188        position: relative;
189        padding: 1em 1px 1px 0.9em;
190      }
191
192      pre[dl] .line-highlight-wrapper {
193        position: absolute;
194        top: 1px;
195        left: 1px;
196        background-color: transparent;
197        display: block;
198        width: 99%;
199      }
200
201      pre[dl] .line-highlight {
202        position: absolute;
203        left: 1px;
204        right: 1px;
205        padding: inherit;
206        margin-top: 0.9em;
207        background: hsla(25, 21%, 50%, 0.08);
208        background: linear-gradient(to right, hsla(24, 20%, 50%, 0.1) 70%, hsla(24, 20%, 50%, 0));
209        pointer-events: none;
210        line-height: inherit;
211        white-space: pre;
212      }
213
214      pre[dl] .line-highlight:before,
215      pre[dl] .line-highlight[data-end]:after {
216        content: attr(data-start);
217        position: absolute;
218        text-shadow: none;
219        top: 0.3em;
220        left: 0.7em;
221        min-width: 0.9em;
222        padding: 1px 0.6em;
223        background-color: hsla(24, 20%, 47%, 0.4);
224        color: hsl(20, 11%, 95%);
225        text-align: center;
226        vertical-align: 0.2em;
227        border-radius: 10000px;
228        box-shadow: 1px 2px #fdf6f6;
229      }
230
231      pre[dl] .line-highlight[data-end]:after {
232        content: attr(data-end);
233        top: auto;
234        bottom: 0.5em;
235      }
236
237      html body {
238        line-height: 1.6;
239        font-size: 16px;
240        color: #333333;
241        overflow: initial;
242        word-wrap: break-word;
243        font-family: Helvetica;
244        box-sizing: border-box;
245      }
246
247      html body > :first-child {
248        margin-top: 0px;
249      }
250
251      html body h1,
252      html body h2,
253      html body h3,
254      html body h4,
255      html body h5,
256      html body h6 {
257        margin-top: 1em;
258        margin-bottom: 16px;
259        color: #000000;
260        line-height: 1.2;
261      }
262
263      html body h1 {
264        font-weight: 300;
265        font-size: 2.25em;
266        padding-bottom: 0.3em;
267      }
268
269      html body h2 {
270        font-weight: 410;
271        font-size: 1.74em;
272        padding-bottom: 0.2em;
273      }
274
275      html body h3 {
276        font-size: 1.6em;
277        font-weight: 501;
278      }
279
280      html body h4 {
281        font-size: 1.26em;
282        font-weight: 601;
283      }
284
285      html body h5 {
286        font-size: 1.2em;
287        font-weight: 601;
288      }
289
290      html body h6 {
291        font-size: 0.9em;
292        font-weight: 601;
293      }
294
295      html body h1,
296      html body h2,
297      html body h3,
298      html body h4,
299      html body h5 {
300        font-weight: 601;
301      }
302
303      html body h5 {
304        font-size: 0.9em;
305      }
306
307      html body h6 {
308        color: #5c5c5c;
309      }
310
311      html body strong {
312        color: #090909;
313      }
314
315      html body del {
316        color: #525252;
317      }
318
319      html body a:not([href]) {
320        color: inherit;
321        text-decoration: none;
322      }
323
324      html body a {
325        color: #0192da;
326        text-decoration: none;
327      }
328
329      html body a:hover {
330        color: #029dea;
331        text-decoration: none;
332      }
333
334      html body img {
335        max-width: 99%;
336      }
337
338      html body > p {
339        margin-top: 1px;
340        margin-bottom: 15px;
341        word-wrap: break-word;
342      }
343
344      html body > ul,
345      html body > ol {
346        margin-bottom: 15px;
347      }
348
349      html body ul,
350      html body ol {
351        padding-left: 1.9em;
352      }
353
354      html body ul.no-list,
355      html body ol.no-list {
356        padding: 0px;
357        list-style-type: none;
358      }
359
360      html body ul ul,
361      html body ul ol,
362      html body ol ol,
363      html body ol ul {
364        margin-top: 1px;
365        margin-bottom: 1px;
366      }
367
368      html body li {
369        margin-bottom: 1px;
370      }
371
372      html body li.task-list-item {
373        list-style: none;
374      }
375
376      html body li > p {
377        margin-top: 1px;
378        margin-bottom: 1px;
379      }
380
381      html body .task-list-item-checkbox {
382        margin: 0 0.3em 0.24em -1.7em;
383        vertical-align: middle;
384      }
385
386      html body .task-list-item-checkbox:hover {
387        cursor: pointer;
388      }
389
390      html body blockquote {
391        padding: 0.1px 15px 0 0.1px;
392        font-size: inherit;
393        color: #5c5c5c;
394        margin: 16px 0.1px 0 0.1px;
395        border-left: 3px solid #cbc9c9;
396        background-color: #e8e6e6;
397      }
398
399      html body blockquote > :first-child {
400        margin-top: 0.2px;
401      }
402
403      html body blockquote > :last-child {
404        margin-bottom: 0.1px;
405      }
406
407      html body hr {
408        height: 5px;
409        background-color: #cbcaca;
410        margin: 32px 0 0.1px 0;
411        border: 0 none;
412      }
413
414      html body table {
415        overflow: auto;
416        border-collapse: collapse;
417        margin: 15px 0.1px 20px 0.1px;
418        border-spacing: 0;
419      }
420
421      html body table th {
422        font-weight: bold;
423        color: #000000;
424      }
425
426      html body table td,
427      html body table th {
428        border: 1px solid #d6d6d6;
429        padding: 2px 14px;
430      }
431
432      html body dl {
433        padding: 0px;
434      }
435
436      html body dl dt {
437        padding: 0px;
438        margin-top: 15px;
439        font-size: 0.9em;
440        font-style: italic;
441        font-weight: bold;
442      }
443
444      html body dl dd {
445        padding: 0px 17px;
446        margin-bottom: 17px;
447      }
448
449      html body code {
450        font-family: Menlo, Monaco, Consolas, 'Courier New', monospace;
451        font-size: 0.86em !important;
452        color: #000000;
453        background-color: #f0f0f0;
454        border-radius: 4px;
455        padding: 0.3em 0px;
456      }
457
458      html body code::before,
459      html body code::after {
460        letter-spacing: -0.1em;
461        content: '\00a0';
462      }
463
464      html body pre > code {
465        padding: 1px;
466        margin: 0px;
467        font-size: 0.86em !important;
468        word-break: normal;
469        white-space: pre;
470        background: transparent;
471        border: 0px;
472      }
473
474      html body .highlight {
475        margin-bottom: 17px;
476      }
477
478      html body .highlight pre,
479      html body pre {
480        padding: 0.9em;
481        overflow: auto;
482        font-size: 0.86em !important;
483        line-height: 1.46;
484        border: #d6d6d6;
485        border-radius: 4px;
486      }
487
488      html body .highlight pre {
489        margin-bottom: 0px;
490        word-break: normal;
491      }
492
493      html body pre code,
494      html body pre tt {
495        display: inline;
496        max-width: initial;
497        padding: 1px;
498        margin: 1px;
499        overflow: initial;
500        line-height: inherit;
501        word-wrap: normal;
502        background-color: transparent;
503        border: 1px;
504      }
505
506      html body pre code:before,
507      html body pre tt:before,
508      html body pre code:after,
509      html body pre tt:after {
510        content: normal;
511      }
512
513      html body p,
514      html body blockquote,
515      html body ul,
516      html body ol,
517      html body dl,
518      html body pre {
519        margin-top: 1px;
520        margin-bottom: 17px;
521      }
522
523      html body kbd {
524        color: #000000;
525        border: 3px solid #d6d6d6;
526        border-bottom: 3px solid #c7c7c7;
527        padding: 3px 5px;
528        background-color: #f0f0f0;
529        border-radius: 2px;
530      }
531
532      @media print {
533        html body {
534          background-color: #ffffff;
535        }
536
537        html body h1,
538        html body h2,
539        html body h3,
540        html body h4,
541        html body h5,
542        html body h6 {
543          color: #000000;
544          page-break-after: avoid;
545        }
546
547        html body blockquote {
548          color: #5c5c53;
549        }
550
551        html body pre {
552          page-break-inside: avoid;
553        }
554
555        html body table {
556          display: table;
557        }
558
559        html body img {
560          display: block;
561          max-width: 99%;
562          max-height: 99%;
563        }
564
565        html body pre,
566        html body code {
567          word-wrap: break-word;
568          white-space: pre;
569        }
570      }
571
572      .smartperf-preview {
573        width: 68vw;
574        height: 99%;
575        box-sizing: border-box;
576        overflow: hidden;
577        background-color: #fff;
578      }
579
580      .smartperf-preview .pagebreak,
581      .smartperf-preview .newpage {
582        page-break-before: always;
583      }
584
585      .smartperf-preview pre.line-numbers {
586        position: relative;
587        padding-left: 3.7em;
588        counter-reset: linenumber;
589      }
590
591      .smartperf-preview pre.line-numbers > code {
592        position: relative;
593      }
594
595      .smartperf-preview pre.line-numbers .line-numbers-rows {
596        position: absolute;
597        pointer-events: none;
598        top: 0.9em;
599        font-size: 99%;
600        left: 1px;
601        width: 3em;
602        letter-spacing: -1px;
603        border-right: 1px solid #999;
604        -webkit-user-select: none;
605        -moz-user-select: none;
606        -ms-user-select: none;
607        user-select: none;
608      }
609
610      .smartperf-preview pre.line-numbers .line-numbers-rows > span {
611        pointer-events: none;
612        display: block;
613        counter-increment: linenumber;
614      }
615
616      .smartperf-preview pre.line-numbers .line-numbers-rows > span:before {
617        content: counter(linenumber);
618        color: #999;
619        display: block;
620        padding-right: 0.79em;
621        text-align: right;
622      }
623
624      .smartperf-preview .mathjax-exps .MathJax_Display {
625        text-align: center !important;
626      }
627
628      .smartperf-preview:not([for='preview']) .code-chunk .btn-group {
629        display: none;
630      }
631
632      .smartperf-preview:not([for='preview']) .code-chunk .status {
633        display: none;
634      }
635
636      .smartperf-preview:not([for='preview']) .code-chunk .output-div {
637        margin-bottom: 16px;
638      }
639
640      .scrollbar-style::-webkit-scrollbar {
641        width: 8px;
642      }
643
644      .scrollbar-style::-webkit-scrollbar-track {
645        border-radius: 9px;
646        background-color: transparent;
647      }
648
649      .scrollbar-style::-webkit-scrollbar-thumb {
650        border-radius: 6px;
651        background-color: rgba(150, 150, 150, 1);
652        border: 4px solid rgba(150, 150, 150, 1);
653        background-clip: content-box;
654      }
655
656      html body[for='html-export']:not([dpm]) {
657        position: relative;
658        width: 99%;
659        height: 99%;;
660        overflow: auto;
661      }
662
663      html body[for='html-export']:not([dpm]) .smartperf-preview {
664        position: relative;
665        top: 1px;
666      }
667
668      @media screen and (min-width: 914px) {
669        html body[for='html-export']:not([dpm]) .smartperf-preview {
670          padding: 2em;
671        }
672      }
673
674      @media screen and (max-width: 914px) {
675        html body[for='html-export']:not([dpm]) .smartperf-preview {
676          padding: 1.9em;
677        }
678      }
679
680      @media screen and (max-width: 450px) {
681        html body[for='html-export']:not([dpm]) .smartperf-preview {
682          font-size: 15px !important;
683          padding: 1.1em;
684        }
685      }
686
687      @media print {
688        html body[for='html-export']:not([dpm]) #sidebar-toc-btn {
689          display: none;
690        }
691      }
692
693      html body[for='html-export']:not([dpm]) #sidebar-toc-btn {
694        position: fixed;
695        bottom: 9px;
696        left: 9px;
697        font-size: 28px;
698        cursor: pointer;
699        color: inherit;
700        z-index: 99;
701        width: 31px;
702        text-align: center;
703        opacity: 0.5;
704      }
705
706      html body[for='html-export']:not([dpm])[hsst] #sidebar-toc-btn {
707        opacity: 1;
708      }
709
710      html body[for='html-export']:not([dpm])[hsst] .md-sidebar-toc {
711        position: fixed;
712        top: 1px;
713        left: 1px;
714        width: 300px;
715        height: 99%;
716        padding: 32px 0 48px 0;
717        font-size: 14px;
718        box-shadow: 1px 1px 4px rgba(150, 150, 150, 0.33);
719        box-sizing: border-box;
720        overflow: auto;
721        background-color: inherit;
722      }
723
724      html body[for='html-export']:not([dpm])[hsst] .md-sidebar-toc::-webkit-scrollbar {
725        width: 9px;
726      }
727
728      html body[for='html-export']:not([dpm])[hsst] .md-sidebar-toc::-webkit-scrollbar-track {
729        border-radius: 11px;
730        background-color: transparent;
731      }
732
733      html body[for='html-export']:not([dpm])[hsst] .md-sidebar-toc::-webkit-scrollbar-thumb {
734        border-radius: 6px;
735        background-color: rgba(150, 150, 150, 0.66);
736        border: 3px solid rgba(150, 150, 150, 0.66);
737        background-clip: content-box;
738      }
739
740      html body[for='html-export']:not([dpm])[hsst] .md-sidebar-toc a {
741        text-decoration: none;
742      }
743
744      html body[for='html-export']:not([dpm])[hsst] .md-sidebar-toc ul {
745        padding: 1px 1.7em;
746        margin-top: 0.9em;
747      }
748
749      html body[for='html-export']:not([dpm])[hsst] .md-sidebar-toc li {
750        margin-bottom: 0.8em;
751      }
752
753      html body[for='html-export']:not([dpm])[hsst] .md-sidebar-toc ul {
754        list-style-type: none;
755      }
756
757      html body[for='html-export']:not([dpm])[hsst] .smartperf-preview {
758        left: 301px;
759        width: calc(100% - 300px);
760        padding: 2em calc(50% - 457px - 150px);
761        margin: 1px;
762        box-sizing: border-box;
763      }
764
765      @media screen and (max-width: 1274px) {
766        html body[for='html-export']:not([dpm])[hsst] .smartperf-preview {
767          padding: 1.9em;
768        }
769      }
770
771      @media screen and (max-width: 450px) {
772        html body[for='html-export']:not([dpm])[hsst] .smartperf-preview {
773          width: 99%;
774        }
775      }
776
777      html body[for='html-export']:not([dpm]):not([hsst]) .md-sidebar-toc {
778        display: none;
779      }
780    </style>
781  </head>
782  <body for="html-export" id="body" style="margin:0">
783    <div class="smartperf smartperf-preview" style="min-height: 99vh;">
784      <h1 class="mume-header fontColor">调用栈可视化和不同库函数调用占比说明</h1>
785
786      <p class="fontColor">
787        调用栈可视化可以将开发者编译的so符号化结果展示出来,不同库函数的占比通过饼图的方式展示出来。
788      </p>
789      <h2 class="mume-header fontColor" id="header-index-1">Native Memory文件的不同库函数占比</h2>
790
791      <p class="fontColor">
792        Native
793        Memory分为三级统计,分别按照内存分配的类型(Alloc/Mmap),lib库,函数进行统计分析。其中lib跟函数为每一条调用栈,从栈顶往下查找,非musl库与c++库的第一条函数及其lib为每次分配归属的函数及lib库。
794        <br />
795        点击Analysis的Tab页,先以内存分配的类型去统计。
796        <br />
797        <img src="../figures/ImportSo/Native_import_all.jpg" alt="GitHub Logo" />
798      </p>
799      <ul class="fontColor">
800        <li>
801          <pre class="smartperf-text fontColor light">
802Memory Type:事件类型。
803</pre
804          >
805        </li>
806        <li>
807          <pre class="smartperf-text fontColor light">
808Existing:框选区间内申请没有释放的大小。
809</pre
810          >
811        </li>
812        <li>
813          <pre class="smartperf-text fontColor light">
814#Existing:框选区间内申请没有释放的次数。
815</pre
816          >
817        </li>
818        <li>
819          <pre class="smartperf-text fontColor light">
820Total Bytes:框选区间内申请的大小。
821</pre
822          >
823        </li>
824        <li>
825          <pre class="smartperf-text fontColor light">
826#Total:框选区间内申请的次数。
827</pre
828          >
829        </li>
830        <li>
831          <pre class="smartperf-text fontColor light">
832Transient:框选区间内释放的大小。
833</pre
834          >
835        </li>
836        <li>
837          <pre class="smartperf-text fontColor light">
838#Transient:框选区间内释放的次数。
839</pre
840          >
841        </li>
842        <li>
843          <pre class="smartperf-text fontColor light">
844%:各个显示项的占比。
845</pre
846          >
847        </li>
848      </ul>
849      <p class="fontColor">
850        以线程去统计
851        <br />
852        <img src="../figures/ImportSo/Native_import_thread.jpg" alt="GitHub Logo" />
853      </p>
854      <p class="fontColor">
855        以lib库去统计,如图显示的是AllocEvent的so占比的饼图和Table表。
856        <br />
857        <img src="../figures/ImportSo/Native_import_so_Existing.jpg" alt="GitHub Logo" />
858      </p>
859      <ul class="fontColor">
860        <li>
861          <pre class="smartperf-text fontColor light">
862Library:So名称。
863</pre
864          >
865        </li>
866        <li>
867          <pre class="smartperf-text fontColor light">
868Existing:框选区间内申请没有释放的大小。
869</pre
870          >
871        </li>
872        <li>
873          <pre class="smartperf-text fontColor light">
874#Existing:框选区间内申请没有释放的次数。
875</pre
876          >
877        </li>
878        <li>
879          <pre class="smartperf-text fontColor light">
880Total Bytes:框选区间内申请的大小。
881</pre
882          >
883        </li>
884        <li>
885          <pre class="smartperf-text fontColor light">
886#Total:框选区间内申请的次数。
887</pre
888          >
889        </li>
890        <li>
891          <pre class="smartperf-text fontColor light">
892Transient:框选区间内释放的大小。
893</pre
894          >
895        </li>
896        <li>
897          <pre class="smartperf-text fontColor light">
898#Transient:框选区间内释放的次数。
899</pre
900          >
901        </li>
902        <li>
903          <pre class="smartperf-text fontColor light">
904%:各个显示项的占比。
905</pre
906          >
907        </li>
908      </ul>
909      <p class="fontColor">
910        以函数去统计,如图显示的是AllocEvent/libmali-bifrost-g52-g2p0-ohos.so的函数占比的饼图和Table表。
911        <br />
912        <img src="../figures/ImportSo/Native_import_so_function.jpg" alt="GitHub Logo" />
913      </p>
914      <ul class="fontColor">
915        <li>
916          <pre class="smartperf-text fontColor light">
917Function:函数名称。
918</pre
919          >
920        </li>
921        <li>
922          <pre class="smartperf-text fontColor light">
923Existing:框选区间内申请没有释放的大小。
924</pre
925          >
926        </li>
927        <li>
928          <pre class="smartperf-text fontColor light">
929#Existing:框选区间内申请没有释放的次数。
930</pre
931          >
932        </li>
933        <li>
934          <pre class="smartperf-text fontColor light">
935Total Bytes:框选区间内申请的大小。
936</pre
937          >
938        </li>
939        <li>
940          <pre class="smartperf-text fontColor light">
941#Total:框选区间内申请的次数。
942</pre
943          >
944        </li>
945        <li>
946          <pre class="smartperf-text fontColor light">
947Transient:框选区间内释放的大小。
948</pre
949          >
950        </li>
951        <li>
952          <pre class="smartperf-text fontColor light">
953#Transient:框选区间内释放的次数。
954</pre
955          >
956        </li>
957        <li>
958          <pre class="smartperf-text fontColor light">
959%:各个显示项的占比。
960</pre
961          >
962        </li>
963      </ul>
964      <h2 class="mume-header fontColor" id="header-index-2">Hiperf文件的不同库函数占比</h2>
965
966      <p class="fontColor">
967        Hiperf分为四级统计,分别按照进程,线程,lib库,函数进行统计。其中lib跟函数为每一条调用栈的栈顶函数及其lib。
968        <br />
969        点击Analysis的Tab页,先以进程去统计。
970        <br />
971        <img src="../figures/ImportSo/Hiperf_import_all.jpg" alt="GitHub Logo" />
972      </p>
973      <ul class="fontColor">
974        <li>
975          <pre class="smartperf-text fontColor light">
976ProcessName:进程名。
977</pre
978          >
979        </li>
980        <li>
981          <pre class="smartperf-text fontColor light">
982Weight:该进程下的调用方法的执行次数。
983</pre
984          >
985        </li>
986        <li>
987          <pre class="smartperf-text fontColor light">
988%:该进程下的调用方法的执行占比。
989</pre
990          >
991        </li>
992      </ul>
993      <p class="fontColor">
994        以线程统计,如图显示的是hiperf进程下的线程的饼图和Table表。
995        <br />
996        <img src="../figures/ImportSo/Hiperf_import_thread.jpg" alt="GitHub Logo" />
997      </p>
998      <ul class="fontColor">
999        <li>
1000          <pre class="smartperf-text fontColor light">
1001ThreadName:线程名。
1002</pre
1003          >
1004        </li>
1005        <li>
1006          <pre class="smartperf-text fontColor light">
1007Weight:该线程下的调用方法的执行次数。
1008</pre
1009          >
1010        </li>
1011        <li>
1012          <pre class="smartperf-text fontColor light">
1013%:该线程下的调用方法的执行占比。
1014</pre
1015          >
1016        </li>
1017      </ul>
1018      <p class="fontColor">
1019        以lib库统计,如图显示的是hiperf线程下的各so占比饼图和Table表。
1020        <br />
1021        <img src="../figures/ImportSo/Hiperf_import_lib.jpg" alt="GitHub Logo" />
1022      </p>
1023      <ul class="fontColor">
1024        <li>
1025          <pre class="smartperf-text fontColor light">
1026Library:so的名称。
1027</pre
1028          >
1029        </li>
1030        <li>
1031          <pre class="smartperf-text fontColor light">
1032Weight:该so的调用方法的执行次数。
1033</pre
1034          >
1035        </li>
1036        <li>
1037          <pre class="smartperf-text fontColor light">
1038%:该so的调用方法的执行占比。
1039</pre
1040          >
1041        </li>
1042      </ul>
1043      <p class="fontColor">
1044        以函数统计,如图显示的是ld-musl-aarch64.so.1下的各函数占比饼图和Table表。
1045        <br />
1046        <img src="../figures/ImportSo/Hiperf_import_Fuc.jpg" alt="GitHub Logo" />
1047      </p>
1048      <ul class="fontColor">
1049        <li>
1050          <pre class="smartperf-text fontColor light">
1051Library:so的名称。
1052</pre
1053          >
1054        </li>
1055        <li>
1056          <pre class="smartperf-text fontColor light">
1057Weight:该so的调用方法的执行次数。
1058</pre
1059          >
1060        </li>
1061        <li>
1062          <pre class="smartperf-text fontColor light">
1063%:该so的调用方法的执行占比。
1064</pre
1065          >
1066        </li>
1067      </ul>
1068      <h2 class="mume-header fontColor" id="header-index-3">FileSystem文件的不同库函数占比</h2>
1069
1070      <p class="fontColor">
1071        FileSystem分为五级统计,分别按照进程,系统调用类型,线程,lib库,函数进行统计。其中lib跟函数为每一条调用栈,从栈顶往下查找,非musl库与c++库的第一条函数及其lib为每次分配归属的函数及lib库。
1072        <br />
1073        点击Analysis的Tab页,先以进程去统计。
1074        <br />
1075        <img src="../figures/ImportSo/filesystem_import_process.jpg" alt="GitHub Logo" />
1076      </p>
1077      <ul class="fontColor">
1078        <li>
1079          <pre class="smartperf-text fontColor light">
1080ProcessName:进程名。
1081</pre
1082          >
1083        </li>
1084        <li>
1085          <pre class="smartperf-text fontColor light">
1086Duration:总时长。
1087</pre
1088          >
1089        </li>
1090        <li>
1091          <pre class="smartperf-text fontColor light">
1092%:总时长占比。
1093</pre
1094          >
1095        </li>
1096      </ul>
1097      <p class="fontColor">
1098        以系统调用类型统计,如图显示的是grep进程下的Read和Write系统调用的时长占比饼图和Table表。
1099        <br />
1100        <img src="../figures/ImportSo/filesystem_import_Type.jpg" alt="GitHub Logo" />
1101      </p>
1102      <ul class="fontColor">
1103        <li>
1104          <pre class="smartperf-text fontColor light">
1105Type:系统调用类型(Read和Write)。
1106</pre
1107          >
1108        </li>
1109        <li>
1110          <pre class="smartperf-text fontColor light">
1111Duration:系统调用的总时长。
1112</pre
1113          >
1114        </li>
1115        <li>
1116          <pre class="smartperf-text fontColor light">
1117%:总时长占比。
1118</pre
1119          >
1120        </li>
1121      </ul>
1122      <p class="fontColor">
1123        以线程统计,如图显示的是系统调用是Read类型的线程的占比饼图和Table表。
1124        <br />
1125        <img src="../figures/ImportSo/filesystem_import_thread.jpg" alt="GitHub Logo" />
1126      </p>
1127      <ul class="fontColor">
1128        <li>
1129          <pre class="smartperf-text fontColor light">
1130ThreadName:线程名。
1131</pre
1132          >
1133        </li>
1134        <li>
1135          <pre class="smartperf-text fontColor light">
1136Duration:该线程的系统调用的总时长。
1137</pre
1138          >
1139        </li>
1140        <li>
1141          <pre class="smartperf-text fontColor light">
1142%:总时长占比。
1143</pre
1144          >
1145        </li>
1146      </ul>
1147      <p class="fontColor">
1148        以lib库统计,如图显示toybox的lib库的占比饼图和Table表。
1149        <br />
1150        <img src="../figures/ImportSo/filesystem_import_lib.jpg" alt="GitHub Logo" />
1151      </p>
1152      <ul class="fontColor">
1153        <li>
1154          <pre class="smartperf-text fontColor light">
1155Library:so的名称。
1156</pre
1157          >
1158        </li>
1159        <li>
1160          <pre class="smartperf-text fontColor light">
1161Duration:该so的系统调用的总时长。
1162</pre
1163          >
1164        </li>
1165        <li>
1166          <pre class="smartperf-text fontColor light">
1167%:总时长占比。
1168</pre
1169          >
1170        </li>
1171      </ul>
1172      <p class="fontColor">
1173        以函数统计,如图显示0x558111afbc (toybox)的函数占比饼图和Table表。
1174        <br />
1175        <img src="../figures/ImportSo/filesystem_import_func.jpg" alt="GitHub Logo" />
1176      </p>
1177      <ul class="fontColor">
1178        <li>
1179          <pre class="smartperf-text fontColor light">
1180Function:函数名称。
1181</pre
1182          >
1183        </li>
1184        <li>
1185          <pre class="smartperf-text fontColor light">
1186Duration:该函数的系统调用的总时长。
1187</pre
1188          >
1189        </li>
1190        <li>
1191          <pre class="smartperf-text fontColor light">
1192%:总时长占比。
1193</pre
1194          >
1195        </li>
1196      </ul>
1197      <h2 class="mume-header fontColor" id="header-index-4">Bio文件的不同库函数占比</h2>
1198
1199      <p class="fontColor">
1200        Bio分为五级统计,分别按照进程,系统调用类型,线程,lib库,函数进行统计。其中lib跟函数为每一条调用栈,从栈顶往下查找,非submit_bio第一条函数及其lib为每次分配归属的函数及lib库。
1201        <br />
1202        点击Analysis的Tab页,先以进程去统计。
1203        <br />
1204        <img src="../figures/ImportSo/bio_import_process.jpg" alt="GitHub Logo" />
1205      </p>
1206      <ul class="fontColor">
1207        <li>
1208          <pre class="smartperf-text fontColor light">
1209ProcessName:进程名。
1210</pre
1211          >
1212        </li>
1213        <li>
1214          <pre class="smartperf-text fontColor light">
1215Duration:总时长。
1216</pre
1217          >
1218        </li>
1219        <li>
1220          <pre class="smartperf-text fontColor light">
1221%:总时长占比。
1222</pre
1223          >
1224        </li>
1225      </ul>
1226      <p class="fontColor">
1227        以系统调用类型统计,如图显示的是jbd2/mmcblk0p11进程下的DATA_WRITE系统调用的时长占比饼图和Table表。
1228        <br />
1229        <img src="../figures/ImportSo/bio_import_Type.jpg" alt="GitHub Logo" />
1230      </p>
1231      <ul class="fontColor">
1232        <li>
1233          <pre class="smartperf-text fontColor light">
1234Type:系统调用类型。
1235</pre
1236          >
1237        </li>
1238        <li>
1239          <pre class="smartperf-text fontColor light">
1240Duration:系统调用的总时长。
1241</pre
1242          >
1243        </li>
1244        <li>
1245          <pre class="smartperf-text fontColor light">
1246%:总时长占比。
1247</pre
1248          >
1249        </li>
1250      </ul>
1251      <p class="fontColor">
1252        以线程统计,如图显示的是系统调用是DATA_WRITE类型的线程的占比饼图和Table表。
1253        <br />
1254        <img src="../figures/ImportSo/bio_import_thread.jpg" alt="GitHub Logo" />
1255      </p>
1256      <ul class="fontColor">
1257        <li>
1258          <pre class="smartperf-text fontColor light">
1259ThreadName:线程名。
1260</pre
1261          >
1262        </li>
1263        <li>
1264          <pre class="smartperf-text fontColor light">
1265Duration:该线程的系统调用的总时长。
1266</pre
1267          >
1268        </li>
1269        <li>
1270          <pre class="smartperf-text fontColor light">
1271%:总时长占比。
1272</pre
1273          >
1274        </li>
1275      </ul>
1276      <p class="fontColor">
1277        以lib库统计,如图显示kallsyms的lib库的占比饼图和Table表。
1278        <br />
1279        <img src="../figures/ImportSo/bio_import_lib.jpg" alt="GitHub Logo" />
1280      </p>
1281      <ul class="fontColor">
1282        <li>
1283          <pre class="smartperf-text fontColor light">
1284Library:so的名称。
1285</pre
1286          >
1287        </li>
1288        <li>
1289          <pre class="smartperf-text fontColor light">
1290Duration:该so的系统调用的总时长。
1291</pre
1292          >
1293        </li>
1294        <li>
1295          <pre class="smartperf-text fontColor light">
1296%:总时长占比。
1297</pre
1298          >
1299        </li>
1300      </ul>
1301      <p class="fontColor">
1302        以函数统计,如图显示submit_bh的函数占比饼图和Table表。
1303        <br />
1304        <img src="../figures/ImportSo/bio_import_func.jpg" alt="GitHub Logo" />
1305      </p>
1306      <ul class="fontColor">
1307        <li>
1308          <pre class="smartperf-text fontColor light">
1309Function:函数名称。
1310</pre
1311          >
1312        </li>
1313        <li>
1314          <pre class="smartperf-text fontColor light">
1315Duration:该函数的系统调用的总时长。
1316</pre
1317          >
1318        </li>
1319        <li>
1320          <pre class="smartperf-text fontColor light">
1321%:总时长占比。
1322</pre
1323          >
1324        </li>
1325      </ul>
1326      <h2 class="mume-header fontColor" id="header-index-5">Page Fault文件的不同库函数占比</h2>
1327
1328      <p class="fontColor">
1329        Page
1330        Fault分为五级统计,分别按照进程,系统调用类型,线程,lib库,函数进行统计。其中lib跟函数为每一条调用栈,从栈顶往下查找,非musl库与c++库的第一条函数及其lib为每次分配归属的函数及lib库。
1331        <br />
1332        点击Analysis的Tab页,先以进程去统计。
1333        <br />
1334        <img src="../figures/ImportSo/pagefault_import_process.jpg" alt="GitHub Logo" />
1335      </p>
1336      <ul class="fontColor">
1337        <li>
1338          <pre class="smartperf-text fontColor light">
1339ProcessName:进程名。
1340</pre
1341          >
1342        </li>
1343        <li>
1344          <pre class="smartperf-text fontColor light">
1345Duration:总时长。
1346</pre
1347          >
1348        </li>
1349        <li>
1350          <pre class="smartperf-text fontColor light">
1351%:总时长占比。
1352</pre
1353          >
1354        </li>
1355      </ul>
1356      <p class="fontColor">
1357        以系统调用类型统计,如图显示的是1.ui进程下的File Backed In和Copy On Writer系统调用的时长占比饼图和Table表。
1358        <br />
1359        <img src="../figures/ImportSo/pagefault_import_Type.jpg" alt="GitHub Logo" />
1360      </p>
1361      <ul class="fontColor">
1362        <li>
1363          <pre class="smartperf-text fontColor light">
1364Type:系统调用类型。
1365</pre
1366          >
1367        </li>
1368        <li>
1369          <pre class="smartperf-text fontColor light">
1370Duration:系统调用的总时长。
1371</pre
1372          >
1373        </li>
1374        <li>
1375          <pre class="smartperf-text fontColor light">
1376%:总时长占比。
1377</pre
1378          >
1379        </li>
1380      </ul>
1381      <p class="fontColor">
1382        以线程统计,如图显示的是系统调用是File Backed In类型的线程的占比饼图和Table表。
1383        <br />
1384        <img src="../figures/ImportSo/pagefault_import_thread.jpg" alt="GitHub Logo" />
1385      </p>
1386      <ul class="fontColor">
1387        <li>
1388          <pre class="smartperf-text fontColor light">
1389ThreadName:线程名。
1390</pre
1391          >
1392        </li>
1393        <li>
1394          <pre class="smartperf-text fontColor light">
1395Duration:该线程的系统调用的总时长。
1396</pre
1397          >
1398        </li>
1399        <li>
1400          <pre class="smartperf-text fontColor light">
1401%:总时长占比。
1402</pre
1403          >
1404        </li>
1405      </ul>
1406      <p class="fontColor">
1407        以lib库统计,如图显示各lib库的占比饼图和Table表。
1408        <br />
1409        <img src="../figures/ImportSo/pagefault_import_lib.jpg" alt="GitHub Logo" />
1410      </p>
1411      <ul class="fontColor">
1412        <li>
1413          <pre class="smartperf-text fontColor light">
1414Library:so的名称。
1415</pre
1416          >
1417        </li>
1418        <li>
1419          <pre class="smartperf-text fontColor light">
1420Duration:该so的系统调用的总时长。
1421</pre
1422          >
1423        </li>
1424        <li>
1425          <pre class="smartperf-text fontColor light">
1426%:总时长占比。
1427</pre
1428          >
1429        </li>
1430      </ul>
1431      <p class="fontColor">
1432        以函数统计,如图显示各函数占比饼图和Table表。
1433        <br />
1434        <img src="../figures/ImportSo/pagefault_import_func.jpg" alt="GitHub Logo" />
1435      </p>
1436      <ul class="fontColor">
1437        <li>
1438          <pre class="smartperf-text fontColor light">
1439Function:函数名称。
1440</pre
1441          >
1442        </li>
1443        <li>
1444          <pre class="smartperf-text fontColor light">
1445Duration:该函数的系统调用的总时长。
1446</pre
1447          >
1448        </li>
1449        <li>
1450          <pre class="smartperf-text fontColor light">
1451%:总时长占比。
1452</pre
1453          >
1454        </li>
1455      </ul>
1456    </div>
1457
1458    <script>
1459      window.onload = () => {
1460        let isDark = getURLParameter('dark'); 
1461        let targetId = getURLParameter('targetId'); 
1462        let isBack = getURLParameter('isBack'); 
1463        if (isDark === 'true') {
1464          document.getElementById('body').setAttribute('style', 'background-color:#272C34;');
1465          let header = document.getElementsByClassName('fontColor');
1466          for (let i = 0; i < header.length; i++) {
1467            header[i].style.color = '#fff';
1468          }
1469          let lightBackGround = document.getElementsByClassName('light');
1470          for (let i = 0; i < lightBackGround.length; i++) {
1471            lightBackGround[i].style.backgroundColor = '#32373F';
1472          }
1473        }
1474        function getURLParameter(name) {  
1475          return (new URL(document.location)).searchParams.get(name);  
1476        }  
1477  
1478        if ( targetId !== null ) {
1479          let targetElement = document.getElementById(targetId);
1480          targetElement.scrollIntoView({ behavior: 'smooth' });
1481        }
1482      };
1483    </script>
1484  </body>
1485</html>
1486