Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [linuxtools-dev] OProfile error in "timer interrupt" mode

Hello again,

I have made progress and have found a work-around for the problem I have. From my limited understanding of the situation, I think there might be an inter-operation bug between the plug-in and oprofile. For those that are able to use oprofile in the NMI mode, the problem would not happen, until they try to use the "timer interrupt" mode.

Here is what happens:

1) start with a fresh install of eclipse with oprofile plug-in and oprofile
2) start eclipse and run a profiling run (I used the factorial program from the plug-in tutorial.) with default settings (it will try to use the oprofile NMI mode, by default - at least on my VM, which in my case means that no data will result from the run).

Here are the commands sent from the eclipse plug-in to opcontrol, up-to this point:

Wed Jun 23 08:26:12 EDT 2010 : opcontrol --init
Wed Jun 23 08:27:11 EDT 2010 : opcontrol --shutdown
Wed Jun 23 08:27:11 EDT 2010 : opcontrol --reset
Wed Jun 23 08:27:11 EDT 2010 : opcontrol --setup --separate=none --no-vmlinux --image=/home/toside/workspace/factorial/Debug/factorial --callgraph=0 --event=default
Wed Jun 23 08:27:12 EDT 2010 : opcontrol --start
Wed Jun 23 08:27:27 EDT 2010 : opcontrol --dump
Wed Jun 23 08:27:28 EDT 2010 : opcontrol --shutdown

It seems that the inclusion of the command "opcontrol --setup ... --event=default" causes the default event for my platform to be saved to /root/.oprofile/daemonrc, and re-used by oprofile for all future profiling runs:

SESSION_DIR=/var/lib/oprofile
CHOSEN_EVENTS_0=CPU_CLK_UNHALTED:100000:0:1:1
NR_CHOSEN=1
SEPARATE_LIB=0
SEPARATE_KERNEL=0
SEPARATE_THREAD=0
SEPARATE_CPU=0
VMLINUX=none
IMAGE_FILTER=/home/toside/workspace/factorial/Debug/factorial
CPU_BUF_SIZE=0
CALLGRAPH=0
XENIMAGE=none

Now, if I switch to the oprofile "timer interrupt" mode, it seems to work:
"sudo opcontrol --deinit"
"sudo modprobe oprofile timer=1"

running "dmesg", I see:
"oprofile: using timer interrupt."

But I think that opcontrol is still using the event(s) saved in /root/.oprofile/daemonrc , which causes problems since this option is not compatible with "timer interrupt" mode. I am now stuck: almost all opcontrol options result in this error message (no mater if run from eclipse or command-line):

"You cannot specify any performance counter events
because OProfile is in timer mode."

If I delete the /root/.oprofile/daemonrc file, opcontrol starts to work correctly again, and I can get profiling data in eclipse. That's my work-around.

--------------------------------------------

I am not sure what the best way to officially fix this would be? Maybe an option in opcontrol to clear the saved event(s) info, that the plugin could use? Or maybe opcontrol could ignore the event(s) info from the daemon file if run in "timer interrupt" mode? Any ideas? Comments?

Thanks,

Marc



On 10-06-22 09:12 AM, Marc Dumais wrote:
On 10-06-22 08:50 AM, William Cohen wrote:
I don't have much experience with the oprofile plug-in. Is there some way of listing out the commands that the plug-in is sending to OProfile?

Are you able to run OProfile without the plug-in from the command line?
Also did an earlier version of oprofile/eclipse-plugin work in the same environment?

-Will


Hello William,

Yes, I think I can get the commands sent to opcontrol.    Indeed, it
works when I use oprofile manually, from the command line.

I have not yet tried earlier versions of the plug-in or of oprofile.
IIRC from my readings, the plug-in was tested with slightly older
versions of oprofile (0.9.3 - 0.9.4).   So I'll probably try one of those.

Thanks for the ideas!   I will report back with my findings.

Marc

_______________________________________________
linuxtools-dev mailing list
linuxtools-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/linuxtools-dev



--

"A person with ubuntu is open and available to others, affirming of others, does not feel threatened that others are able and good, for he or she has a proper self-assurance that comes from knowing that he or she belongs in a greater whole and is diminished when others are humiliated or diminished, when others are tortured or oppressed."
~ Archbishop Desmond Tutu



Back to the top