Readme for Ubuntu ARM64
Install the latest perf binary*$# sudo apt-get install linux-tools-3.19.0-23
The latest version availabe can be installed.
Now use the perf tool installed in /usr/lib/linux-tools-3.19.0-23/perf$# /usr/lib/linux-tools-3.19.0-23/perf stat -e L1-dcache-stores ls -l
The LLC, MN and DDR are added as RAW events.
The RAW event encoding format is as below<die ID(4 bit)><Module ID(4 bit)><Bank(4 bit)><event code(12 bit)>
Example: For LLC_READ_ALLOCATE event for TotemC will be 0x24f300, where 0x2 is DieID for TotemC, 0x4 is the ModuleID of LLC, 0xf is for all LLC banks, 0x300is the event code for LLC_READ_ALLOCATE
The Module ID’s are as below
The DieID for the CPU Die are as below
The 22 LLC events are added as RAW events starting from 0x300 to 0x315
The 9 MN event codes and also the DDRC read, write and latecy counters, event codes are listed below
|
|
|
|
|
|
Known Issues:
As Hisilicon hardware counters are not CPU core specific, the counter values maynot be accurate. To get more accurate count. please append the option “-C 0 -A” in perf stat command.
$# perf stat -C 0 -A -e r24f303 -e r24f300 ls -lAs the counter registers in Hisiilicon are config and accessed via Djtag interface, it can affect the event counter readings as the access is not atomic.