Skip to content

alpha: Implement Hardware Performance Events

Michael Cree linux-alpha lkml 1 version In review

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 Latest3 patches 2 repliesIn review

Patches in v1 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/3alpha: Add performance monitor interrupt counter.arch/alpha/include/asm/hw_irq.h arch/alpha/kernel/irq.c+6 -20 replies
2/3alpha: Add wrperfmon.h header file to aid use of wrperfmon PALcall.arch/alpha/include/asm/wrperfmon.h+93 -00 replies
3/3alpha: Implement HW performance events on the EV67 and later CPUs.arch/alpha/include/asm/perf_event.h arch/alpha/kernel/Makefile arch/alpha/kernel/irq_alpha.c +1 more+847 -15 replies
3/3alpha: Implement HW performance events on the EV67 and later CPUs.+0 -00 replies

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.

Read the v1 thread

Cover letter [PATCH 0/3] alpha: Implement Hardware Performance Events

The following patches implement hardware performance events for the Alpha EV67 and later CPUs. I have had this running on a Compaq XP1000 (EV67, single CPU) for a few days now. Pretty cool -- discovered that the glibc exp2() library routine uses on average 985 cycles to execute 777 CPU instructions whereas Compaq's CPML library version of exp2() uses on average 32 cycles to execute 47 CPU instructions to achieve the same thing!

Michael Cree (3):
alpha: Add performance monitor interrupt counter.
alpha: Add wrperfmon.h header file to aid use of wrperfmon PALcall.
alpha: Implement HW performance events on the EV67 and later CPUs.

 arch/alpha/include/asm/hw_irq.h     |    1 +
 arch/alpha/include/asm/perf_event.h |    8 +-
 arch/alpha/include/asm/wrperfmon.h  |   93 ++++
 arch/alpha/kernel/Makefile          |    1 +
 arch/alpha/kernel/irq.c             |    7 +-
 arch/alpha/kernel/irq_alpha.c       |    3 +
 arch/alpha/kernel/perf_event.c      |  836 +++++++++++++++++++++++++++++++++++
 7 files changed, 946 insertions(+), 3 deletions(-)
 create mode 100644 arch/alpha/include/asm/wrperfmon.h
 create mode 100644 arch/alpha/kernel/perf_event.c