GPUOpen-Tools / radeon_compute_profiler

The Radeon Compute Profiler (RCP) is a performance analysis tool that gathers data from the API run-time and GPU for OpenCLâ„¢ and ROCm/HSA applications. This information can be used by developers to discover bottlenecks in the application and to find ways to optimize the application's performance.
MIT License
84 stars 19 forks source link

[RFE] RCP manual profiler triggers / tracing instrumentation #3

Closed pszi1ard closed 6 years ago

pszi1ard commented 7 years ago

Is there a public API (and docs) on how to do manual instrumentation of kernels (e.g. for simple counters) Secondly, tracing instrumentation in host-code e.g. for markers in CPU-GPU tracing especially when there will be a GUI to work with?

More generally, a full, detailed documentation of RCP seems to be lacking -- this would ideally include all the above information.

chesik-amd commented 7 years ago

Hs pszi1ard,

We have GPUPerfAPI which is our library for collecting GPU performance counters (this library is used by RCP). Take a look here: https://github.com/GPUOpen-Tools/GPA

For instumenting/annotating host-code check out https://github.com/GPUOpen-Tools/common-src-AMDTActivityLogger. This library, header file and documentation is included in the RCP releases. You can use this library to annotate your host code -- any markers added by this library will appear in the CodeXL timeline UI when visualizing an .atp file produced by RCP.

For RCP documentation itself, the best place to look is the CodeXL documentation: https://github.com/GPUOpen-Tools/CodeXL/blob/master/CodeXL/Help/CodeXL%20User%20Guide/GPU%20Profiler.docx. We plan to provide proper documentation in RCP itself in a future release.

chesik-amd commented 6 years ago

Hi pszi1ard,

The RCP 5.3 release now includes proper documentation. The .zip and .tgz files included here https://github.com/GPUOpen-Tools/RCP/releases/tag/v5.3 have Sphinx-based documentation in the "docs" directory. Simply open the index.html in a web browser to view.

The documentation source is available here: https://github.com/GPUOpen-Tools/RCP/tree/master/docs.

Information on building the documentation from source code can be found here: https://github.com/GPUOpen-Tools/RCP/blob/master/BUILD.md#building-the-documentation.