<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Embree cmake sycl not working in Intel® Embree Ray Tracing Kernels</title>
    <link>https://community.intel.com/t5/Intel-Embree-Ray-Tracing-Kernels/Embree-cmake-sycl-not-working/m-p/1499358#M962</link>
    <description>&lt;P&gt;Hi Freibold,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank you very much for getting back to me.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I have&amp;nbsp; modified my Cmake as below according to your instructions&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;However, the problem preserve.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;``` cmake
cmake_minimum_required(VERSION 3.22.1)&lt;BR /&gt;set(CMAKE_CXX_COMPILER icpx)&lt;BR /&gt;set(CMAKE_C_COMPILER icx)&lt;BR /&gt;set(EMBREE_SYCL_SUPPORT ON)&lt;BR /&gt;&lt;BR /&gt;project(HELLOEMBREE)&lt;BR /&gt;set(embree_DIR /lib/embree-4.1.0.x86_64.linux/lib/cmake/embree-4.1.0/)&lt;BR /&gt;set(TBB_DIR /lib/oneapi-tbb-2021.2.0/lib/cmake/tbb/)&lt;BR /&gt;FIND_PACKAGE(IntelSYCL REQUIRED)&lt;BR /&gt;FIND_PACKAGE(embree 4 REQUIRED)&lt;BR /&gt;FIND_PACKAGE(TBB REQUIRED)&lt;BR /&gt;&lt;BR /&gt;add_executable(HELLOEMBREE embreeSyclTest.cpp)&lt;BR /&gt;TARGET_LINK_LIBRARIES(HELLOEMBREE embree)&lt;BR /&gt;TARGET_LINK_LIBRARIES(HELLOEMBREE TBB::tbb)&lt;BR /&gt;&lt;BR /&gt;add_sycl_to_target(&lt;BR /&gt;TARGET HELLOEMBREE&lt;BR /&gt;SOURCES embreeSyclTest.cpp)&lt;BR /&gt;```&amp;nbsp;&lt;/PRE&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Then I checked my hardware driver by running&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;PRE&gt;```console
peizhao@ENG-8502:~/embree_test/syclEmbree$ lspci -v |grep -A8 VGA
```&lt;/PRE&gt;&lt;/DIV&gt;&lt;DIV&gt;Which gives me the following error&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;PRE&gt;```console
lspci: Unable to load libkmod resources: error -2
```&lt;/PRE&gt;&lt;DIV&gt;also, the &lt;STRONG&gt;clinfo&lt;/STRONG&gt; for &lt;STRONG&gt;intel graphics&lt;/STRONG&gt; doesn't give me anything&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Is that mean I don't have the proper graph card to run sycl and therefore the system automatically set&amp;nbsp;&lt;STRONG&gt;EMBREE_SYCL_SUPPORT&lt;/STRONG&gt;&amp;nbsp;to&lt;STRONG&gt; OFF.&lt;/STRONG&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;So I can't run the sycl embree code on a non-intel machine even just in CPU (I can get sycl code running on the current environment just not GPU)?&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Best regards,&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Tue, 27 Jun 2023 01:30:06 GMT</pubDate>
    <dc:creator>peizhao</dc:creator>
    <dc:date>2023-06-27T01:30:06Z</dc:date>
    <item>
      <title>Embree cmake sycl not working</title>
      <link>https://community.intel.com/t5/Intel-Embree-Ray-Tracing-Kernels/Embree-cmake-sycl-not-working/m-p/1496851#M960</link>
      <description>&lt;P class=""&gt;&lt;SPAN class=""&gt;Hi,&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&amp;nbsp;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;I try to build a cycle-based Embree application with Cmake as attached below:&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&amp;nbsp;&lt;/P&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;STRONG&gt;&lt;EM&gt;&lt;SPAN class=""&gt;cmake_minimum_required(VERSION 3.22.1)&lt;/SPAN&gt;&lt;/EM&gt;&lt;/STRONG&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;STRONG&gt;&lt;EM&gt;&lt;SPAN class=""&gt;set(CMAKE_CXX_COMPILER icpx)&lt;/SPAN&gt;&lt;/EM&gt;&lt;/STRONG&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;STRONG&gt;&lt;EM&gt;&lt;SPAN class=""&gt;set(CMAKE_C_COMPILER icx)&lt;/SPAN&gt;&lt;/EM&gt;&lt;/STRONG&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;STRONG&gt;&lt;EM&gt;&lt;SPAN class=""&gt;set(EMBREE_SYCL_SUPPORT ON)&lt;/SPAN&gt;&lt;/EM&gt;&lt;/STRONG&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;STRONG&gt;&lt;EM&gt;&lt;SPAN class=""&gt;project(HELLOEMBREE)&lt;/SPAN&gt;&lt;/EM&gt;&lt;/STRONG&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;STRONG&gt;&lt;EM&gt;&lt;SPAN class=""&gt;set(embree_DIR /mnt/d/embree-4.1.0.x86_64.linux/lib/cmake/embree-4.1.0/)&lt;/SPAN&gt;&lt;/EM&gt;&lt;/STRONG&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;STRONG&gt;&lt;EM&gt;&lt;SPAN class=""&gt;set(TBB_DIR /mnt/d/oneapi-tbb-2021.2.0/lib/cmake/tbb/)&lt;/SPAN&gt;&lt;/EM&gt;&lt;/STRONG&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;STRONG&gt;&lt;EM&gt;&lt;SPAN class=""&gt;FIND_PACKAGE(IntelSYCL REQUIRED)&lt;/SPAN&gt;&lt;/EM&gt;&lt;/STRONG&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;STRONG&gt;&lt;EM&gt;&lt;SPAN class=""&gt;FIND_PACKAGE(embree 4 REQUIRED)&lt;/SPAN&gt;&lt;/EM&gt;&lt;/STRONG&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;STRONG&gt;&lt;EM&gt;&lt;SPAN class=""&gt;add_executable(HELLOEMBREE embreeTest.cpp)&lt;/SPAN&gt;&lt;/EM&gt;&lt;/STRONG&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;STRONG&gt;&lt;EM&gt;&lt;SPAN class=""&gt;TARGET_LINK_LIBRARIES(HELLOEMBREE embree)&lt;/SPAN&gt;&lt;/EM&gt;&lt;/STRONG&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;STRONG&gt;&lt;EM&gt;&lt;SPAN class=""&gt;add_sycl_to_target(&lt;/SPAN&gt;&lt;/EM&gt;&lt;/STRONG&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;STRONG&gt;&lt;EM&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; TARGET HELLOEMBREE&lt;/SPAN&gt;&lt;/EM&gt;&lt;/STRONG&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;STRONG&gt;&lt;EM&gt;&lt;SPAN class=""&gt;&amp;nbsp; &amp;nbsp; SOURCES embreeTest.cpp&lt;/SPAN&gt;&lt;/EM&gt;&lt;/STRONG&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;STRONG&gt;&lt;EM&gt;&lt;SPAN class=""&gt;&amp;nbsp; )&lt;/SPAN&gt;&lt;/EM&gt;&lt;/STRONG&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;P class=""&gt;&amp;nbsp;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;While the code I was running was one of the examples codes online&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;A class="" href="https://github.com/embree/embree/blob/master/tutorials/minimal/minimal_sycl.cpp%C2%A0" target="_self" rel="nofollow noopener noreferrer"&gt;&lt;SPAN class=""&gt;embreeTest.cpp&lt;/SPAN&gt;&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P class=""&gt;&amp;nbsp;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;After Cmake generates the make file in the build directory, I try to build the code using&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;EM&gt;&lt;STRONG&gt;&lt;SPAN class=""&gt;make&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/EM&gt;&lt;SPAN class=""&gt;command the following error occurs:&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&amp;nbsp;&lt;/P&gt;&lt;P class=""&gt;&lt;EM&gt;&lt;STRONG&gt;&lt;SPAN class=""&gt;/mnt/d/Embree_helloWorld/embreeTest.cpp:108:22: error: use of undeclared identifier 'rtcNewSYCLDevice'&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&lt;STRONG&gt;&lt;SPAN class=""&gt;RTCDevice device = rtcNewSYCLDevice(sycl_context, "");&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&lt;STRONG&gt;&lt;SPAN class=""&gt;^&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&lt;STRONG&gt;&lt;SPAN class=""&gt;/mnt/d/Embree_helloWorld/embreeTest.cpp:109:3: error: use of undeclared identifier 'rtcSetDeviceSYCLDevice'&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&lt;STRONG&gt;&lt;SPAN class=""&gt;rtcSetDeviceSYCLDevice(device,sycl_device);&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&lt;STRONG&gt;&lt;SPAN class=""&gt;^&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&lt;STRONG&gt;&lt;SPAN class=""&gt;/mnt/d/Embree_helloWorld/embreeTest.cpp:303:32: error: use of undeclared identifier 'rtcSYCLDeviceSelector'&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&lt;STRONG&gt;&lt;SPAN class=""&gt;sycl_device = sycl::device(rtcSYCLDeviceSelector);&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&lt;STRONG&gt;&lt;SPAN class=""&gt;^&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&lt;STRONG&gt;&lt;SPAN class=""&gt;/mnt/d/Embree_helloWorld/embreeTest.cpp:306:5: error: use of undeclared identifier 'embree'&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&lt;STRONG&gt;&lt;SPAN class=""&gt;embree::printAllSYCLDevices();&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&lt;STRONG&gt;&lt;SPAN class=""&gt;^&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&lt;STRONG&gt;&lt;SPAN class=""&gt;4 errors generated.&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&lt;STRONG&gt;&lt;SPAN class=""&gt;gmake[2]: *** [CMakeFiles/HELLOEMBREE.dir/build.make:76: CMakeFiles/HELLOEMBREE.dir/embreeTest.cpp.o] Error 1&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&lt;STRONG&gt;&lt;SPAN class=""&gt;gmake[1]: *** [CMakeFiles/Makefile2:83: CMakeFiles/HELLOEMBREE.dir/all] Error 2&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&lt;STRONG&gt;&lt;SPAN class=""&gt;gmake: *** [Makefile:91: all] Error 2&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/EM&gt;&lt;/P&gt;&lt;P class=""&gt;&amp;nbsp;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;here is platform information:&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;System: window11 wsl2&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;cmake version: 3.22.1&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;dpcpp version: Intel(R) oneAPI DPC++/C++ Compiler 2023.1.0 (2023.1.0.20230320)&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&amp;nbsp;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;Thanks in advance cheers&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Sun, 18 Jun 2023 20:50:54 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Embree-Ray-Tracing-Kernels/Embree-cmake-sycl-not-working/m-p/1496851#M960</guid>
      <dc:creator>peizhao</dc:creator>
      <dc:date>2023-06-18T20:50:54Z</dc:date>
    </item>
    <item>
      <title>Re: Embree cmake sycl not working</title>
      <link>https://community.intel.com/t5/Intel-Embree-Ray-Tracing-Kernels/Embree-cmake-sycl-not-working/m-p/1499124#M961</link>
      <description>&lt;P&gt;Hi and thanks for reaching out,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I've verified that Embree should work with SYCL and WSL(2). When trying to reproduce your problem I've run into a different issue though. The TBB setup was not complete in your CMakeLists.txt. Here is the fixed CMakeLists.txt that worked for me:&lt;/P&gt;&lt;LI-CODE lang="bash"&gt;cmake_minimum_required(VERSION 3.22.1)

