de13d2ac5d
* Public C++ header files (source/include/rocprofiler-sdk/cxx)
* Update samples/api_buffered_tracing
- scratch memory and page migration
- README
* Update samples/api_buffered_tracing
- page migration component in sample
* Update tests/page-migration/validate.py
- fix checks for page migration operation names
* Update tests/page-migration/validate.py
- fix get_allocated_pages
* Update scratch memory and page migration validations
* Fix include/rocprofiler-sdk/cxx installation
* Rework include/rocprofiler-sdk/cxx
- Improve name_info to support const char*, string_view, string
* Update samples/api_{buffered,callback}_tracing
* External correlation ID request sample
- includes correlation ID retirement demo
* Update samples/api_buffered_tracing/README.md
* Update lib/rocprofiler-sdk/hsa/queue.cpp
- generate correlation ID for kernel launch if one doesn't exist
* Remove priority check from tool libraries (samples/tests)
- if(priority > 0) return nullptr check in rocprofiler_configure has proliferated beyond its intended use
* Apply suggestions from code review
External Correlation ID Request Sample
Services
- Code object callback tracing for mapping kernel IDs to kernel names
- HIP Runtime API:
- hipLaunchKernel
- hipMemcpyAsync
- hipMemsetAsync
- hipMalloc
- Kernel dispatch
- Memory Copy
- External correlation ID request:
- Kernel dispatch
- Memory copy
- Correlation ID retirement
Properties
- Subscribes to an external correlation ID request for all kernel dispatches and async memory copies
- Generates an external correlation ID containing all the arguments passed to the request callback
- Demonstrates that all external correlation IDs which are requested are passed back to tool in buffer callbacks
- Demonstrates that all internal correlation IDs which are provided as an input argument to request are retired
- Buffer size of 4096 bytes which is automatically flushed once >= 87.5% of buffer is filled (3584 bytes)