I hope i understood your situation.From the log your showed
in previous mail, your are successfully updated the oprofile
Coming to profiling of applications, you need do it as below
rm -rf /var/lib/oprofile/
rm -rf /root/.oprofile
opcontrol --start --image=<application name>
gcc -g <applicationname> -o <binary application name>
ex: gcc -g array.c -o array
array is sample application which is simply doing some multiplication etc.
you can use any application that will put load over CPU so that i can use
H/W counter to count the samples.
Light Load application will not generate Events and CPU can't use much
of it's time to it and hence samples might not be generated.
Hai, thanks very much for your attention, sir.I indeed have used the oprofile 0.9.7 and even 0.9.8. Since the oprofile version is update to 0.9.6 via the apt-get install, I compiled the oprofile 0.9.7 and 0.9.8 from the source files. But the results were the same, reported no samples.The opcontrol commands ware executed manually from a ssh shell.Timer mode should work fine. If you want to use the PMU, you need to check
that perf is enabled in your kernel (CONFIG_HW_PERF_EVENTS=y) and that your
interrupts are being registered correctly; either via device tree or as a
platform deviceI have not tested in the timer mode and I will try it right now. I check the CONFIG_HW_PERF_EVENTS in the .config, it is set 'y', but I am not sure the interrupts are registered correctly or not, maybe it casues the problem.3. I download the oprofile 0.9.7 source file and compiled on the board, then profile with it, the results ware the same with the oprofile 0.9.6.> ./autogen.sh> ./configure> # to configure with kernel 3.3 header, run: ln -sf generated/autoconf.h linux/autoconf.sh> make> make install4. so does the oprofile 0.9.8 version compiled from source.On Fri, Apr 26, 2013 at 11:14 AM, RocChen <firstname.lastname@example.org> wrote:
Hello, every one:I am a newer to the oprofile and I met some problems with the oprofile.I was profiling some applications on the Zynq board (with a dual core Cortex-A9 integratd, Linux kernel 3.3, linaro 12.01 file system).1. First, I installed the oproile with apt-get, the oprofile version was 0.9.6.I ran the following command lists;> opcontrol --init> opcontrol --setup --event=CPU_CYCLES:1000 --separate=all --no-vmlinux> opcontrol --start-daemon> opcontrol --start> // here my program, namely the jpg2000dec, jpg2000enc, mpeg2dec...I think my applications ran long enough at the rate CPU_CYCLES:1000, so it might give at leaset few hundred samples)> opcontrol --stop> opcontrol --dump> opreportThe opreport reported that no sample had been got.2. Then I deleted all in /var/lib/oprofile and the /root/.oprofile/*, reboot the machine, rerun commands above.The opreport for all applications :CPU: ARM Cortex-A9, speed 1998 MHz (estimated)Counted CPU_CYCLES events (Number of CPU cycles) with a unit mask of 0x00 (No unit mask) count 1000samples % image name symbol name10000 100.000 no-vmlinux /no-vmlinuxbut no sample for functions in the applications.***************************************************=====>:3. I download the oprofile 0.9.7 source file and compiled on the board, then profile with it, the results ware the same with the oprofile0.9.6.> ./autogen.sh> ./configure> # to configure with kernel 3.3 header, run: ln -sf generated/autoconf.h linux/autoconf.sh> make> make install4. so does the oprofile 0.9.8 version compiled from source.BTW, if I run: dmesg | grep oprofile, it gives:oprofile: using arm/armv7-ca9****************************************So I am wondering whether I was running something wrong setups or the oprofile is now not supportting the kernel 3.3 version ?Hope I have describled the situation clearly.Any replies are appreciated~~