From acaf0d0aac98e42da886ec4489bd99db3dd11067 Mon Sep 17 00:00:00 2001 From: Evgeny Date: Fri, 10 Nov 2017 16:37:41 -0600 Subject: [PATCH] aqlprofil API: removing from HSA hsa_api_trace/hsa_ext_interface Change-Id: I12fac55ea9ccfdb119899bf9d000e3c8b0bf4bbb [ROCm/ROCR-Runtime commit: 6e1b9288f6271b21251ba5a1f87709a669c42f98] --- .../hsa-runtime/core/inc/hsa_api_trace_int.h | 1 - .../hsa-runtime/core/inc/hsa_ext_interface.h | 7 - .../core/runtime/amd_gpu_agent.cpp | 6 +- .../runtime/hsa-runtime/core/runtime/hsa.cpp | 39 +++-- .../core/runtime/hsa_api_trace.cpp | 17 +- .../core/runtime/hsa_ext_interface.cpp | 152 ------------------ .../hsa-runtime/core/runtime/runtime.cpp | 16 +- .../runtime/hsa-runtime/inc/hsa_api_trace.h | 25 --- .../hsa-runtime/inc/hsa_ven_amd_aqlprofile.h | 6 + 9 files changed, 45 insertions(+), 224 deletions(-) diff --git a/projects/rocr-runtime/runtime/hsa-runtime/core/inc/hsa_api_trace_int.h b/projects/rocr-runtime/runtime/hsa-runtime/core/inc/hsa_api_trace_int.h index 67acd50cd5..b41a81618b 100644 --- a/projects/rocr-runtime/runtime/hsa-runtime/core/inc/hsa_api_trace_int.h +++ b/projects/rocr-runtime/runtime/hsa-runtime/core/inc/hsa_api_trace_int.h @@ -58,7 +58,6 @@ namespace core { ::AmdExtTable amd_ext_api; ::FinalizerExtTable finalizer_api; ::ImageExtTable image_api; - ::AqlProfileExtTable aqlprofile_api; HsaApiTable(); void Init(); diff --git a/projects/rocr-runtime/runtime/hsa-runtime/core/inc/hsa_ext_interface.h b/projects/rocr-runtime/runtime/hsa-runtime/core/inc/hsa_ext_interface.h index b86d435e75..236a165c73 100644 --- a/projects/rocr-runtime/runtime/hsa-runtime/core/inc/hsa_ext_interface.h +++ b/projects/rocr-runtime/runtime/hsa-runtime/core/inc/hsa_ext_interface.h @@ -65,14 +65,10 @@ class ExtensionEntryPoints { // Table of function pointers for Hsa Extension Finalizer FinalizerExtTable finalizer_api; - // Table of function pointers for Hsa Extension AqlProfiler - AqlProfileExtTable aqlprofile_api; - ExtensionEntryPoints(); bool LoadFinalizer(std::string library_name); bool LoadImage(std::string library_name); - bool LoadAqlProfileApi(std::string library_name); void Unload(); private: @@ -87,9 +83,6 @@ class ExtensionEntryPoints { // Initialize table for HSA Image Extension Api's void InitImageExtTable(); - // Initialize table for HSA AqlProfile Extension Api's - void InitAqlProfileExtTable(); - // Initialize Amd Ext table for Api related to Images void InitAmdExtTable(); diff --git a/projects/rocr-runtime/runtime/hsa-runtime/core/runtime/amd_gpu_agent.cpp b/projects/rocr-runtime/runtime/hsa-runtime/core/runtime/amd_gpu_agent.cpp index b3dc729798..78bede5d23 100644 --- a/projects/rocr-runtime/runtime/hsa-runtime/core/runtime/amd_gpu_agent.cpp +++ b/projects/rocr-runtime/runtime/hsa-runtime/core/runtime/amd_gpu_agent.cpp @@ -59,8 +59,9 @@ #include "core/inc/interrupt_signal.h" #include "core/inc/isa.h" #include "core/inc/runtime.h" - +#include "core/util/os.h" #include "hsa_ext_image.h" +#include "inc/hsa_ven_amd_aqlprofile.h" // Size of scratch (private) segment pre-allocated per thread, in bytes. #define DEFAULT_SCRATCH_BYTES_PER_THREAD 2048 @@ -782,7 +783,8 @@ hsa_status_t GpuAgent::GetInfo(hsa_agent_info_t attribute, void* value) const { setFlag(HSA_EXTENSION_IMAGES); } - if (core::hsa_internal_api_table_.aqlprofile_api.hsa_ven_amd_aqlprofile_error_string_fn != NULL) { + if (os::LibHandle lib = os::LoadLib(kAqlProfileLib)) { + os::CloseLib(lib); setFlag(HSA_EXTENSION_AMD_AQLPROFILE); } diff --git a/projects/rocr-runtime/runtime/hsa-runtime/core/runtime/hsa.cpp b/projects/rocr-runtime/runtime/hsa-runtime/core/runtime/hsa.cpp index 2e2b50841c..e8ce17b188 100644 --- a/projects/rocr-runtime/runtime/hsa-runtime/core/runtime/hsa.cpp +++ b/projects/rocr-runtime/runtime/hsa-runtime/core/runtime/hsa.cpp @@ -53,6 +53,7 @@ #define __lseek__ _lseek #else #include +#include #define __read__ read #define __lseek__ lseek #endif // _WIN32 || _WIN64 @@ -466,19 +467,39 @@ hsa_status_t hsa_system_get_major_extension_table(uint16_t extension, uint16_t v } if (extension == HSA_EXTENSION_AMD_AQLPROFILE) { - if (version_major != - core::Runtime::runtime_singleton_->extensions_.aqlprofile_api.version.major_id) { + if (version_major != hsa_ven_amd_aqlprofile_VERSION_MAJOR) { return HSA_STATUS_ERROR; } + os::LibHandle lib = os::LoadLib(kAqlProfileLib); + if (lib == NULL) { + fprintf(stderr, "Loading '%s' error: %s\n", kAqlProfileLib, dlerror()); + return HSA_STATUS_ERROR; + } + dlerror(); // Clear any existing error + hsa_ven_amd_aqlprofile_1_00_pfn_t ext_table; - ext_table.hsa_ven_amd_aqlprofile_error_string = hsa_ven_amd_aqlprofile_error_string; - ext_table.hsa_ven_amd_aqlprofile_validate_event = hsa_ven_amd_aqlprofile_validate_event; - ext_table.hsa_ven_amd_aqlprofile_start = hsa_ven_amd_aqlprofile_start; - ext_table.hsa_ven_amd_aqlprofile_stop = hsa_ven_amd_aqlprofile_stop; - ext_table.hsa_ven_amd_aqlprofile_legacy_get_pm4 = hsa_ven_amd_aqlprofile_legacy_get_pm4; - ext_table.hsa_ven_amd_aqlprofile_get_info = hsa_ven_amd_aqlprofile_get_info; - ext_table.hsa_ven_amd_aqlprofile_iterate_data = hsa_ven_amd_aqlprofile_iterate_data; + ext_table.hsa_ven_amd_aqlprofile_error_string = + (decltype(::hsa_ven_amd_aqlprofile_error_string)*) + os::GetExportAddress(lib, "hsa_ven_amd_aqlprofile_error_string"); + ext_table.hsa_ven_amd_aqlprofile_validate_event = + (decltype(::hsa_ven_amd_aqlprofile_validate_event)*) + os::GetExportAddress(lib, "hsa_ven_amd_aqlprofile_validate_event"); + ext_table.hsa_ven_amd_aqlprofile_start = + (decltype(::hsa_ven_amd_aqlprofile_start)*) + os::GetExportAddress(lib, "hsa_ven_amd_aqlprofile_start"); + ext_table.hsa_ven_amd_aqlprofile_stop = + (decltype(::hsa_ven_amd_aqlprofile_stop)*) + os::GetExportAddress(lib, "hsa_ven_amd_aqlprofile_stop"); + ext_table.hsa_ven_amd_aqlprofile_legacy_get_pm4 = + (decltype(::hsa_ven_amd_aqlprofile_legacy_get_pm4)*) + os::GetExportAddress(lib, "hsa_ven_amd_aqlprofile_legacy_get_pm4"); + ext_table.hsa_ven_amd_aqlprofile_get_info = + (decltype(::hsa_ven_amd_aqlprofile_get_info)*) + os::GetExportAddress(lib, "hsa_ven_amd_aqlprofile_get_info"); + ext_table.hsa_ven_amd_aqlprofile_iterate_data = + (decltype(::hsa_ven_amd_aqlprofile_iterate_data)*) + os::GetExportAddress(lib, "hsa_ven_amd_aqlprofile_iterate_data"); memcpy(table, &ext_table, Min(sizeof(ext_table), table_length)); diff --git a/projects/rocr-runtime/runtime/hsa-runtime/core/runtime/hsa_api_trace.cpp b/projects/rocr-runtime/runtime/hsa-runtime/core/runtime/hsa_api_trace.cpp index fc4238f1a7..3b6f7e037d 100644 --- a/projects/rocr-runtime/runtime/hsa-runtime/core/runtime/hsa_api_trace.cpp +++ b/projects/rocr-runtime/runtime/hsa-runtime/core/runtime/hsa_api_trace.cpp @@ -85,12 +85,11 @@ void HsaApiTable::Init() { UpdateAmdExts(); hsa_api.amd_ext_ = &amd_ext_api; - // Initialize Api tables for Finalizer, Image, AqlProfile to NULL + // Initialize Api tables for Finalizer, Image to NULL // The tables are initialized as part // of Hsa Runtime initialization, including their major ids hsa_api.finalizer_ext_ = NULL; hsa_api.image_ext_ = NULL; - hsa_api.aqlprofile_ext_ = NULL; } void HsaApiTable::Reset() { @@ -114,13 +113,6 @@ void HsaApiTable::CloneExts(void* ext_table, uint32_t table_id) { hsa_api.image_ext_ = &image_api; return; } - - // Update HSA Extension AqlProfile Api table - if (table_id == HSA_EXT_AQLPROFILE_API_TABLE_ID) { - aqlprofile_api = *reinterpret_cast(ext_table); - hsa_api.aqlprofile_ext_ = &aqlprofile_api; - return; - } } void HsaApiTable::LinkExts(void* ext_table, uint32_t table_id) { @@ -140,13 +132,6 @@ void HsaApiTable::LinkExts(void* ext_table, uint32_t table_id) { hsa_api.image_ext_ = reinterpret_cast(ext_table); return; } - - // Update HSA Extension AqlProfile Api table - if (table_id == HSA_EXT_AQLPROFILE_API_TABLE_ID) { - aqlprofile_api = *reinterpret_cast(ext_table); - hsa_api.aqlprofile_ext_ = reinterpret_cast(ext_table); - return; - } } // Update Api table for Hsa Core Runtime diff --git a/projects/rocr-runtime/runtime/hsa-runtime/core/runtime/hsa_ext_interface.cpp b/projects/rocr-runtime/runtime/hsa-runtime/core/runtime/hsa_ext_interface.cpp index 6e064629bf..dacfa826e0 100644 --- a/projects/rocr-runtime/runtime/hsa-runtime/core/runtime/hsa_ext_interface.cpp +++ b/projects/rocr-runtime/runtime/hsa-runtime/core/runtime/hsa_ext_interface.cpp @@ -171,7 +171,6 @@ static T0 hsa_amd_null(T1, T2, T3, T4, T5, T6) { ExtensionEntryPoints::ExtensionEntryPoints() { InitFinalizerExtTable(); InitImageExtTable(); - InitAqlProfileExtTable(); InitAmdExtTable(); } @@ -215,21 +214,6 @@ void ExtensionEntryPoints::InitImageExtTable() { image_api.hsa_ext_image_create_with_layout_fn = hsa_ext_null; } -void ExtensionEntryPoints::InitAqlProfileExtTable() { - // Initialize Version of Api Table - aqlprofile_api.version.major_id = 0x00; - aqlprofile_api.version.minor_id = 0x00; - aqlprofile_api.version.step_id = 0x00; - - aqlprofile_api.hsa_ven_amd_aqlprofile_error_string_fn = hsa_ext_null; - aqlprofile_api.hsa_ven_amd_aqlprofile_validate_event_fn = hsa_ext_null; - aqlprofile_api.hsa_ven_amd_aqlprofile_start_fn = hsa_ext_null; - aqlprofile_api.hsa_ven_amd_aqlprofile_stop_fn = hsa_ext_null; - aqlprofile_api.hsa_ven_amd_aqlprofile_legacy_get_pm4_fn = hsa_ext_null; - aqlprofile_api.hsa_ven_amd_aqlprofile_get_info_fn = hsa_ext_null; - aqlprofile_api.hsa_ven_amd_aqlprofile_iterate_data_fn = hsa_ext_null; -} - // Initialize Amd Ext table for Api related to Images void ExtensionEntryPoints::InitAmdExtTable() { hsa_api_table_.amd_ext_api.hsa_amd_image_create_fn = hsa_ext_null; @@ -271,7 +255,6 @@ void ExtensionEntryPoints::Unload() { InitFinalizerExtTable(); InitImageExtTable(); - InitAqlProfileExtTable(); InitAmdExtTable(); core::hsa_internal_api_table_.Reset(); } @@ -504,82 +487,6 @@ bool ExtensionEntryPoints::LoadFinalizer(std::string library_name) { return true; } -bool ExtensionEntryPoints::LoadAqlProfileApi(std::string library_name) { - os::LibHandle lib = os::LoadLib(library_name); - if (lib == NULL) { - return false; - } - libs_.push_back(lib); - - void* ptr; - - ptr = os::GetExportAddress(lib, "hsa_ven_amd_aqlprofile_error_string"); - if (ptr != NULL) { - assert(aqlprofile_api.hsa_ven_amd_aqlprofile_error_string_fn == - (decltype(::hsa_ven_amd_aqlprofile_error_string)*)hsa_ext_null && - "Duplicate load of extension import."); - aqlprofile_api.hsa_ven_amd_aqlprofile_error_string_fn = (decltype(::hsa_ven_amd_aqlprofile_error_string)*)ptr; - } - ptr = os::GetExportAddress(lib, "hsa_ven_amd_aqlprofile_validate_event"); - if (ptr != NULL) { - assert(aqlprofile_api.hsa_ven_amd_aqlprofile_validate_event_fn == - (decltype(::hsa_ven_amd_aqlprofile_validate_event)*)hsa_ext_null && - "Duplicate load of extension import."); - aqlprofile_api.hsa_ven_amd_aqlprofile_validate_event_fn = (decltype(::hsa_ven_amd_aqlprofile_validate_event)*)ptr; - } - ptr = os::GetExportAddress(lib, "hsa_ven_amd_aqlprofile_start"); - if (ptr != NULL) { - assert(aqlprofile_api.hsa_ven_amd_aqlprofile_start_fn == - (decltype(::hsa_ven_amd_aqlprofile_start)*)hsa_ext_null && - "Duplicate load of extension import."); - aqlprofile_api.hsa_ven_amd_aqlprofile_start_fn = (decltype(::hsa_ven_amd_aqlprofile_start)*)ptr; - } - ptr = os::GetExportAddress(lib, "hsa_ven_amd_aqlprofile_stop"); - if (ptr != NULL) { - assert(aqlprofile_api.hsa_ven_amd_aqlprofile_stop_fn == - (decltype(::hsa_ven_amd_aqlprofile_stop)*)hsa_ext_null && - "Duplicate load of extension import."); - aqlprofile_api.hsa_ven_amd_aqlprofile_stop_fn = (decltype(::hsa_ven_amd_aqlprofile_stop)*)ptr; - } - ptr = os::GetExportAddress(lib, "hsa_ven_amd_aqlprofile_legacy_get_pm4"); - if (ptr != NULL) { - assert(aqlprofile_api.hsa_ven_amd_aqlprofile_legacy_get_pm4_fn == - (decltype(::hsa_ven_amd_aqlprofile_legacy_get_pm4)*)hsa_ext_null && - "Duplicate load of extension import."); - aqlprofile_api.hsa_ven_amd_aqlprofile_legacy_get_pm4_fn = (decltype(::hsa_ven_amd_aqlprofile_legacy_get_pm4)*)ptr; - } - ptr = os::GetExportAddress(lib, "hsa_ven_amd_aqlprofile_get_info"); - if (ptr != NULL) { - assert(aqlprofile_api.hsa_ven_amd_aqlprofile_get_info_fn == - (decltype(::hsa_ven_amd_aqlprofile_get_info)*)hsa_ext_null && - "Duplicate load of extension import."); - aqlprofile_api.hsa_ven_amd_aqlprofile_get_info_fn = (decltype(::hsa_ven_amd_aqlprofile_get_info)*)ptr; - } - ptr = os::GetExportAddress(lib, "hsa_ven_amd_aqlprofile_iterate_data"); - if (ptr != NULL) { - assert(aqlprofile_api.hsa_ven_amd_aqlprofile_iterate_data_fn == - (decltype(::hsa_ven_amd_aqlprofile_iterate_data)*)hsa_ext_null && - "Duplicate load of extension import."); - aqlprofile_api.hsa_ven_amd_aqlprofile_iterate_data_fn = (decltype(::hsa_ven_amd_aqlprofile_iterate_data)*)ptr; - } - - // Initialize Version of Api Table - aqlprofile_api.version.major_id = HSA_AQLPROFILE_API_TABLE_MAJOR_VERSION; - aqlprofile_api.version.minor_id = sizeof(::AqlProfileExtTable); - aqlprofile_api.version.step_id = HSA_AQLPROFILE_API_TABLE_STEP_VERSION; - - // Update handle of table of HSA extensions - hsa_internal_api_table_.CloneExts(&aqlprofile_api, - core::HsaApiTable::HSA_EXT_AQLPROFILE_API_TABLE_ID); - - ptr = os::GetExportAddress(lib, "Load"); - if (ptr != NULL) { - ((Load_t)ptr)(&core::hsa_internal_api_table_.hsa_api); - } - - return true; -} - } // namespace core //---------------------------------------------------------------------------// @@ -749,63 +656,6 @@ hsa_status_t hsa_ext_image_create_with_layout( image); } -hsa_status_t hsa_ven_amd_aqlprofile_error_string( - const char** str) // [out] pointer on the error string -{ - return core::Runtime::runtime_singleton_->extensions_.aqlprofile_api.hsa_ven_amd_aqlprofile_error_string_fn(str); -} - -hsa_status_t hsa_ven_amd_aqlprofile_validate_event( - hsa_agent_t agent, // HSA handle for the profiling GPU - const hsa_ven_amd_aqlprofile_event_t* event, // [in] Pointer on validated event - bool* result) // [out] True if the event valid, False otherwise -{ - return core::Runtime::runtime_singleton_->extensions_.aqlprofile_api.hsa_ven_amd_aqlprofile_validate_event_fn(agent, event, result); -} - -#ifndef HSA_AQLPROFILE_START_NEW_API -hsa_status_t hsa_ven_amd_aqlprofile_start( - const hsa_ven_amd_aqlprofile_profile_t* profile, // [in] profile contex object - hsa_ext_amd_aql_pm4_packet_t* aql_start_packet) // [out] profile start AQL packet -#else -hsa_status_t hsa_ven_amd_aqlprofile_start( - hsa_ven_amd_aqlprofile_profile_t* profile, // [in/out] profile contex object - hsa_ext_amd_aql_pm4_packet_t* aql_start_packet) // [out] profile start AQL packet -#endif -{ - return core::Runtime::runtime_singleton_->extensions_.aqlprofile_api.hsa_ven_amd_aqlprofile_start_fn(profile, aql_start_packet); -} - -hsa_status_t hsa_ven_amd_aqlprofile_stop( - const hsa_ven_amd_aqlprofile_profile_t* profile, // [in] profile contex object - hsa_ext_amd_aql_pm4_packet_t* aql_stop_packet) // [out] profile stop AQL packet -{ - return core::Runtime::runtime_singleton_->extensions_.aqlprofile_api.hsa_ven_amd_aqlprofile_stop_fn(profile, aql_stop_packet); -} - -hsa_status_t hsa_ven_amd_aqlprofile_legacy_get_pm4( - const hsa_ext_amd_aql_pm4_packet_t* aql_packet, // [in] AQL packet - void* data) // [out] PM4 packet blob -{ - return core::Runtime::runtime_singleton_->extensions_.aqlprofile_api.hsa_ven_amd_aqlprofile_legacy_get_pm4_fn(aql_packet, data); -} - -hsa_status_t hsa_ven_amd_aqlprofile_get_info( - const hsa_ven_amd_aqlprofile_profile_t* profile, // [in] profile context object - hsa_ven_amd_aqlprofile_info_type_t attribute, // [in] requested profile attribute - void* value) // [in/out] returned value -{ - return core::Runtime::runtime_singleton_->extensions_.aqlprofile_api.hsa_ven_amd_aqlprofile_get_info_fn(profile, attribute, value); -} - -hsa_status_t hsa_ven_amd_aqlprofile_iterate_data( - const hsa_ven_amd_aqlprofile_profile_t* profile, // [in] profile context object - hsa_ven_amd_aqlprofile_data_callback_t callback, // [in] callback to iterate the output data - void* data) // [in/out] data passed to the callback -{ - return core::Runtime::runtime_singleton_->extensions_.aqlprofile_api.hsa_ven_amd_aqlprofile_iterate_data_fn(profile, callback, data); -} - //---------------------------------------------------------------------------// // Stubs for internal extension functions //---------------------------------------------------------------------------// @@ -817,5 +667,3 @@ hsa_status_t hsa_amd_image_get_info_max_dim(hsa_agent_t component, return core::Runtime::runtime_singleton_->extensions_.image_api .hsa_amd_image_get_info_max_dim_fn(component, attribute, value); } - - diff --git a/projects/rocr-runtime/runtime/hsa-runtime/core/runtime/runtime.cpp b/projects/rocr-runtime/runtime/hsa-runtime/core/runtime/runtime.cpp index 949ef4a8d9..2ba3e72394 100644 --- a/projects/rocr-runtime/runtime/hsa-runtime/core/runtime/runtime.cpp +++ b/projects/rocr-runtime/runtime/hsa-runtime/core/runtime/runtime.cpp @@ -50,7 +50,6 @@ #include #include "core/common/shared.h" - #include "core/inc/hsa_ext_interface.h" #include "core/inc/amd_cpu_agent.h" #include "core/inc/amd_gpu_agent.h" @@ -59,8 +58,9 @@ #include "core/inc/signal.h" #include "core/inc/interrupt_signal.h" #include "core/inc/hsa_ext_amd_impl.h" - #include "core/inc/hsa_api_trace_int.h" +#include "core/util/os.h" +#include "inc/hsa_ven_amd_aqlprofile.h" #define HSA_VERSION_MAJOR 1 #define HSA_VERSION_MINOR 1 @@ -573,7 +573,8 @@ hsa_status_t Runtime::GetSystemInfo(hsa_system_info_t attribute, void* value) { setFlag(HSA_EXTENSION_IMAGES); } - if (hsa_internal_api_table_.aqlprofile_api.hsa_ven_amd_aqlprofile_error_string_fn != NULL) { + if (os::LibHandle lib = os::LoadLib(kAqlProfileLib)) { + os::CloseLib(lib); setFlag(HSA_EXTENSION_AMD_AQLPROFILE); } @@ -1189,15 +1190,11 @@ void Runtime::LoadExtensions() { "libhsa-ext-finalize64.so.1"}; static const std::string kImageLib[] = {"hsa-ext-image64.dll", "libhsa-ext-image64.so.1"}; - static const std::string kAqlProfileLib[] = {"hsa-amd-aqlprofile64.dll", - "libhsa-amd-aqlprofile64.so.1"}; #else static const std::string kFinalizerLib[] = {"hsa-ext-finalize.dll", "libhsa-ext-finalize.so.1"}; static const std::string kImageLib[] = {"hsa-ext-image.dll", "libhsa-ext-image.so.1"}; - static const std::string kAqlProfileLib[] = {"hsa-amd-aqlprofile.dll", - "libhsa-amd-aqlprofile.so.1"}; #endif // Update Hsa Api Table with handle of Image extension Apis @@ -1209,11 +1206,6 @@ void Runtime::LoadExtensions() { extensions_.LoadImage(kImageLib[os_index(os::current_os)]); hsa_api_table_.LinkExts(&extensions_.image_api, core::HsaApiTable::HSA_EXT_IMAGE_API_TABLE_ID); - - // Update Hsa Api Table with handle of AqlProfile extension Apis - extensions_.LoadAqlProfileApi(kAqlProfileLib[os_index(os::current_os)]); - hsa_api_table_.LinkExts(&extensions_.aqlprofile_api, - core::HsaApiTable::HSA_EXT_AQLPROFILE_API_TABLE_ID); } void Runtime::UnloadExtensions() { extensions_.Unload(); } diff --git a/projects/rocr-runtime/runtime/hsa-runtime/inc/hsa_api_trace.h b/projects/rocr-runtime/runtime/hsa-runtime/inc/hsa_api_trace.h index fcdfc1e5dc..e25cd49428 100644 --- a/projects/rocr-runtime/runtime/hsa-runtime/inc/hsa_api_trace.h +++ b/projects/rocr-runtime/runtime/hsa-runtime/inc/hsa_api_trace.h @@ -48,12 +48,10 @@ #include "hsa_ext_image.h" #include "hsa_ext_amd.h" #include "hsa_ext_finalize.h" -#include "hsa_ven_amd_aqlprofile.h" #else #include "inc/hsa_ext_image.h" #include "inc/hsa_ext_amd.h" #include "inc/hsa_ext_finalize.h" -#include "inc/hsa_ven_amd_aqlprofile.h" #endif #include @@ -133,18 +131,6 @@ struct ImageExtTable { decltype(hsa_ext_image_create_with_layout)* hsa_ext_image_create_with_layout_fn; }; -// Table to export HSA AqlProfile AMD specific Extension Apis -struct AqlProfileExtTable { - ApiTableVersion version; - decltype(hsa_ven_amd_aqlprofile_error_string)* hsa_ven_amd_aqlprofile_error_string_fn; - decltype(hsa_ven_amd_aqlprofile_validate_event)* hsa_ven_amd_aqlprofile_validate_event_fn; - decltype(hsa_ven_amd_aqlprofile_start)* hsa_ven_amd_aqlprofile_start_fn; - decltype(hsa_ven_amd_aqlprofile_stop)* hsa_ven_amd_aqlprofile_stop_fn; - decltype(hsa_ven_amd_aqlprofile_legacy_get_pm4)* hsa_ven_amd_aqlprofile_legacy_get_pm4_fn; - decltype(hsa_ven_amd_aqlprofile_get_info)* hsa_ven_amd_aqlprofile_get_info_fn; - decltype(hsa_ven_amd_aqlprofile_iterate_data)* hsa_ven_amd_aqlprofile_iterate_data_fn; -}; - // Table to export AMD Extension Apis struct AmdExtTable { ApiTableVersion version; @@ -383,9 +369,6 @@ struct HsaApiTable { // Table of function pointers to HSA Image Extension ImageExtTable* image_ext_; - - // Table of function pointers to AqlProfile AMD Extension - AqlProfileExtTable* aqlprofile_ext_; }; // Structure containing instances of different api tables @@ -395,7 +378,6 @@ struct HsaApiTableContainer { AmdExtTable amd_ext; FinalizerExtTable finalizer_ext; ImageExtTable image_ext; - AqlProfileExtTable aqlprofile_ext; // Default initialization of a container instance HsaApiTableContainer() { @@ -422,11 +404,6 @@ struct HsaApiTableContainer { image_ext.version.minor_id = sizeof(ImageExtTable); image_ext.version.step_id = HSA_IMAGE_API_TABLE_STEP_VERSION; root.image_ext_ = &image_ext; - - aqlprofile_ext.version.major_id = HSA_AQLPROFILE_API_TABLE_MAJOR_VERSION; - aqlprofile_ext.version.minor_id = sizeof(AqlProfileExtTable); - aqlprofile_ext.version.step_id = HSA_AQLPROFILE_API_TABLE_STEP_VERSION; - root.aqlprofile_ext_ = &aqlprofile_ext; } }; @@ -482,7 +459,5 @@ static void inline copyTables(const HsaApiTable* src, HsaApiTable* dest) { copyElement(&dest->finalizer_ext_->version, &src->finalizer_ext_->version); if ((offsetof(HsaApiTable, image_ext_) < dest->version.minor_id)) copyElement(&dest->image_ext_->version, &src->image_ext_->version); - if ((offsetof(HsaApiTable, aqlprofile_ext_) < dest->version.minor_id)) - copyElement(&dest->aqlprofile_ext_->version, &src->aqlprofile_ext_->version); } #endif diff --git a/projects/rocr-runtime/runtime/hsa-runtime/inc/hsa_ven_amd_aqlprofile.h b/projects/rocr-runtime/runtime/hsa-runtime/inc/hsa_ven_amd_aqlprofile.h index 850312536d..a597da53e8 100644 --- a/projects/rocr-runtime/runtime/hsa-runtime/inc/hsa_ven_amd_aqlprofile.h +++ b/projects/rocr-runtime/runtime/hsa-runtime/inc/hsa_ven_amd_aqlprofile.h @@ -280,6 +280,12 @@ hsa_status_t hsa_ven_amd_aqlprofile_error_string( * @brief Extension version. */ #define hsa_ven_amd_aqlprofile 001000 +#define hsa_ven_amd_aqlprofile_VERSION_MAJOR 1 +#ifdef HSA_LARGE_MODEL +static const char kAqlProfileLib[] = "libhsa-amd-aqlprofile64.so.1"; +#else +static const char kAqlProfileLib[] = "libhsa-amd-aqlprofile.so.1"; +#endif /** * @brief Extension function table.