Support different HSA table sizes (#44)

* Support different HSA table sizes

- Use hsa-runtime64_VERSION to define pp defs for major and minor version in version.h.in
- Update version.h.in to define ROCPROFILER_HSA_RUNTIME_VERSION_{MAJOR,MINOR}
- Use HSA_AMD_INTERFACE_VERSION_{MAJOR,MINOR} to handle hsa_amd_vmem_* support
- add template specializations for hsa_amd_vmem_* functions
- implement HSA version based static asserts

* Debug commit

- print pp value for ROCPROFILER_HSA_RUNTIME_VERSION and ROCPROFILER_HSA_RUNTIME_EXT_AMD_VERSION

* Debug commit

- fix ROCPROFILER_HSA_RUNTIME_VERSION value

* Remove debug edits

* Update lib/rocprofiler/hsa/utils.hpp

- support outputting:
  - hsa_amd_memory_pool_t
  - hsa_amd_vmem_alloc_handle_t
  - hsa_amd_memory_access_desc_t
  - hsa_amd_memory_pool_t

* Update lib/rocprofiler/hsa/utils.hpp

- tweak to join_impl

* Update lib/rocprofiler/hsa/utils.hpp

- use formatting when possible

* Update lib/rocprofiler/hsa/types.hpp

- Support API_TABLE_MAJOR_VERSIONS > 1

* Update lib/rocprofiler/hsa/types.hpp

- remove inherit from undefined template specialization

* Update lib/rocprofiler/hsa/utils.hpp

- remove duplicate formatter specialization

* Update include/rocprofiler/hsa/api_args.h

- remove const from non-pointer anonymous structs in union

* Use HSA_AMD_EXT_API_TABLE_MAJOR_VERSION
This commit is contained in:
Jonathan R. Madsen authored and GitHub committed 2023-09-13 13:14:28 -05:00
1 parent 729c34fb60
commit c0cb907fee
8 file changed
+425 -34

No files matched your search

+2
View File
@@ -62,3 +62,5 @@
# define ROCPROFILER_FOLD_EXPRESSION(...) ((__VA_ARGS__), ...)
# endif
#endif
#define ROCPROFILER_COMPUTE_VERSION(MAJOR, MINOR, PATCH) ((10000 * MAJOR) + (100 * MINOR) + (PATCH))