Skip to content

Commit 89c1377

Browse files
committed
[UR][L0] Setup CMake for L0 sources
1 parent f0944fe commit 89c1377

File tree

4 files changed

+344
-34
lines changed

4 files changed

+344
-34
lines changed

source/adapters/CMakeLists.txt

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,8 +33,6 @@ add_subdirectory(null)
3333
set(INTEL_LLVM_TAG nightly-2023-08-20)
3434

3535
if(UR_BUILD_ADAPTER_L0)
36-
set(SYCL_ADAPTER_DIR "${CMAKE_CURRENT_BINARY_DIR}/external/level_zero")
37-
FetchSource(https://github.com/intel/llvm.git ${INTEL_LLVM_TAG} "sycl/plugins/unified_runtime/ur" ${SYCL_ADAPTER_DIR})
3836
add_subdirectory(level_zero)
3937
endif()
4038

source/adapters/level_zero/CMakeLists.txt

Lines changed: 31 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
# See LICENSE.TXT
44
# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
55

6-
set(L0_DIR "${SYCL_ADAPTER_DIR}/sycl/plugins/unified_runtime/ur/adapters/level_zero")
76

87
set(TARGET_NAME ur_adapter_level_zero)
98

@@ -73,36 +72,36 @@ target_include_directories(LevelZeroLoader-Headers
7372

7473
add_ur_adapter(${TARGET_NAME}
7574
SHARED
76-
${L0_DIR}/ur_interface_loader.cpp
77-
${L0_DIR}/adapter.hpp
78-
${L0_DIR}/adapter.cpp
79-
${L0_DIR}/command_buffer.hpp
80-
${L0_DIR}/command_buffer.cpp
81-
${L0_DIR}/common.hpp
82-
${L0_DIR}/context.hpp
83-
${L0_DIR}/device.hpp
84-
${L0_DIR}/event.hpp
85-
${L0_DIR}/usm.hpp
86-
${L0_DIR}/memory.hpp
87-
${L0_DIR}/kernel.hpp
88-
${L0_DIR}/platform.hpp
89-
${L0_DIR}/program.hpp
90-
${L0_DIR}/queue.hpp
91-
${L0_DIR}/sampler.hpp
92-
${L0_DIR}/ur_level_zero.cpp
93-
${L0_DIR}/common.cpp
94-
${L0_DIR}/context.cpp
95-
${L0_DIR}/device.cpp
96-
${L0_DIR}/event.cpp
97-
${L0_DIR}/usm.cpp
98-
${L0_DIR}/usm_p2p.cpp
99-
${L0_DIR}/memory.cpp
100-
${L0_DIR}/kernel.cpp
101-
${L0_DIR}/platform.cpp
102-
${L0_DIR}/program.cpp
103-
${L0_DIR}/queue.cpp
104-
${L0_DIR}/sampler.cpp
105-
${L0_DIR}/../../ur.cpp
75+
${CMAKE_CURRENT_SOURCE_DIR}/ur_interface_loader.cpp
76+
${CMAKE_CURRENT_SOURCE_DIR}/adapter.hpp
77+
${CMAKE_CURRENT_SOURCE_DIR}/adapter.cpp
78+
${CMAKE_CURRENT_SOURCE_DIR}/command_buffer.hpp
79+
${CMAKE_CURRENT_SOURCE_DIR}/command_buffer.cpp
80+
${CMAKE_CURRENT_SOURCE_DIR}/common.hpp
81+
${CMAKE_CURRENT_SOURCE_DIR}/context.hpp
82+
${CMAKE_CURRENT_SOURCE_DIR}/device.hpp
83+
${CMAKE_CURRENT_SOURCE_DIR}/event.hpp
84+
${CMAKE_CURRENT_SOURCE_DIR}/usm.hpp
85+
${CMAKE_CURRENT_SOURCE_DIR}/memory.hpp
86+
${CMAKE_CURRENT_SOURCE_DIR}/kernel.hpp
87+
${CMAKE_CURRENT_SOURCE_DIR}/platform.hpp
88+
${CMAKE_CURRENT_SOURCE_DIR}/program.hpp
89+
${CMAKE_CURRENT_SOURCE_DIR}/queue.hpp
90+
${CMAKE_CURRENT_SOURCE_DIR}/sampler.hpp
91+
${CMAKE_CURRENT_SOURCE_DIR}/ur_level_zero.cpp
92+
${CMAKE_CURRENT_SOURCE_DIR}/common.cpp
93+
${CMAKE_CURRENT_SOURCE_DIR}/context.cpp
94+
${CMAKE_CURRENT_SOURCE_DIR}/device.cpp
95+
${CMAKE_CURRENT_SOURCE_DIR}/event.cpp
96+
${CMAKE_CURRENT_SOURCE_DIR}/usm.cpp
97+
${CMAKE_CURRENT_SOURCE_DIR}/usm_p2p.cpp
98+
${CMAKE_CURRENT_SOURCE_DIR}/memory.cpp
99+
${CMAKE_CURRENT_SOURCE_DIR}/kernel.cpp
100+
${CMAKE_CURRENT_SOURCE_DIR}/platform.cpp
101+
${CMAKE_CURRENT_SOURCE_DIR}/program.cpp
102+
${CMAKE_CURRENT_SOURCE_DIR}/queue.cpp
103+
${CMAKE_CURRENT_SOURCE_DIR}/sampler.cpp
104+
${CMAKE_CURRENT_SOURCE_DIR}/../../ur/ur.cpp
106105
)
107106

108107
set_target_properties(${TARGET_NAME} PROPERTIES
@@ -119,6 +118,6 @@ target_link_libraries(${TARGET_NAME} PRIVATE
119118
)
120119

121120
target_include_directories(${TARGET_NAME} PRIVATE
122-
${L0_DIR}/../../../
121+
"${CMAKE_CURRENT_SOURCE_DIR}/../../"
123122
LevelZeroLoader-Headers
124123
)

source/ur/ur.cpp

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
2+
//===--------- ur.cpp - Unified Runtime ----------------------------------===//
3+
//
4+
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
5+
// See https://llvm.org/LICENSE.txt for license information.
6+
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
7+
//
8+
//===----------------------------------------------------------------------===//
9+
10+
#include "ur.hpp"
11+
#include <cassert>
12+
13+
// Controls tracing UR calls from within the UR itself.
14+
bool PrintTrace = [] {
15+
const char *PiRet = std::getenv("SYCL_PI_TRACE");
16+
const char *Trace = PiRet ? PiRet : nullptr;
17+
const int TraceValue = Trace ? std::stoi(Trace) : 0;
18+
if (TraceValue == -1 || TraceValue == 2) { // Means print all traces
19+
return true;
20+
}
21+
return false;
22+
}();
23+
24+
// Apparatus for maintaining immutable cache of platforms.
25+
std::vector<ur_platform_handle_t> *URPlatformsCache =
26+
new std::vector<ur_platform_handle_t>;
27+
SpinLock *URPlatformsCacheMutex = new SpinLock;
28+
bool URPlatformCachePopulated = false;

0 commit comments

Comments
 (0)