On 13/05/2024 11:22, Jacek Lawrynowicz wrote:
Hi,
On 10.05.2024 18:55, Jeffrey Hugo wrote:
On 5/8/2024 7:29 AM, Jacek Lawrynowicz wrote:
From: Tomasz Rusinowicz <tomasz.rusinowicz@xxxxxxxxx>
The driver tracks the time spent by NPU executing jobs
and shares it through sysfs `npu_busy_time_us` file.
It can be then used by user space applications to monitor device
utilization.
NPU is considered 'busy' starting with a first job submitted
to firmware and ending when there is no more jobs pending/executing.
Signed-off-by: Tomasz Rusinowicz <tomasz.rusinowicz@xxxxxxxxx>
Signed-off-by: Jacek Lawrynowicz <jacek.lawrynowicz@xxxxxxxxxxxxxxx>
This feels like something that would normally be handled by perf. Why not use that mechanism?
Yeah, probably but we had several request to provide easy to use interface for this metric that
could be integrated in various user space apps/tools that do not use ftrace.
Probably more Perf/PMU aka performance counters? Which would be
scriptable via $kernel/tools/perf or directly via perf_event_open(2) and
read(2).
Note it is not easy to get right and in the i915 implementation (see
i915_pmu.c) we have a known issue with PCI hot unplug and use after free
which needs input from perf core folks.
Regards,
Tvrtko