Use PAPI in BeagleBorad
Hi, Guys,
I am having a problem
in using PAPI in BeagleBoard based on Linux kernel 3.4.0-rc3.
First, I am able to sucessfully comiple the PAPI source codes by first commanding ./config and then make
but when I run the ./ctests/multiplex2, except the PAPI_TOT_CYC, most of the returned value are all zero (Result 1).
Instead, when I repeat the same processes under Linux kernel 3.3.0-rc7, the results are perfect (Result 2).
What could be the reason? Is that because the Linux kernel 3.4.0-rc3 is lack of the performance monitor counter support.
Is there any tool or command that I can use to check if the linux kernel have support for the performance monitor counters?
Thanks a lot!
Result 1: under Linux kernel 3.4.0-rc3.
./ctests/multiplex2: Does PAPI_multiplex_init() handle lots of events?
Using 1000000 iterations
Filling the event set with as many non-derived events as we can...
Added PAPI_L1_DCM
Added PAPI_L1_ICM
Added PAPI_L2_TCM
Added PAPI_TLB_DM
Added PAPI_TLB_IM
Added PAPI_STL_ICY
Added PAPI_BR_TKN
Added PAPI_BR_MSP
Added PAPI_TOT_INS
Added PAPI_LD_INS
Added PAPI_SR_INS
Added PAPI_BR_INS
Added PAPI_TOT_CYC
Added PAPI_L1_DCA
Added PAPI_L1_ICA
Added PAPI_L2_TCA
Event Counts:
PAPI_L1_DCM 0
PAPI_L1_ICM 0
PAPI_L2_TCM 0
PAPI_TLB_DM 0
PAPI_TLB_IM 0
PAPI_STL_ICY 0
PAPI_BR_TKN 0
PAPI_BR_MSP 0
PAPI_TOT_INS 0
PAPI_LD_INS 0
PAPI_SR_INS 0
PAPI_BR_INS 0
PAPI_TOT_CYC 1950636665
PAPI_L1_DCA 0
PAPI_L1_ICA 0
PAPI_L2_TCA 0
Caution: 15 counters had zero values
Caution: 14 counter pair(s) had identical values
multiplex2.c PASSED
Result 1: under Linux kernel 3.3.0-rc7.
Running ctests/multiplex2:./ctests/multiplex2: Does PAPI_multiplex_init() handle lo?
Using 1000000 iterations
Filling the event set with as many non-derived events as we can...
Added PAPI_L1_DCM
Added PAPI_L1_ICM
Added PAPI_L2_TCM
Added PAPI_TLB_DM
Added PAPI_TLB_IM
Added PAPI_STL_ICY
Added PAPI_BR_TKN
Added PAPI_BR_MSP
Added PAPI_TOT_INS
Added PAPI_LD_INS
Added PAPI_SR_INS
Added PAPI_BR_INS
Added PAPI_TOT_CYC
Added PAPI_L1_DCA
Added PAPI_L1_ICA
Added PAPI_L2_TCA
Event Counts:
PAPI_L1_DCM 64151
PAPI_L1_ICM 159362
PAPI_L2_TCM 1883
PAPI_TLB_DM 1835
PAPI_TLB_IM 8
PAPI_STL_ICY 42987476
PAPI_BR_TKN 221854641
PAPI_BR_MSP 91776
PAPI_TOT_INS 2186773029
PAPI_LD_INS 203921167
PAPI_SR_INS 101849208
PAPI_BR_INS 218947812
PAPI_TOT_CYC 1946058572
PAPI_L1_DCA 387448691
PAPI_L1_ICA 1228403974
PAPI_L2_TCA 220495
multiplex2.c PASSED
I am having a problem
First, I am able to sucessfully comiple the PAPI source codes by first commanding ./config and then make
but when I run the ./ctests/multiplex2, except the PAPI_TOT_CYC, most of the returned value are all zero (Result 1).
Instead, when I repeat the same processes under Linux kernel 3.3.0-rc7, the results are perfect (Result 2).
What could be the reason? Is that because the Linux kernel 3.4.0-rc3 is lack of the performance monitor counter support.
Is there any tool or command that I can use to check if the linux kernel have support for the performance monitor counters?
Thanks a lot!
Result 1: under Linux kernel 3.4.0-rc3.
./ctests/multiplex2: Does PAPI_multiplex_init() handle lots of events?
Using 1000000 iterations
Filling the event set with as many non-derived events as we can...
Added PAPI_L1_DCM
Added PAPI_L1_ICM
Added PAPI_L2_TCM
Added PAPI_TLB_DM
Added PAPI_TLB_IM
Added PAPI_STL_ICY
Added PAPI_BR_TKN
Added PAPI_BR_MSP
Added PAPI_TOT_INS
Added PAPI_LD_INS
Added PAPI_SR_INS
Added PAPI_BR_INS
Added PAPI_TOT_CYC
Added PAPI_L1_DCA
Added PAPI_L1_ICA
Added PAPI_L2_TCA
Event Counts:
PAPI_L1_DCM 0
PAPI_L1_ICM 0
PAPI_L2_TCM 0
PAPI_TLB_DM 0
PAPI_TLB_IM 0
PAPI_STL_ICY 0
PAPI_BR_TKN 0
PAPI_BR_MSP 0
PAPI_TOT_INS 0
PAPI_LD_INS 0
PAPI_SR_INS 0
PAPI_BR_INS 0
PAPI_TOT_CYC 1950636665
PAPI_L1_DCA 0
PAPI_L1_ICA 0
PAPI_L2_TCA 0
Caution: 15 counters had zero values
Caution: 14 counter pair(s) had identical values
multiplex2.c PASSED
Result 1: under Linux kernel 3.3.0-rc7.
Running ctests/multiplex2:./ctests/multiplex2: Does PAPI_multiplex_init() handle lo?
Using 1000000 iterations
Filling the event set with as many non-derived events as we can...
Added PAPI_L1_DCM
Added PAPI_L1_ICM
Added PAPI_L2_TCM
Added PAPI_TLB_DM
Added PAPI_TLB_IM
Added PAPI_STL_ICY
Added PAPI_BR_TKN
Added PAPI_BR_MSP
Added PAPI_TOT_INS
Added PAPI_LD_INS
Added PAPI_SR_INS
Added PAPI_BR_INS
Added PAPI_TOT_CYC
Added PAPI_L1_DCA
Added PAPI_L1_ICA
Added PAPI_L2_TCA
Event Counts:
PAPI_L1_DCM 64151
PAPI_L1_ICM 159362
PAPI_L2_TCM 1883
PAPI_TLB_DM 1835
PAPI_TLB_IM 8
PAPI_STL_ICY 42987476
PAPI_BR_TKN 221854641
PAPI_BR_MSP 91776
PAPI_TOT_INS 2186773029
PAPI_LD_INS 203921167
PAPI_SR_INS 101849208
PAPI_BR_INS 218947812
PAPI_TOT_CYC 1946058572
PAPI_L1_DCA 387448691
PAPI_L1_ICA 1228403974
PAPI_L2_TCA 220495
multiplex2.c PASSED