Skip to content
This repository was archived by the owner on Mar 28, 2023. It is now read-only.

Commit 6f9223e

Browse files
committed
Address feedback
1 parent 3eedfa4 commit 6f9223e

File tree

2 files changed

+22
-71
lines changed

2 files changed

+22
-71
lines changed

SYCL/XPTI/basic_event_collection.cpp

Lines changed: 10 additions & 60 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
// REQUIRES: xptifw
2-
// RUN: %clangxx -fsycl %s -DXPTI_COLLECTOR -shared -fPIC -std=c++17 -o %t_collector.dll -lxptifw
1+
// REQUIRES: xptifw, opencl
2+
// RUN: %clangxx %s -DXPTI_COLLECTOR -L%xptifw_lib -I%xptifw_includes -shared -fPIC -std=c++17 -o %t_collector.dll -lxptifw
33
// RUN: %clangxx -fsycl -fsycl-unnamed-lambda -fsycl-targets=%sycl_triple %s -o %t.out
4-
// RUN: env XPTI_TRACE_ENABLED=1 env XPTI_FRAMEWORK_DISPATCHER=%xptifw_lib env XPTI_SUBSCRIBERS=%t_collector.dll %CPU_RUN_PLACEHOLDER %t %CPU_CHECK_PLACEHOLDER
4+
// RUN: env XPTI_TRACE_ENABLED=1 env XPTI_FRAMEWORK_DISPATCHER=%xptifw_dispatcher env XPTI_SUBSCRIBERS=%t_collector.dll env SYCL_DEVICE_FILTER=opencl %t.out | FileCheck %s 2>&1
55

66
#ifdef XPTI_COLLECTOR
77