set(CMAKE_CXX_COMPILER icpx)
set(CMAKE_C_COMPILER icx)
set(EMBREE_SYCL_SUPPORT ON)

project(HELLOEMBREE)

set(embree_DIR path-to-embree/lib/cmake/embree-4.1.0/)
set(TBB_DIR path-to-tbb/lib/cmake/tbb/)

FIND_PACKAGE(IntelSYCL REQUIRED)
FIND_PACKAGE(embree 4 REQUIRED)
FIND_PACKAGE(TBB REQUIRED)

add_executable(HELLOEMBREE embreeTest.cpp)
TARGET_LINK_LIBRARIES(HELLOEMBREE embree)
TARGET_LINK_LIBRARIES(HELLOEMBREE TBB::tbb)

add_sycl_to_target(
  TARGET HELLOEMBREE
  SOURCES embreeTest.cpp
)&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Make sure to source the oneAPI DPC++ compiler environment before you run &lt;STRONG&gt;cmake&lt;/STRONG&gt;, i.e&lt;/P&gt;&lt;LI-CODE lang="bash"&gt;source /opt/intel/oneapi/compiler/latest/env/vars.sh&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;Then, you should be able to run &lt;STRONG&gt;cmake&lt;/STRONG&gt; successfully. The output I get on my system is&lt;/P&gt;&lt;LI-CODE lang="bash"&gt;freibold@freibold-intel:~/test$ cmake -B build
-- The C compiler identification is IntelLLVM 2023.1.0
-- The CXX compiler identification is IntelLLVM 2023.1.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /opt/intel/oneapi/compiler/2023.1.0/linux/bin/icx - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /opt/intel/oneapi/compiler/2023.1.0/linux/bin/icpx - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found IntelSYCL: /opt/intel/oneapi/compiler/2023.1.0/linux/include (found version "202001")
-- Configuring done
-- Generating done
-- Build files have been written to: /home/freibold/test/build&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;After that I could compile&lt;/P&gt;&lt;LI-CODE lang="bash"&gt;freibold@freibold-intel:~/test$ cmake --build build
[ 50%] Building CXX object CMakeFiles/HELLOEMBREE.dir/embreeTest.cpp.o
[100%] Linking CXX executable HELLOEMBREE
[100%] Built target HELLOEMBREE&lt;/LI-CODE&gt;&lt;P&gt;and run&lt;/P&gt;&lt;LI-CODE lang="bash"&gt;freibold@freibold-intel:~/test$ build/HELLOEMBREE
0.330000, 0.330000, -1.000000: Found intersection on geometry 0, primitive 0 at tfar=1.000000
1.000000, 1.000000, -1.000000: Did not find any intersection.&lt;/LI-CODE&gt;&lt;P&gt;everything fine inside WSL.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Please check if there are differences in the CMake log on your side. Also, make sure to fully remove the build folder and try again. The compilation error you reported (and I can't reproduce) could be due to a broken CMake configuration where you ran CMake with EMBREE_SYCL_SUPPORT=OFF first and then added the SET(EMBREE_SYCL_SUPPORT ON) line to the CMakeLists file. Maybe this confused CMake.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Also, be sure to install the correct drivers inside the Ubuntu subsystem as described here:&amp;nbsp;&lt;A href="https://dgpu-docs.intel.com/installation-guides/ubuntu/ubuntu-jammy-arc.html" target="_blank"&gt;https://dgpu-docs.intel.com/installation-guides/ubuntu/ubuntu-jammy-arc.html&lt;/A&gt;. You can (and probably should) skip step 2 and 3 if you are using Ubuntu via WSL and not natively. To check if the GPU is available within WSL install &lt;STRONG&gt;clinfo&lt;/STRONG&gt;&lt;/P&gt;&lt;LI-CODE lang="bash"&gt;sudo apt install clinfo&lt;/LI-CODE&gt;&lt;P&gt;and run it. You should be able to find a "Intel(R) Graphics" device in the output. For example, on my system I get&lt;/P&gt;&lt;LI-CODE lang="bash"&gt;freibold@freibold-intel:~/test$ clinfo | grep "Intel(R) Graphics"
  Device Name                                     Intel(R) Graphics [0x56a0]
    Device Name                                   Intel(R) Graphics [0x56a0]
    Device Name                                   Intel(R) Graphics [0x56a0]
    Device Name                                   Intel(R) Graphics [0x56a0]&lt;/LI-CODE&gt;&lt;P&gt;The device number might be different for you, 0x56a0 is the code for an A770.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Hope this helps, if not, please report back the CMake output from your system.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Best,&lt;/P&gt;&lt;P&gt;Embree Team&lt;/P&gt;</description>
      <pubDate>Mon, 26 Jun 2023 12:10:47 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Embree-Ray-Tracing-Kernels/Embree-cmake-sycl-not-working/m-p/1499124#M961</guid>
      <dc:creator>FlorianR_Intel</dc:creator>
      <dc:date>2023-06-26T12:10:47Z</dc:date>
    </item>
    <item>
      <title>Re: Embree cmake sycl not working</title>
      <link>https://community.intel.com/t5/Intel-Embree-Ray-Tracing-Kernels/Embree-cmake-sycl-not-working/m-p/1499358#M962</link>
      <description>&lt;P&gt;Hi Freibold,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank you very much for getting back to me.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I have&amp;nbsp; modified my Cmake as below according to your instructions&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;However, the problem preserve.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;``` cmake
cmake_minimum_required(VERSION 3.22.1)&lt;BR /&gt;set(CMAKE_CXX_COMPILER icpx)&lt;BR /&gt;set(CMAKE_C_COMPILER icx)&lt;BR /&gt;set(EMBREE_SYCL_SUPPORT ON)&lt;BR /&gt;&lt;BR /&gt;project(HELLOEMBREE)&lt;BR /&gt;set(embree_DIR /lib/embree-4.1.0.x86_64.linux/lib/cmake/embree-4.1.0/)&lt;BR /&gt;set(TBB_DIR /lib/oneapi-tbb-2021.2.0/lib/cmake/tbb/)&lt;BR /&gt;FIND_PACKAGE(IntelSYCL REQUIRED)&lt;BR /&gt;FIND_PACKAGE(embree 4 REQUIRED)&lt;BR /&gt;FIND_PACKAGE(TBB REQUIRED)&lt;BR /&gt;&lt;BR /&gt;add_executable(HELLOEMBREE embreeSyclTest.cpp)&lt;BR /&gt;TARGET_LINK_LIBRARIES(HELLOEMBREE embree)&lt;BR /&gt;TARGET_LINK_LIBRARIES(HELLOEMBREE TBB::tbb)&lt;BR /&gt;&lt;BR /&gt;add_sycl_to_target(&lt;BR /&gt;TARGET HELLOEMBREE&lt;BR /&gt;SOURCES embreeSyclTest.cpp)&lt;BR /&gt;```&amp;nbsp;&lt;/PRE&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Then I checked my hardware driver by running&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;PRE&gt;```console
peizhao@ENG-8502:~/embree_test/syclEmbree$ lspci -v |grep -A8 VGA
```&lt;/PRE&gt;&lt;/DIV&gt;&lt;DIV&gt;Which gives me the following error&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;PRE&gt;```console
lspci: Unable to load libkmod resources: error -2
```&lt;/PRE&gt;&lt;DIV&gt;also, the &lt;STRONG&gt;clinfo&lt;/STRONG&gt; for &lt;STRONG&gt;intel graphics&lt;/STRONG&gt; doesn't give me anything&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Is that mean I don't have the proper graph card to run sycl and therefore the system automatically set&amp;nbsp;&lt;STRONG&gt;EMBREE_SYCL_SUPPORT&lt;/STRONG&gt;&amp;nbsp;to&lt;STRONG&gt; OFF.&lt;/STRONG&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;So I can't run the sycl embree code on a non-intel machine even just in CPU (I can get sycl code running on the current environment just not GPU)?&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Best regards,&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 27 Jun 2023 01:30:06 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Embree-Ray-Tracing-Kernels/Embree-cmake-sycl-not-working/m-p/1499358#M962</guid>
      <dc:creator>peizhao</dc:creator>
      <dc:date>2023-06-27T01:30:06Z</dc:date>
    </item>
    <item>
      <title>Re: Embree cmake sycl not working</title>
      <link>https://community.intel.com/t5/Intel-Embree-Ray-Tracing-Kernels/Embree-cmake-sycl-not-working/m-p/1499474#M963</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;generally, you should be able to compile the SYCL applications also when you do not have a Intel GPU in your system. For Embree, you only need some version of the Intel DPC++ compiler. However, calling (during runtime) the SYCL related API of Embree (e.g rtcNewSYCLDevice) will only succeed when a Intel GPU is properly installed on the system.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I assumed you have an Intel GPU and want to run Embree in WSL with GPU support. Is that correct? Which version of Embree did you download/install exactly? We provide SYCL and non-SYCL versions of Embree here&amp;nbsp;&lt;A href="https://github.com/embree/embree/releases" target="_blank" rel="noopener"&gt;https://github.com/embree/embree/releases&lt;/A&gt;&lt;/P&gt;&lt;P&gt;and the non-SYCL version does not have the&amp;nbsp;&lt;EM&gt;&lt;STRONG&gt;&lt;SPAN class=""&gt;rtcNewSYCLDevice&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/EM&gt;&lt;SPAN class=""&gt; API call. Maybe you downloaded the wrong package?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;If you still get the same '&lt;EM&gt;&lt;STRONG&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;error: use of undeclared identifier 'rtcNewSYCLDevice' &lt;/STRONG&gt;&lt;/EM&gt;error, can you please attach a complete log of your cmake configure and build steps?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;When you can successfully compile Embree but still have issues running your application I suggest to try a Embree tutorial first. For example, embree_triangle_geometry and embree_triangle_geometry_ispc should always work, but embree_triangle_geometry_sycl only works, if a Intel GPU is available on the system. You can also check the output of&amp;nbsp;&lt;STRONG&gt;embree_info&amp;nbsp;&lt;/STRONG&gt;which prints all Embree compatible and incompatible SYCL devices found on the system. On my WSL system with a A770 the output is:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="bash"&gt;freibold@freibold-intel:~/test/embree-4.1.0.sycl/bin$ source /opt/intel/oneapi/compiler/latest/env/vars.sh
freibold@freibold-intel:~/test/embree-4.1.0.sycl/bin$ ./embree_info

==================================================================================
  The SYCL support of Embree is in beta phase. Current functionality, quality,
  and GPU performance may not reflect that of the final product. Please read the
  documentation section "Embree SYCL Known Issues" for known limitations.
==================================================================================


Embree Ray Tracing Kernels 4.1.0-beta (0fcb306c9176221219dd15e27fe0527ed334948f)
  Compiler  : CLANG 16.0.0 (icx 2023.1.0.20230320)
  Build     : Release
  Platform  : Linux (64bit)
  CPU       : Unknown CPU (GenuineIntel)
   Threads  : 32
   ISA      : XMM YMM SSE SSE2 SSE3 SSSE3 SSE4.1 SSE4.2 POPCNT AVX F16C RDRAND AVX2 FMA3 LZCNT BMI1 BMI2
   Targets  : SSE SSE2 SSE3 SSSE3 SSE4.1 SSE4.2 AVX AVXI AVX2
   MXCSR    : FTZ=1, DAZ=1
  Config
    Threads : default
    ISA     : XMM YMM SSE SSE2 SSE3 SSSE3 SSE4.1 SSE4.2 POPCNT AVX F16C RDRAND AVX2 FMA3 LZCNT BMI1 BMI2
    Targets : SSE SSE2 SSE3 SSSE3 SSE4.1 SSE4.2 AVX AVXI AVX2  (supported)
              SSE2 SSE4.2 AVX AVX2 AVX512  (compile time enabled)
    Features: raymasks intersection_filter
    Tasking : TBB2021.9 TBB_header_interface_12090 TBB_lib_interface_12090

  Platform              : Intel(R) Level-Zero
    Device              : Intel(R) Graphics [0x56a0]
    Max Work Group Size : 1024
    Max Compute Units   : 512

Embree compatible SYCL device
 SYCL Device:
  Name: Intel(R) Graphics [0x56a0]
  Platform: Intel(R) Level-Zero
  Type: GPU
  Max Work Group Size : 1024
  Max Compute Units   : 512

Embree incompatible SYCL device
 SYCL Device:
  Name: Intel(R) Graphics [0x56a0]
  Platform: Intel(R) OpenCL Graphics
  Type: GPU
  Max Work Group Size : 1024
  Max Compute Units   : 512&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;From my experience,&lt;STRONG&gt; lspci&lt;/STRONG&gt; won't show you a discrete Intel graphics card in WSL. The&amp;nbsp;&lt;STRONG&gt;clinfo&lt;/STRONG&gt;&amp;nbsp;/ &lt;STRONG&gt;embree_info&lt;/STRONG&gt; tool are more helpful in this case.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;If nothing helps: Have you tried to build/run Embree 4 on Windows natively without WSL? Did that work?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Best,&lt;/P&gt;&lt;P&gt;Embree Team&lt;/P&gt;</description>
      <pubDate>Tue, 27 Jun 2023 08:13:46 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Embree-Ray-Tracing-Kernels/Embree-cmake-sycl-not-working/m-p/1499474#M963</guid>
      <dc:creator>FlorianR_Intel</dc:creator>
      <dc:date>2023-06-27T08:13:46Z</dc:date>
    </item>
    <item>
      <title>Re: Embree cmake sycl not working</title>
      <link>https://community.intel.com/t5/Intel-Embree-Ray-Tracing-Kernels/Embree-cmake-sycl-not-working/m-p/1499824#M964</link>
      <description>&lt;P&gt;&lt;SPAN&gt;Hi Freibold,&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Thank you for the replay.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;You are right that I installed the wrong Embree version without Sycl support .&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;The code is successfully compiled, However, the following error occurs during execution, even after installing the GPU driver:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;&lt;STRONG&gt;No Embree compatible SYCL GPU device found.&lt;/STRONG&gt;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Here is the information for my Intel GPU:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="peizhao_0-1687922960426.png" style="width: 400px;"&gt;&lt;img src="https://community.intel.com/t5/image/serverpage/image-id/42938i036B9E3CE6FA210F/image-size/medium/is-moderation-mode/true?v=v2&amp;amp;px=400&amp;amp;whitelist-exif-data=Orientation%2CResolution%2COriginalDefaultFinalSize%2CCopyright" role="button" title="peizhao_0-1687922960426.png" alt="peizhao_0-1687922960426.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Just to confirm, this GPU is not sycl-Embree capable right?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Furthermore, I am currently working on a heterogenous computing project, so it would be interesting to know if Embree will support other vendors' GPUs in the future.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Best regard,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 28 Jun 2023 03:33:31 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Embree-Ray-Tracing-Kernels/Embree-cmake-sycl-not-working/m-p/1499824#M964</guid>
      <dc:creator>peizhao</dc:creator>
      <dc:date>2023-06-28T03:33:31Z</dc:date>
    </item>
    <item>
      <title>Re: Embree cmake sycl not working</title>
      <link>https://community.intel.com/t5/Intel-Embree-Ray-Tracing-Kernels/Embree-cmake-sycl-not-working/m-p/1499825#M965</link>
      <description>&lt;P&gt;Also would be possible to code in Sycl and use Embree as a third-party library?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;As I just need features like intersection checking and geometric define from Embree&amp;nbsp;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 28 Jun 2023 03:42:49 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Embree-Ray-Tracing-Kernels/Embree-cmake-sycl-not-working/m-p/1499825#M965</guid>
      <dc:creator>peizhao</dc:creator>
      <dc:date>2023-06-28T03:42:49Z</dc:date>
    </item>
    <item>
      <title>Re: Embree cmake sycl not working</title>
      <link>https://community.intel.com/t5/Intel-Embree-Ray-Tracing-Kernels/Embree-cmake-sycl-not-working/m-p/1499894#M966</link>
      <description>&lt;P&gt;Yes, this (integrated) GPU is not supported by Embree because it does not have ray tracing hardware capabilities. Metor Lake will be the first generation of iGPU that Embree supports.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;With regards to support of other vendors: We are looking into this and ideally would like to add support for other vendors, too. But there are many obstacles and we can give you no timeline or guarantee that we will achieve this.&lt;/P&gt;</description>
      <pubDate>Wed, 28 Jun 2023 08:23:26 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Embree-Ray-Tracing-Kernels/Embree-cmake-sycl-not-working/m-p/1499894#M966</guid>
      <dc:creator>FlorianR_Intel</dc:creator>
      <dc:date>2023-06-28T08:23:26Z</dc:date>
    </item>
    <item>
      <title>Re: Embree cmake sycl not working</title>
      <link>https://community.intel.com/t5/Intel-Embree-Ray-Tracing-Kernels/Embree-cmake-sycl-not-working/m-p/1499896#M967</link>
      <description>&lt;P&gt;I don't understand this question. How else would you use Embree if not as a third-party library?&lt;/P&gt;</description>
      <pubDate>Wed, 28 Jun 2023 08:26:45 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Embree-Ray-Tracing-Kernels/Embree-cmake-sycl-not-working/m-p/1499896#M967</guid>
      <dc:creator>FlorianR_Intel</dc:creator>
      <dc:date>2023-06-28T08:26:45Z</dc:date>
    </item>
    <item>
      <title>Re: Embree cmake sycl not working</title>
      <link>https://community.intel.com/t5/Intel-Embree-Ray-Tracing-Kernels/Embree-cmake-sycl-not-working/m-p/1499960#M968</link>
      <description>&lt;P&gt;Sorry for the confusing question, what I am trying to say is.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Rather than use Sycl-based Embree functions such as&amp;nbsp;&amp;nbsp;&lt;STRONG&gt;rtcSYCLDeviceSelector&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;can I use functions such as &lt;STRONG&gt;initializeScene&amp;nbsp;&lt;/STRONG&gt;which is no-Sycl specified and use those functions in Sycl implementation as normal cpp function call?&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The logic behind this thinking is Sycl can be compiled into heterogeneous devices while using a normal cpp library.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;From my understanding, the non-Sycl Embree library can also be treated like a standard cpp library and therefore can be used in a Sycl implementation (SInce in these cases I am only interested in those optimized features in Embree such as creating a scene and finding the intersection between the ray and the scene)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Sorry if this makes no sense to you as I am quite a beginner for heterogeneous systems.&lt;/P&gt;</description>
      <pubDate>Wed, 28 Jun 2023 13:26:25 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Embree-Ray-Tracing-Kernels/Embree-cmake-sycl-not-working/m-p/1499960#M968</guid>
      <dc:creator>peizhao</dc:creator>
      <dc:date>2023-06-28T13:26:25Z</dc:date>
    </item>
    <item>
      <title>Re: Embree cmake sycl not working</title>
      <link>https://community.intel.com/t5/Intel-Embree-Ray-Tracing-Kernels/Embree-cmake-sycl-not-working/m-p/1688559#M1010</link>
      <description>&lt;P&gt;Apologies to resurrect the thread. Is embree still targeting meteor lake iGPU support? There's a large project targeting intel GPU ray tracing support, and has some unique purchasing constraints, laptops will be easier.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 08 May 2025 18:44:44 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Embree-Ray-Tracing-Kernels/Embree-cmake-sycl-not-working/m-p/1688559#M1010</guid>
      <dc:creator>mklultra</dc:creator>
      <dc:date>2025-05-08T18:44:44Z</dc:date>
    </item>
    <item>
      <title>Re: Embree cmake sycl not working</title>
      <link>https://community.intel.com/t5/Intel-Embree-Ray-Tracing-Kernels/Embree-cmake-sycl-not-working/m-p/1688733#M1011</link>
      <description>&lt;P&gt;Yes meteor lake iGPUs are supported by Embree.&lt;/P&gt;</description>
      <pubDate>Fri, 09 May 2025 04:23:30 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Embree-Ray-Tracing-Kernels/Embree-cmake-sycl-not-working/m-p/1688733#M1011</guid>
      <dc:creator>SvenW_Intel</dc:creator>
      <dc:date>2025-05-09T04:23:30Z</dc:date>
    </item>
  </channel>
</rss>

