feature: expose new CB Event APIs
Related-To: NEO-11925 Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
This commit is contained in:
parent
608c1d30c5
commit
34e2e4fd6e
|
@ -146,10 +146,10 @@ typedef struct _ze_intel_device_media_exp_properties_t {
|
|||
uint32_t numDecoderCores; ///< [out] number of decoder cores
|
||||
} ze_intel_device_media_exp_properties_t;
|
||||
|
||||
#ifndef ZEX_COUNTER_BASED_EVENT_NAME
|
||||
#ifndef ZEX_COUNTER_BASED_EVENT_EXT_NAME
|
||||
/// @brief Counter Based Event Extension Name
|
||||
#define ZEX_COUNTER_BASED_EVENT_NAME "ZEX_counter_based_event"
|
||||
#endif // ZEX_COUNTER_BASED_EVENT_NAME
|
||||
#define ZEX_COUNTER_BASED_EVENT_EXT_NAME "ZEX_counter_based_event"
|
||||
#endif // ZEX_COUNTER_BASED_EVENT_EXT_NAME
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
/// @brief Counter Based Event Extension Version(s)
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
*
|
||||
*/
|
||||
|
||||
#include "level_zero/api/driver_experimental/public/zex_common.h"
|
||||
#include "level_zero/core/source/driver/driver_handle_imp.h"
|
||||
#include "level_zero/include/ze_intel_gpu.h"
|
||||
|
||||
|
@ -35,6 +36,7 @@ const std::vector<std::pair<std::string, uint32_t>> DriverHandleImp::extensionsS
|
|||
// Driver experimental extensions
|
||||
{ZE_INTEL_DEVICE_MODULE_DP_PROPERTIES_EXP_NAME, ZE_INTEL_DEVICE_MODULE_DP_PROPERTIES_EXP_VERSION_CURRENT},
|
||||
{ZE_EVENT_POOL_COUNTER_BASED_EXP_NAME, ZE_EVENT_POOL_COUNTER_BASED_EXP_VERSION_CURRENT},
|
||||
{ZEX_COUNTER_BASED_EVENT_EXT_NAME, ZEX_COUNTER_BASED_EVENT_VERSION_1_0},
|
||||
{ZE_INTEL_COMMAND_LIST_MEMORY_SYNC, ZE_INTEL_COMMAND_LIST_MEMORY_SYNC_EXP_VERSION_CURRENT},
|
||||
{ZEX_INTEL_EVENT_SYNC_MODE_EXP_NAME, ZEX_INTEL_EVENT_SYNC_MODE_EXP_VERSION_CURRENT},
|
||||
{ZE_INTEL_GET_DRIVER_VERSION_STRING_EXP_NAME, ZE_INTEL_GET_DRIVER_VERSION_STRING_EXP_VERSION_CURRENT},
|
||||
|
|
|
@ -42,6 +42,11 @@ void *ExtensionFunctionAddressHelper::getExtensionFunctionAddress(const std::str
|
|||
RETURN_FUNC_PTR_IF_EXIST(zexCounterBasedEventCreate);
|
||||
RETURN_FUNC_PTR_IF_EXIST(zexEventGetDeviceAddress);
|
||||
|
||||
RETURN_FUNC_PTR_IF_EXIST(zexCounterBasedEventCreate2);
|
||||
RETURN_FUNC_PTR_IF_EXIST(zexCounterBasedEventGetIpcHandle);
|
||||
RETURN_FUNC_PTR_IF_EXIST(zexCounterBasedEventOpenIpcHandle);
|
||||
RETURN_FUNC_PTR_IF_EXIST(zexCounterBasedEventCloseIpcHandle);
|
||||
|
||||
RETURN_FUNC_PTR_IF_EXIST(zeMemGetPitchFor2dImage);
|
||||
RETURN_FUNC_PTR_IF_EXIST(zeImageGetDeviceOffsetExp);
|
||||
RETURN_FUNC_PTR_IF_EXIST(zetIntelDeviceGetConcurrentMetricGroupsExp);
|
||||
|
|
|
@ -50,6 +50,10 @@ HWTEST2_F(InOrderCmdListTests, givenDriverHandleWhenAskingForExtensionsThenRetur
|
|||
EXPECT_NE(it, extensionProperties.end());
|
||||
EXPECT_EQ((*it).version, ZE_EVENT_POOL_COUNTER_BASED_EXP_VERSION_CURRENT);
|
||||
|
||||
it = std::find_if(extensionProperties.begin(), extensionProperties.end(), [](const auto &extension) { return (strcmp(extension.name, ZEX_COUNTER_BASED_EVENT_EXT_NAME) == 0); });
|
||||
EXPECT_NE(it, extensionProperties.end());
|
||||
EXPECT_EQ((*it).version, ZEX_COUNTER_BASED_EVENT_VERSION_1_0);
|
||||
|
||||
it = std::find_if(extensionProperties.begin(), extensionProperties.end(), [](const auto &extension) { return (strcmp(extension.name, ZE_INTEL_COMMAND_LIST_MEMORY_SYNC) == 0); });
|
||||
EXPECT_NE(it, extensionProperties.end());
|
||||
EXPECT_EQ((*it).version, ZE_INTEL_COMMAND_LIST_MEMORY_SYNC_EXP_VERSION_CURRENT);
|
||||
|
|
|
@ -1328,6 +1328,11 @@ TEST_F(DriverExperimentalApiTest, whenRetrievingApiFunctionThenExpectProperPoint
|
|||
decltype(&zexIntelAllocateNetworkInterrupt) expectedIntelAllocateNetworkInterrupt = L0::zexIntelAllocateNetworkInterrupt;
|
||||
decltype(&zexIntelReleaseNetworkInterrupt) expectedIntelReleaseNetworkInterrupt = L0::zexIntelReleaseNetworkInterrupt;
|
||||
|
||||
decltype(&zexCounterBasedEventCreate2) expectedCounterBasedEventCreate2 = L0::zexCounterBasedEventCreate2;
|
||||
decltype(&zexCounterBasedEventGetIpcHandle) expectedCounterBasedEventGetIpcHandle = L0::zexCounterBasedEventGetIpcHandle;
|
||||
decltype(&zexCounterBasedEventOpenIpcHandle) expectedCounterBasedEventOpenIpcHandle = L0::zexCounterBasedEventOpenIpcHandle;
|
||||
decltype(&zexCounterBasedEventCloseIpcHandle) expectedCounterBasedEventCloseIpcHandle = L0::zexCounterBasedEventCloseIpcHandle;
|
||||
|
||||
void *funPtr = nullptr;
|
||||
|
||||
EXPECT_EQ(ZE_RESULT_SUCCESS, zeDriverGetExtensionFunctionAddress(driverHandle, "zexDriverImportExternalPointer", &funPtr));
|
||||
|
@ -1356,6 +1361,18 @@ TEST_F(DriverExperimentalApiTest, whenRetrievingApiFunctionThenExpectProperPoint
|
|||
|
||||
EXPECT_EQ(ZE_RESULT_SUCCESS, zeDriverGetExtensionFunctionAddress(driverHandle, "zexIntelReleaseNetworkInterrupt", &funPtr));
|
||||
EXPECT_EQ(expectedIntelReleaseNetworkInterrupt, reinterpret_cast<decltype(&zexIntelReleaseNetworkInterrupt)>(funPtr));
|
||||
|
||||
EXPECT_EQ(ZE_RESULT_SUCCESS, zeDriverGetExtensionFunctionAddress(driverHandle, "zexCounterBasedEventCreate2", &funPtr));
|
||||
EXPECT_EQ(expectedCounterBasedEventCreate2, reinterpret_cast<decltype(&zexCounterBasedEventCreate2)>(funPtr));
|
||||
|
||||
EXPECT_EQ(ZE_RESULT_SUCCESS, zeDriverGetExtensionFunctionAddress(driverHandle, "zexCounterBasedEventGetIpcHandle", &funPtr));
|
||||
EXPECT_EQ(expectedCounterBasedEventGetIpcHandle, reinterpret_cast<decltype(&zexCounterBasedEventGetIpcHandle)>(funPtr));
|
||||
|
||||
EXPECT_EQ(ZE_RESULT_SUCCESS, zeDriverGetExtensionFunctionAddress(driverHandle, "zexCounterBasedEventOpenIpcHandle", &funPtr));
|
||||
EXPECT_EQ(expectedCounterBasedEventOpenIpcHandle, reinterpret_cast<decltype(&zexCounterBasedEventOpenIpcHandle)>(funPtr));
|
||||
|
||||
EXPECT_EQ(ZE_RESULT_SUCCESS, zeDriverGetExtensionFunctionAddress(driverHandle, "zexCounterBasedEventCloseIpcHandle", &funPtr));
|
||||
EXPECT_EQ(expectedCounterBasedEventCloseIpcHandle, reinterpret_cast<decltype(&zexCounterBasedEventCloseIpcHandle)>(funPtr));
|
||||
}
|
||||
|
||||
TEST_F(DriverExperimentalApiTest, givenHostPointerApiExistWhenImportingPtrThenExpectProperBehavior) {
|
||||
|
|
Loading…
Reference in New Issue