Skip to content

Commit f70432d

Browse files
committed
Use l0 headers from driver
1 parent f431324 commit f70432d

File tree

5 files changed

+28
-0
lines changed

5 files changed

+28
-0
lines changed

cmake/FetchLevelZero.cmake

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@ set(UR_LEVEL_ZERO_LOADER_LIBRARY "" CACHE FILEPATH "Path of the Level Zero Loade
77
set(UR_LEVEL_ZERO_INCLUDE_DIR "" CACHE FILEPATH "Directory containing the Level Zero Headers")
88
set(UR_LEVEL_ZERO_LOADER_REPO "" CACHE STRING "Github repo to get the Level Zero loader sources from")
99
set(UR_LEVEL_ZERO_LOADER_TAG "" CACHE STRING " GIT tag of the Level Loader taken from github repo")
10+
set(UR_COMPUTE_RUNTIME_REPO "" CACHE STRING "Github repo to get the compute runtime sources from")
11+
set(UR_COMPUTE_RUNTIME_TAG "" CACHE STRING " GIT tag of the compute runtime taken from github repo")
1012

1113
# Copy Level Zero loader/headers locally to the build to avoid leaking their path.
1214
set(LEVEL_ZERO_COPY_DIR ${CMAKE_CURRENT_BINARY_DIR}/level_zero_loader)
@@ -92,3 +94,24 @@ target_include_directories(LevelZeroLoader-Headers
9294
INTERFACE "$<BUILD_INTERFACE:${LEVEL_ZERO_INCLUDE_DIR}>"
9395
"$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>"
9496
)
97+
98+
if (UR_COMPUTE_RUNTIME_REPO STREQUAL "")
99+
set(UR_COMPUTE_RUNTIME_REPO "https://github.com/intel/compute-runtime.git")
100+
endif()
101+
if (UR_COMPUTE_RUNTIME_TAG STREQUAL "")
102+
set(UR_COMPUTE_RUNTIME_TAG 24.39.31294.12)
103+
endif()
104+
include(FetchContent)
105+
# Sparse fetch only the dir with level zero headers to avoid pulling in the entire compute-runtime.
106+
FetchContentSparse_Declare(compute-runtime-level-zero-headers ${UR_COMPUTE_RUNTIME_REPO} "${UR_COMPUTE_RUNTIME_TAG}" "level_zero/include")
107+
FetchContent_GetProperties(compute-runtime-level-zero-headers)
108+
if(NOT compute-runtime-level-zero-headers_POPULATED)
109+
FetchContent_Populate(compute-runtime-level-zero-headers)
110+
endif()
111+
add_library(ComputeRuntimeLevelZero-Headers INTERFACE)
112+
set(COMPUTE_RUNTIME_LEVEL_ZERO_INCLUDE "${compute-runtime-level-zero-headers_SOURCE_DIR}/../..")
113+
message(STATUS "Level Zero Adapter: Using Level Zero headers from ${COMPUTE_RUNTIME_LEVEL_ZERO_INCLUDE}")
114+
target_include_directories(ComputeRuntimeLevelZero-Headers
115+
INTERFACE "$<BUILD_INTERFACE:${COMPUTE_RUNTIME_LEVEL_ZERO_INCLUDE}>"
116+
"$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>"
117+
)

source/adapters/level_zero/CMakeLists.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -109,6 +109,7 @@ if(UR_BUILD_ADAPTER_L0)
109109
${PROJECT_NAME}::umf
110110
LevelZeroLoader
111111
LevelZeroLoader-Headers
112+
ComputeRuntimeLevelZero-Headers
112113
)
113114

114115
target_include_directories(ur_adapter_level_zero PRIVATE
@@ -203,6 +204,7 @@ if(UR_BUILD_ADAPTER_L0_V2)
203204
${PROJECT_NAME}::umf
204205
LevelZeroLoader
205206
LevelZeroLoader-Headers
207+
ComputeRuntimeLevelZero-Headers
206208
)
207209

208210
target_include_directories(ur_adapter_level_zero_v2 PRIVATE

source/adapters/level_zero/common.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
#include "common.hpp"
1212
#include "logger/ur_logger.hpp"
1313
#include "usm.hpp"
14+
#include <level_zero/include/ze_intel_gpu.h>
1415

1516
ur_result_t ze2urResult(ze_result_t ZeResult) {
1617
if (ZeResult == ZE_RESULT_SUCCESS)

source/adapters/level_zero/device.hpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222
#include <ur_ddi.h>
2323
#include <ze_api.h>
2424
#include <zes_api.h>
25+
#include <level_zero/include/ze_intel_gpu.h>
2526

2627
#include "adapters/level_zero/platform.hpp"
2728
#include "common.hpp"

test/adapters/level_zero/v2/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ function(add_unittest name)
2525
${PROJECT_NAME}::umf
2626
LevelZeroLoader
2727
LevelZeroLoader-Headers
28+
ComputeRuntimeLevelZero-Headers
2829
)
2930
endfunction()
3031

0 commit comments

Comments
 (0)