OProfile的无法获得性能数据 [英] OPROFILE can't get performance data

查看:140
本文介绍了OProfile的无法获得性能数据的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我使用的OProfile收集一些性能数据。
但我在troubule了。

这里是我的shell:

 〜#RM -f /root/.oprofile/daemonrc
〜#opcontrol --no --setup,vmlinux的
〜#opcontrol --init
〜#opcontrol --reset
〜#opcontrol --start
〜#opcontrol --status守护程序运行:PID 14909
不同的选项:无
vmlinux的文件:无
图像过滤器:无
调用图深度:0〜#opcontrol --shutdown停止剖析。
杀守护进程。〜#Ø$ P $支持度没有发现样本文件:错误轮廓规范过于严格?〜#树的/ var / lib中/ oprofile中/在/ var / lib中/ oprofile中/
├──ABI
├──complete_dump
├──jitdump
├──opd_pipe
└──样本
    ├──电流
    │└──统计
    │├──bt_lost_no_mapping
    │├──CPU0
    ││├──backtrace_aborted
    ││├──sample_invalid_eip
    ││├──sample_lost_overflow
    ││└──sample_received
    │├──event_lost_overflow
    │├──multiplex_counter
    │├──sample_lost_no_mapping
    │└──sample_lost_no_mm
    └──oprofiled.log
5目录,13个文件〜#dmesg的| grep的oprofile的oprofile的:使用NMI中断。
〜#-a的unameLinux的的localhost.localdomain 2.6.32-220.4.2.el6.x86_64#1 SMP星期二2月14日四点00分16秒GMT 2012 x86_64的x86_64的x86_64的GNU / Linux的〜#猫的/ proc内/ cpuinfo处理器:0
VENDOR_ID:GenuineIntel
CPU系列:6
型号:44
型号名称:英特尔(R)至强(R)CPU E5620 @ 2.40GHz的
步进:2
CPU兆赫:2400.085
高速缓存大小:12288 KB
FPU:是
fpu_exception:是
CPUID等级:11
WP:是
标志:FPU VME德PSE TSC MSR,PAE MCE CX8 APIC MTRR PGE MCA CMOV拍拍PSE36 CLFLUSH DTS ACPI MMX FXSR SSE SSE2 SS系统调用NX rdtscp流明constant_tsc了arch_perfmon PEBS BTS xtopology tsc_reliable nonstop_tsc aperfmperf unfair_spinlock PNI pclmulqdq SSSE3 CX16 sse4_1 sse4_2 POPCNT AES管理程序lahf_lm IDA ARAT EPB DTS
bogomips:4800.17
CLFLUSH尺寸:64
cache_alignment:64
地址尺寸:40位物理,48位虚拟
能源管理:


解决方案

某些CPU类型不提供所需的硬件支持使用硬件性能计数器。
在这些机器上,OProfile的回退到使用定时器中断的剖析,回使用实时时钟中断收集样品。

您可以通过使用定时器= 1模块parameter.If OProfile的是建成一个内核模块强制使用定时器中断,那么你必须通过定时器= 1'与modprobe命令的参数。执行opcontrol --init之前执行此操作或编辑modprobe的的opcontrol命令的调用传递定时器= 1'的参数

modprobe的oprofile的定时器= 1

然后继续你的分析过程

I am using OPROFILE to collect some performance data. but I got in troubule.

Here is my shell:

~ # rm -f /root/.oprofile/daemonrc
~ # opcontrol --setup --no-vmlinux
~ # opcontrol --init
~ # opcontrol --reset
~ # opcontrol --start
~ # opcontrol --status

Daemon running: pid 14909    
Separate options: none
vmlinux file: none    
Image filter: none    
Call-graph depth: 0

~ # opcontrol --shutdown

Stopping profiling.
Killing daemon.

~ # opreport

error: no sample files found: profile specification too strict?

~ # tree /var/lib/oprofile/

/var/lib/oprofile/
├── abi
├── complete_dump
├── jitdump
├── opd_pipe
└── samples
    ├── current
    │   └── stats
    │       ├── bt_lost_no_mapping
    │       ├── cpu0
    │       │   ├── backtrace_aborted
    │       │   ├── sample_invalid_eip
    │       │   ├── sample_lost_overflow
    │       │   └── sample_received
    │       ├── event_lost_overflow
    │       ├── multiplex_counter
    │       ├── sample_lost_no_mapping
    │       └── sample_lost_no_mm
    └── oprofiled.log


5 directories, 13 files

~ # dmesg |grep oprofile

oprofile: using NMI interrupt.


~ # uname -a

Linux localhost.localdomain 2.6.32-220.4.2.el6.x86_64 #1 SMP Tue Feb 14 04:00:16 GMT 2012 x86_64 x86_64 x86_64 GNU/Linux

~ # cat /proc/cpuinfo 

processor   : 0    
vendor_id   : GenuineIntel   
cpu family  : 6    
model       : 44    
model name  : Intel(R) Xeon(R) CPU           E5620  @ 2.40GHz   
stepping    : 2    
cpu MHz     : 2400.085   
cache size  : 12288 KB   
fpu     : yes    
fpu_exception   : yes    
cpuid level : 11    
wp      : yes   
flags       : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss syscall nx rdtscp lm constant_tsc up arch_perfmon pebs bts xtopology tsc_reliable nonstop_tsc aperfmperf unfair_spinlock pni pclmulqdq ssse3 cx16 sse4_1 sse4_2 popcnt aes hypervisor lahf_lm ida arat epb dts    
bogomips    : 4800.17    
clflush size    : 64   
cache_alignment : 64   
address sizes   : 40 bits physical, 48 bits virtual   
power management:

解决方案

Some CPU types do not provide the needed hardware support to use the hardware performance counters. On these machines, OProfile falls back to using the timer interrupt for profiling, back to using the real-time clock interrupt to collect samples.

you can force use of the timer interrupt by using the timer=1 module parameter.If OProfile was built as a kernel module, then you must pass the 'timer=1' parameter with the modprobe command. Do this before executing 'opcontrol --init' or edit the opcontrol command's invocation of modprobe to pass the 'timer=1' parameter

modprobe oprofile timer=1

Then continue your profiling procedure

这篇关于OProfile的无法获得性能数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