Perf events for GPU drivers

Registered by Jesse Barker

As perf supports system-wide events (soon), it would be really useful to have the kernel device drivers for GPUs generate perf events to improve profiling.

Blueprint information

Jesse Barker
Chunsang Jeong
Chunsang Jeong
Series goal:
Accepted for 2011.11
Milestone target:
milestone icon backlog
Started by
Chunsang Jeong
Completed by
Chunsang Jeong

Related branches



[ChunsangJeong Jun 07 2011]
Here is a link for ARM's PAT(Performance Analysis Tool) which uses the gathered data on Mali instrumented mode.

[ChunsangJeong Jun 12 2011]
Mali provides multi PP profiling but needs to measure several times for each PPs becaus of the HW counter limitation.
Paolo Stanisci from ARM said, "We currently provide support for multi-PP profiling but still under the same constraint of only having 2 HW counters available from the Mali HW, e.g.: jobs run multiple times in a serialised fashion to handle the reading of more than the 2 counters."

[ChunsangJeong Jun 28 2011]
Mali provides performance counter and performance count source in the each of GP and PP job structures, which gather the hit number of the counter from the hardware count register, meanwhile source id defined by user space (Information by studying Mali kernel drifver)

[ChunsangJeong Nov 15 2011]
"Coordinate with landing teams to make sure this is viable across platforms" would be complished after integrating perf events to LAVA.

Work items (11.06):
List up what Mali device kernel support for instrumented mode: DONE
Tracing the Mali driver source which manages the result of h/w counter: DONE
Check multi-core support of Mali instrumented with PAT: DONE

Work Items:
Consolidate Mali driver on Origen board: DONE
Add PMU struct definition to Mali device driver to hook into perf: DONE
Investigate multi-core support for GPU instrumentation and utilization modes: DONE
Investigate necessary modifications to perf user-space tool: DONE


Work Items

Dependency tree

* Blueprints in grey have been implemented.

This blueprint contains Public information 
Everyone can see this information.


No subscribers.