Mesa (main): pps: Panfrost documentation
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Tue Jul 13 11:14:44 UTC 2021
Module: Mesa
Branch: main
Commit: 7eb7ed8cde6a5d982c56a0d05f2b085209148cfd
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=7eb7ed8cde6a5d982c56a0d05f2b085209148cfd
Author: Antonio Caggiano <antonio.caggiano at collabora.com>
Date: Thu May 6 13:20:01 2021 +0200
pps: Panfrost documentation
Add documentation for the Panfrost Perfetto datasource.
Signed-off-by: Antonio Caggiano <antonio.caggiano at collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10215>
---
docs/perfetto.rst | 45 ++++++++++++++++-----------------------------
1 file changed, 16 insertions(+), 29 deletions(-)
diff --git a/docs/perfetto.rst b/docs/perfetto.rst
index 947a492f869..588f739f4dc 100644
--- a/docs/perfetto.rst
+++ b/docs/perfetto.rst
@@ -31,14 +31,8 @@ The exact supported features vary per driver:
* - Driver
- PPS Counters
- Render Stages
- * - Freedreno
- - ``gpu.counters.msm``
- - ``gpu.renderstages.msm``
- * - Turnip
- - ``gpu.counters.msm``
- -
- * - Intel
- - ``gpu.counters.i915``
+ * - Panfrost
+ - gpu.counters.panfrost
-
Run
@@ -80,37 +74,30 @@ To capture a trace with perfetto you need to take the following steps:
Driver Specifics
~~~~~~~~~~~~~~~~
-Below is driver specific information/instructions for the PPS
-provider.
-
-Freedreno / Turnip
-^^^^^^^^^^^^^^^^^^
+Below is driver specific information/instructions for the PPS producer.
-The Freedreno PPS driver needs root access to read system-wide
-performance counters, so you can simply run it with sudo:
-
-.. code-block:: console
+Panfrost
+^^^^^^^^
- sudo ./build/src/tool/pps/pps-producer
+The Panfrost PPS driver uses unstable ioctls that behave correctly on
+kernel version `5.4.23+ <https://lwn.net/Articles/813601/>`__ and
+`5.5.7+ <https://lwn.net/Articles/813600/>`__.
-Intel
-^^^^^
+To run the producer, follow these two simple steps:
-The Intel PPS driver needs root access to read system-wide
-`RenderBasic <https://software.intel.com/content/www/us/en/develop/documentation/vtune-help/top/reference/gpu-metrics-reference.html>`__
-performance counters, so you can simply run it with sudo:
+1. Enable Panfrost unstable ioctls via kernel parameter:
-.. code-block:: console
+ .. code-block:: console
- sudo ./build/src/tool/pps/pps-producer
+ modprobe panfrost unstable_ioctls=1
-Another option to enable access wide data without root permissions would be running the following:
+ Alternatively you could add ``panfrost.unstable_ioctls=1`` to your kernel command line, or ``echo 1 > /sys/module/panfrost/parameters/unstable_ioctls``.
-.. code-block:: console
+2. Run the producer:
- sudo sysctl dev.i915.perf_stream_paranoid=0
+ .. code-block:: console
-Alternatively using the ``CAP_PERFMON`` permission on the binary should work too.
+ ./build/pps-producer
Troubleshooting
---------------
More information about the mesa-commit
mailing list