gpu: nvgpu: Add a generic profiler

Add a generic profiler based on the channel kickoff profiler. This
aims to provide a mechanism to allow engineers to (more) easily profile
arbitrary software paths within nvgpu.

Usage of this profiler is still primarily through debugfs. Next up is
a generic debugfs interface for this profiler in the Linux code.

The end goal for this is to profile the recovery code and generate
interesting statistics.

JIRA NVGPU-5606

Signed-off-by: Alex Waterman <alexw@nvidia.com>
Change-Id: I99783ec7e5143855845bde4e98760ff43350456d
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2355319
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
This commit is contained in:
Alex Waterman
2020-06-01 19:56:37 -05:00
parent 59eb714c48
commit 70ce67df2d
18 changed files with 579 additions and 292 deletions

View File

@@ -357,8 +357,7 @@ fifo:
common/fifo/priv_cmdbuf.c,
common/fifo/job.c,
include/nvgpu/priv_cmdbuf.h,
include/nvgpu/job.h,
include/nvgpu/profile.h ]
include/nvgpu/job.h ]
deps: [ ]
runlist:
safe: yes
@@ -993,6 +992,13 @@ power_features:
sources: [ common/power_features/pg/pg.c,
include/nvgpu/power_features/pg.h ]
swdebug:
owner: Alex W
safe: no
sources: [ common/swdebug/profile.c,
include/nvgpu/swprofile.h,
include/nvgpu/fifo/swprofile.h ]
##
## HAL units. Currently they are under common but this needs to change.
## We are moving these to a top level directory.