首页 > 其他 > 详细

perf 调整内存页的大小

时间:2021-04-24 00:28:20      阅读:36      评论:0      收藏:0      [点我收藏+]

 

原理

TLB(Translation lookaside buffer)为页表(存放虚拟地址的页地址和物理地址的页地址的映射关系)在CPU内部的高速缓存。TLB的命中率越高,页表查询性能就越好。

TLB的一行为一个页的映射关系,也就是管理了一个页大小的内存:

TLB管理的内存大小 = TLB行数 x 内存的页大小

同一个CPU的TLB行数固定,因此内存页越大,管理的内存越大,相同业务场景下的TLB命中率就越高。

perf stat -p $PID -d -d -d
 

输出结果包含如下信息,其中1.21%和0.59%分别表示数据的miss率和指令的miss率。

1,090,788,717      dTLB-loads                #  520.592 M/sec
13,213,603      dTLB-load-misses             #    1.21% of all dTLB cache hits
669,485,765      iTLB-loads                 #  319.520 M/sec
3,979,246      iTLB-load-misses              #  0.59% of all iTLB cache hits

 

 

 

技术分享图片

 

 

 

[root@bogon c++]# perf stat -p 3288 -d -d -d 

^C
 Performance counter stats for process id 3288:

        882.898240      task-clock (msec)         #    0.038 CPUs utilized          
             6,449      context-switches          #    0.007 M/sec                  
                44      cpu-migrations            #    0.050 K/sec                    (75.57%)
               114      page-faults               #    0.129 K/sec                    (75.57%)
     1,567,938,758      cycles                    #    1.776 GHz                      (79.14%)
     1,880,169,545      instructions              #    1.20  insn per cycle           (77.56%)
   <not supported>      branches                                                    
        13,518,084      branch-misses                                                 (86.37%)
       699,533,782      L1-dcache-loads           #  792.315 M/sec                    (89.25%)
        12,758,831      L1-dcache-load-misses     #    1.82% of all L1-dcache hits    (87.42%)
   <not supported>      LLC-loads                                                   
   <not supported>      LLC-load-misses                                             
       947,575,815      L1-icache-loads           # 1073.256 M/sec                    (88.92%)
333,236,998,181,864      L1-icache-load-misses     # 35167317.79% of all L1-icache hits  (0.00%)
   <not supported>      dTLB-loads                                                  
134,920,245,165,482      dTLB-load-misses                                              (0.00%)
   <not supported>      iTLB-loads                                                  
23,373,287,351,746      iTLB-load-misses                                              (0.00%)
   <not supported>      L1-dcache-prefetches                                        
   <not supported>      L1-dcache-prefetch-misses                                   

      23.450708972 seconds time elapsed


You have mail in /var/spool/mail/root

 

perf 调整内存页的大小

原文:https://www.cnblogs.com/dream397/p/14695038.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!