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 device

I 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 install
4. so does the oprofile 0.9.8 version compiled from source.


On Fri, Apr 26, 2013 at 11:14 AM, RocChen <singleroc@gmail.com> 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
  > opreport

The 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 1000
samples  %        image name               symbol name
10000    100.000  no-vmlinux               /no-vmlinux

but 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 install
4. 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~~