Re: opcontrol does not create results
William Cohen <[email protected]>
| Newsgroups | gmane.linux.oprofile |
|---|---|
| Message-ID | <[email protected]> |
On 03/27/2015 11:37 AM, Lentes, Bernd wrote: > Michael wrote: > > >> [.....] >>> Hi Michael, >>> >>> thanks for your help and patience. I think we are coming closer to the >> solution. I found the debuginfo kernel. >>> But now I have another problem: >>> >>> I followed your guidance. But when I issue an "opcontrol --start", I get >> the following message: >>> >>> idcc-devel:~ # opcontrol --start >>> Using default event: CPU_CLK_UNHALTED:100000:0:1:1 Using 2.6+ >> OProfile >>> kernel interface. >>> Reading module info. >>> Using log file /var/lib/oprofile/oprofiled.log Daemon started. >>> Profiler running. >>> idcc-devel:~ # > > This happened again (Using default event: CPU_CLK_UNHALTED:100000:0:1:1 Using 2.6+) sometimes. Sometimes the modul couldn't be unloaded, i had to invoke opcontrol --deinit twice. > But I had some successful runs. > > ... > >> >>> Here is my configuration: >>> >>> idcc-devel:~ # opcontrol --status >>> Daemon not running >>> Separate options: library kernel >>> vmlinux file: /usr/lib/debug/boot/vmlinux-2.6.16.60-0.103.1- >> smp.debug >> this looks like a correct vmlinux file ---^^ >> > > I used the above mentioned vmlinux. > Here is an excerpt of my results: > > CPU: CPU with timer interrupt, speed 0 MHz (estimated) > Profiling through timer interrupt > > vma samples % image name app name symbol name > ffffffff80109d41 29372 39.0809 vmlinux-2.6.16.60-0.103.1-smp.debug vmlinux-2.6.16.60-0.103.1-smp.debug default_idle > ffffffff8013a83b 5811 7.7318 vmlinux-2.6.16.60-0.103.1-smp.debug transact __do_softirq > ffffffff8013a83b 4325 5.7546 vmlinux-2.6.16.60-0.103.1-smp.debug vmlinux-2.6.16.60-0.103.1-smp.debug __do_softirq > ffffffff8013a83b 4140 5.5085 vmlinux-2.6.16.60-0.103.1-smp.debug update-status __do_softirq > ffffffff8013a83b 3206 4.2657 vmlinux-2.6.16.60-0.103.1-smp.debug mono __do_softirq > 0000000000000000 2160 2.8740 libsqlite3.so.0.8.6 transact (no symbols) > 0000000000000000 2013 2.6784 libsqlite3.so.0.8.6 resolve-dependencies (no symbols) > ffffffff8013a83b 1436 1.9107 vmlinux-2.6.16.60-0.103.1-smp.debug sshd __do_softirq > 0000000000000000 1302 1.7324 libsqlite3.so.0.8.6 update-status (no symbols) > ffffffff8013a83b 1214 1.6153 vmlinux-2.6.16.60-0.103.1-smp.debug parse-metadata __do_softirq > 0000000000000000 796 1.0591 libstdc++.so.6.0.8 transact (no symbols) > 0000000000000000 751 0.9992 mono mono (no symbols) > > This looks pretty better. OK. I see that the function __do_softirq is invoked often. What means "app name" in the output ? Is that the part of software which invoked the function __do_softirq ? > So in the first line the function is called by the kerbel itself ? And in the second by transact ? > But I like to know which softirq is called. I bought the book "Understand the Linux kernel" from O'Reilly. It's great. > It said " The _ _do_softirq( ) function reads the softirq bit mask of the local CPU and executes the deferrable functions corresponding to every set bit." Here is the distinction which softirq function is run. There are six. I'd like to know WHICH softirq is executed. Is there any possibility to find out ? Hi Bernd, So the code is spending time in __do_softirq? lxr shows the code for 2.6.6.60 in the following URL: http://lxr.linux.no/#linux+v2.6.16.60/kernel/softirq.c#L74 And it appears to be used here: http://lxr.linux.no/#linux+v2.6.16.60/arch/i386/kernel/irq.c#L189 http://lxr.linux.no/#linux+v2.6.16.60/kernel/softirq.c#L126 You might take a look at http://people.redhat.com/wcohen/Fedora12OprofileTutorial.txt and use the following to get a better idea what it is doing in __do_softirq: opreport --include-symbols=__do_softirq --details Maybe use the opannotate to see what lines of code in __do_softirq are getting the samples. -Will ------------------------------------------------------------------------------ Dive into the World of Parallel Programming The Go Parallel Website, sponsored by Intel and developed in partnership with Slashdot Media, is your hub for all things parallel software development, from weekly thought leadership blogs to news, videos, case studies, tutorials and more. Take a look and join the conversation now. http://goparallel.sourceforge.net/