@@ -42,38 +42,7 @@ int main() {
4242
// CHECK-NEXT: xptiTraceInit: Stream Name = sycl.pi.debug
4343
// CHECK-NEXT: PI Call Begin : piPlatformsGet
4444
// CHECK-NEXT: PI Call Begin : piPlatformsGet
45-
// CHECK-NEXT: PI Call Begin : piDevicesGet
46-
// CHECK-NEXT: PI Call Begin : piDevicesGet
47-
// CHECK-NEXT: PI Call Begin : piDeviceGetInfo
48-
// CHECK-NEXT: PI Call Begin : piDeviceGetInfo
49-
// CHECK-NEXT: PI Call Begin : piDeviceGetInfo
50-
// CHECK-NEXT: PI Call Begin : piDeviceRetain
51-
// CHECK-NEXT: PI Call Begin : piDeviceGetInfo
52-
// CHECK-NEXT: PI Call Begin : piDeviceGetInfo
53-
// CHECK-NEXT: PI Call Begin : piPlatformGetInfo
54-
// CHECK-NEXT: PI Call Begin : piPlatformGetInfo
55-
// CHECK-NEXT: PI Call Begin : piDeviceRelease
56-
// CHECK-NEXT: PI Call Begin : piDevicesGet
57-
// CHECK-NEXT: PI Call Begin : piDevicesGet
58-
// CHECK-NEXT: PI Call Begin : piDeviceGetInfo
59-
// CHECK-NEXT: PI Call Begin : piDevicesGet
60-
// CHECK-NEXT: PI Call Begin : piDevicesGet
61-
// CHECK-NEXT: PI Call Begin : piDeviceGetInfo
62-
// CHECK-NEXT: PI Call Begin : piDevicesGet
63-
// CHECK-NEXT: PI Call Begin : piDevicesGet
64-
// CHECK-NEXT: PI Call Begin : piDeviceGetInfo
65-
// CHECK-NEXT: PI Call Begin : piDeviceGetInfo
66-
// CHECK-NEXT: PI Call Begin : piDeviceGetInfo
67-
// CHECK-NEXT: PI Call Begin : piDeviceRetain
68-
// CHECK-NEXT: PI Call Begin : piDeviceGetInfo
69-
// CHECK-NEXT: PI Call Begin : piDeviceGetInfo
70-
// CHECK-NEXT: PI Call Begin : piDeviceGetInfo
71-
// CHECK-NEXT: PI Call Begin : piDeviceGetInfo
72-
// CHECK-NEXT: PI Call Begin : piDeviceGetInfo
73-
// CHECK-NEXT: PI Call Begin : piDevicesGet
74-
// CHECK-NEXT: PI Call Begin : piDevicesGet
75-
// CHECK-NEXT: PI Call Begin : piDeviceGetInfo
76-
// CHECK-NEXT: PI Call Begin : piContextCreate
45+
// CHECK: PI Call Begin : piContextCreate
7746
// CHECK-NEXT: PI Call Begin : piQueueCreate
7847
// CHECK-NEXT: PI Call Begin : piextUSMDeviceAlloc
7948
// CHECK-NEXT: PI Call Begin : piextDeviceSelectBinary
@@ -86,28 +55,9 @@ int main() {
8655
// CHECK-NEXT: kernel_name :
8756
// CHECK-NEXT: sycl_device : CPU
8857
// CHECK-NEXT: PI Call Begin : piextDeviceSelectBinary
89-
// CHECK-NEXT: PI Call Begin : piDeviceGetInfo
90-
// CHECK-NEXT: PI Call Begin : piDeviceGetInfo
91-
// CHECK-NEXT: PI Call Begin : piDeviceGetInfo
92-
// CHECK-NEXT: PI Call Begin : piDeviceGetInfo
93-
// CHECK-NEXT: PI Call Begin : piDeviceGetInfo
94-
// CHECK-NEXT: PI Call Begin : piDeviceGetInfo
95-
// CHECK-NEXT: PI Call Begin : piPlatformGetInfo
96-
// CHECK-NEXT: PI Call Begin : piPlatformGetInfo
97-
// CHECK-NEXT: PI Call Begin : piDeviceGetInfo
98-
// CHECK-NEXT: PI Call Begin : piPlatformGetInfo
99-
// CHECK-NEXT: PI Call Begin : piPlatformGetInfo
100-
// CHECK-NEXT: PI Call Begin : piProgramCreate
58+
// CHECK: PI Call Begin : piProgramCreate
10159
// CHECK-NEXT: PI Call Begin : piProgramBuild
102-
// CHECK-NEXT: PI Call Begin : piDeviceGetInfo
103-
// CHECK-NEXT: PI Call Begin : piDeviceGetInfo
104-
// CHECK-NEXT: PI Call Begin : piDeviceGetInfo
105-
// CHECK-NEXT: PI Call Begin : piDeviceGetInfo
106-
// CHECK-NEXT: PI Call Begin : piDeviceGetInfo
107-
// CHECK-NEXT: PI Call Begin : piDeviceGetInfo
108-
// CHECK-NEXT: PI Call Begin : piPlatformGetInfo
109-
// CHECK-NEXT: PI Call Begin : piPlatformGetInfo
110-
// CHECK-NEXT: PI Call Begin : piKernelCreate
60+
// CHECK: PI Call Begin : piKernelCreate
11161
// CHECK-NEXT: PI Call Begin : piKernelSetExecInfo
11262
// CHECK-NEXT: PI Call Begin : piextKernelSetArgPointer
11363
// CHECK-NEXT: PI Call Begin : piKernelGetGroupInfo
@@ -120,7 +70,7 @@ int main() {
12070
// CHECK-NEXT: from_source : false
12171
// CHECK-NEXT: kernel_name :
12272
// CHECK-NEXT: sycl_device : CPU
123-
// CHECK-NEXT: PI Call Begin : piextDeviceSelectBinary
73+
// CHECK: PI Call Begin : piextDeviceSelectBinary
12474
// CHECK-NEXT: Node create
12575
// CHECK-NEXT: from_source : false
12676
// CHECK-NEXT: kernel_name :
@@ -147,18 +97,18 @@ int main() {
14797
// CHECK-NEXT: from_source : false
14898
// CHECK-NEXT: kernel_name :
14999
// CHECK-NEXT: sycl_device : CPU
150-
// CHECK-NEXT: Wait begin
100+
// CHECK: Wait begin
151101
// CHECK-NEXT: PI Call Begin : piEventsWait
152102
// CHECK-NEXT: Wait end
153103
// CHECK-NEXT: PI Call Begin : piextUSMEnqueueMemcpy
154104
// CHECK-NEXT: PI Call Begin : piEventRelease
155105
// CHECK-NEXT: Wait begin
156-
// CHECK-NEXT: sym_line_no : 34
106+
// CHECK-NEXT: sym_line_no : 30
157107
// CHECK-NEXT: sym_function_name : main
158108
// CHECK-NEXT: sycl_device : CPU
159109
// CHECK-NEXT: PI Call Begin : piQueueFinish
160110
// CHECK-NEXT: Wait end
161-
// CHECK-NEXT: sym_line_no : 34
111+
// CHECK-NEXT: sym_line_no : 30
162112
// CHECK-NEXT: sym_function_name : main
163113
// CHECK-NEXT: sycl_device : CPU
164114
// CHECK-NEXT: PI Call Begin : piEventRelease

SYCL/lit.cfg.py

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -314,17 +314,18 @@
314314
config.available_features.add('sycl-ls')
315315

316316
# TODO properly set XPTIFW include and runtime dirs
317-
if find_executable('sycl-ls'):
318-
sycl_ls_full_path = find_executable('sycl-ls')
319-
sycl_ls_loc = os.path.dirname(sycl_ls_full_path)
320-
xptifw_lib = ""
321-
if platform.system() == "Linux":
322-
xptifw_lib = os.path.join(sycl_ls_loc, '..', 'lib', 'libxptifw.so')
323-
elif platform.system() == "Windows":
324-
xptifw_lib = os.path.join(sycl_ls_loc, 'xptifw.dll')
325-
if (os.path.exists(xptifw_lib)):
326-
config.available_features.add('xptifw')
327-
config.substitutions.append(('%xptifw_lib', xptifw_lib))
317+
xptifw_lib = os.path.join(config.dpcpp_root_dir, 'lib')
318+
xptifw_dispatcher = ""
319+
if platform.system() == "Linux":
320+
xptifw_dispatcher = os.path.join(xptifw_lib, 'libxptifw.so')
321+
elif platform.system() == "Windows":
322+
xptifw_dispatcher = os.path.join(config.dpcpp_root_dir, 'bin', 'xptifw.dll')
323+
xptifw_includes = os.path.join(config.dpcpp_root_dir, 'include')
324+
if os.path.exists(xptifw_lib) and os.path.exists(os.path.join(xptifw_includes, 'xpti', 'xpti_trace_framework.h')):
325+
config.available_features.add('xptifw')
326+
config.substitutions.append(('%xptifw_lib', xptifw_lib))
327+
config.substitutions.append(('%xptifw_dispatcher', xptifw_dispatcher))
328+
config.substitutions.append(('%xptifw_includes', xptifw_includes))
328329

329330
llvm_tools = ["llvm-spirv", "llvm-link"]
330331
for llvm_tool in llvm_tools:

0 commit comments

Comments
 (0)