Skip to content

Commit 36a889f

Browse files
committed
[L0] Add support for multi-device kernel compilation
sycl changes for oneapi-src/unified-runtime#1135 Enables multi device kernel compilation for level zero Signed-off-by: Spruit, Neil R <[email protected]>
1 parent 0f3662a commit 36a889f

File tree

2 files changed

+2
-26
lines changed

2 files changed

+2
-26
lines changed

sycl/plugins/unified_runtime/CMakeLists.txt

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -56,14 +56,8 @@ endif()
5656
if(SYCL_PI_UR_USE_FETCH_CONTENT)
5757
include(FetchContent)
5858

59-
set(UNIFIED_RUNTIME_REPO "https://github.com/oneapi-src/unified-runtime.git")
60-
# commit 43c2ad2363f735fd83282bb8da9d4996424dd3cf
61-
# Merge: 5d58871c eba3905b
62-
# Author: Kenneth Benzie (Benie) <[email protected]>
63-
# Date: Fri Jan 19 15:52:55 2024 +0000
64-
# Merge pull request #1260 from kbenzie/benie/dont-include-windows.h-in-ur_info.hpp
65-
# [Common] Don't include Windows.h in ur_util.hpp
66-
set(UNIFIED_RUNTIME_TAG 43c2ad2363f735fd83282bb8da9d4996424dd3cf)
59+
set(UNIFIED_RUNTIME_REPO "https://github.com/nrspruit/unified-runtime.git")
60+
set(UNIFIED_RUNTIME_TAG 1b2cd5b34dda3055c5274b2eb381adef12fd95c8)
6761

6862
if(SYCL_PI_UR_OVERRIDE_FETCH_CONTENT_REPO)
6963
set(UNIFIED_RUNTIME_REPO "${SYCL_PI_UR_OVERRIDE_FETCH_CONTENT_REPO}")

sycl/plugins/unified_runtime/pi2ur.hpp

Lines changed: 0 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1875,11 +1875,6 @@ inline pi_result piProgramCreateWithBinary(
18751875
PI_ASSERT(Binaries && Lengths, PI_ERROR_INVALID_VALUE);
18761876
PI_ASSERT(Program, PI_ERROR_INVALID_PROGRAM);
18771877

1878-
// For now we support only one device.
1879-
if (NumDevices != 1) {
1880-
die("piProgramCreateWithBinary: level_zero supports only one device.");
1881-
return PI_ERROR_INVALID_VALUE;
1882-
}
18831878
if (!Binaries[0] || !Lengths[0]) {
18841879
if (BinaryStatus)
18851880
*BinaryStatus = PI_ERROR_INVALID_VALUE;
@@ -1981,11 +1976,6 @@ piProgramLink(pi_context Context, pi_uint32 NumDevices,
19811976
pi_uint32 NumInputPrograms, const pi_program *InputPrograms,
19821977
void (*PFnNotify)(pi_program Program, void *UserData),
19831978
void *UserData, pi_program *RetProgram) {
1984-
// We only support one device with Level Zero currently.
1985-
if (NumDevices != 1) {
1986-
die("piProgramLink: level_zero supports only one device.");
1987-
return PI_ERROR_INVALID_VALUE;
1988-
}
19891979

19901980
// Validate input parameters.
19911981
PI_ASSERT(DeviceList, PI_ERROR_INVALID_DEVICE);
@@ -2060,14 +2050,6 @@ piProgramBuild(pi_program Program, pi_uint32 NumDevices,
20602050
return PI_ERROR_INVALID_VALUE;
20612051
}
20622052

2063-
// We only support build to one device with Level Zero now.
2064-
// TODO: we should eventually build to the possibly multiple root
2065-
// devices in the context.
2066-
if (NumDevices != 1) {
2067-
die("piProgramBuild: level_zero supports only one device.");
2068-
return PI_ERROR_INVALID_VALUE;
2069-
}
2070-
20712053
// These aren't supported.
20722054
PI_ASSERT(!PFnNotify && !UserData, PI_ERROR_INVALID_VALUE);
20732055

0 commit comments

Comments
 (0)