SWDEV-290384 - Add compilation option for direct disaptch
DISABLE_DIRECT_DISPATCH flag will control compilation. Default is OFF. Change-Id: I7d4207b8a79f5e3eb61440c5fbe5034c6ce75cce
Этот коммит содержится в:
коммит произвёл
Maneesh Gupta
родитель
c3ca1faee7
Коммит
a852370a25
@@ -40,6 +40,8 @@ if(ADDRESS_SANITIZER)
|
||||
set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} ${ASAN_LINKER_FLAGS}")
|
||||
endif()
|
||||
|
||||
option(DISABLE_DIRECT_DISPATCH "Disable Direct Dispatch" OFF)
|
||||
|
||||
option(BUILD_SHARED_LIBS "Build the shared library" ON)
|
||||
|
||||
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}/cmake")
|
||||
@@ -148,6 +150,10 @@ else()
|
||||
target_include_directories(amdhip64 PRIVATE $<TARGET_PROPERTY:rocclr,INCLUDE_DIRECTORIES>)
|
||||
endif()
|
||||
|
||||
if(DISABLE_DIRECT_DISPATCH)
|
||||
target_compile_definitions(amdhip64 PRIVATE DISABLE_DIRECT_DISPATCH)
|
||||
endif()
|
||||
|
||||
# Short-Term solution for pre-compiled headers for online compilation
|
||||
# Enable pre compiled header
|
||||
if(__HIP_ENABLE_PCH)
|
||||
@@ -296,7 +302,7 @@ add_custom_command(TARGET amdhip64 POST_BUILD COMMAND
|
||||
|
||||
add_library(host INTERFACE)
|
||||
target_link_libraries(host INTERFACE amdhip64)
|
||||
|
||||
|
||||
add_library(device INTERFACE)
|
||||
target_link_libraries(device INTERFACE host)
|
||||
|
||||
|
||||
@@ -39,8 +39,14 @@ void init() {
|
||||
if (!amd::Runtime::initialized()) {
|
||||
amd::IS_HIP = true;
|
||||
GPU_NUM_MEM_DEPENDENCY = 0;
|
||||
AMD_DIRECT_DISPATCH = flagIsDefault(AMD_DIRECT_DISPATCH) ? IS_LINUX : AMD_DIRECT_DISPATCH;
|
||||
#if DISABLE_DIRECT_DISPATCH
|
||||
constexpr bool kDirectDispatch = false;
|
||||
#else
|
||||
constexpr bool kDirectDispatch = IS_LINUX;
|
||||
#endif
|
||||
AMD_DIRECT_DISPATCH = flagIsDefault(AMD_DIRECT_DISPATCH) ? kDirectDispatch : AMD_DIRECT_DISPATCH;
|
||||
amd::Runtime::init();
|
||||
LogPrintfInfo("Direct Dispatch: %d", AMD_DIRECT_DISPATCH);
|
||||
}
|
||||
|
||||
const std::vector<amd::Device*>& devices = amd::Device::getDevices(CL_DEVICE_TYPE_GPU, false);
|
||||
|
||||
Ссылка в новой задаче
Block a user