Bug 2180613 - Feature Request: oneAPI support for Cycles coming on Q3 2023
Summary: Feature Request: oneAPI support for Cycles coming on Q3 2023
Keywords:
Status: ASSIGNED
Alias: None
Product: Fedora
Classification: Fedora
Component: blender
Version: 38
Hardware: x86_64
OS: Linux
unspecified
medium
Target Milestone: ---
Assignee: Luya Tshimbalanga
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2023-03-21 21:37 UTC by Alexander Koppe
Modified: 2023-06-30 01:10 UTC (History)
9 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed:
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Alexander Koppe 2023-03-21 21:37:50 UTC
With Intel Level Zero now available in the Fedora repositories, I think the version of Blender shipped with Fedora should be compiled with Cycles oneAPI support for Intel GPUs enabled, currently only CUDA and HIP are enabled

Comment 1 Luya Tshimbalanga 2023-03-22 01:34:37 UTC
Currently, SYCL 6.0+ is missing in the repository:

[...]
-- Could NOT find SYCL (missing: SYCL_LIBRARY SYCL_INCLUDE_DIR) 
-- Found LevelZero: /usr/lib64/libze_loader.so  
-- oneAPI not found, disabling WITH_CYCLES_DEVICE_ONEAPI
-- SYCL 6.0+ or Level Zero not found, disabling WITH_CYCLES_DEVICE_ONEAPI
[...]

One of Intel contributor is working on bring such support at this time of writing.

Comment 2 Alexander Koppe 2023-03-22 02:10:45 UTC
Is SYCL really a runtime dependency for Blender with oneAPI support? Because I can run Blender's own builds from their website (compiled with oneAPI support) just fine with only intel-compute-runtime and oneapi-level-zero installed from Fedora's repos.

It seems like SYCL is only required for compilation. But I guess Fedora's packaging guidelines require all build dependencies to also be available in the repository?

Comment 3 Luya Tshimbalanga 2023-03-22 08:04:29 UTC
According to version.cmake (https://projects.blender.org/blender/blender/src/branch/main/build_files/build_environment/cmake/versions.cmake) file from Blender source, minimal version 20220919 of dpcpp (Intel SYCL currently as nightly release) is needed for compilation.
https://github.com/intel/llvm/archive/refs/tags/sycl-nightly/

Logically, upstream Blender build uses compiler which is currently unavailable in Fedora repository.

Comment 4 Alexander Koppe 2023-04-15 19:48:32 UTC
Has any progress been made bringing sycl/dpcpp to Fedora yet or is there any way such progress can be followed somewhere?

Comment 5 Alexander Koppe 2023-06-12 23:31:32 UTC
I hope this doesn't come across as overly naggy, but is there any update on the state of this? Apparently there was already some work in progress to bring sycl to Fedora, but I suppose those plans haven't really materialized?

Comment 6 Luya Tshimbalanga 2023-06-20 04:54:47 UTC
Not yet so far.

Comment 7 Nicolas Chauvet (kwizart) 2023-06-20 08:02:01 UTC
It would be a first step to see if one can make a dedicated build using this content:
https://www.intel.com/content/www/us/en/developer/tools/oneapi/base-toolkit-download.html?operatingsystem=linux&distributions=dnf

For some reason, I was not able to install the toolkit on fedora-38...

Comment 8 Nicolas Chauvet (kwizart) 2023-06-20 09:35:58 UTC
Also maybe it worth to coordinate with frantisekz as he already has some components packaged as part of the intel-media-driver-free effort.
(https://copr.fedorainfracloud.org/coprs/frantisekz/intel-media-driver-free/packages/)

Comment 9 Luya Tshimbalanga 2023-06-29 00:53:04 UTC
Lets add aekoroglu.com  who is also interested to maintain the oneAPI stack and @frantisekzfrantisekz to possibly package oneAPI-dpcpp.

Comment 10 Ali Erdinc Koroglu 2023-06-29 10:23:02 UTC
Hello, I've started to work on oneAPI-dpcpp so this issue and the rest of the oneAPI-rendering-toolkit is in my OKRs to complete in Q3.

Comment 11 Luya Tshimbalanga 2023-06-30 01:10:07 UTC
Thanks Ali. Changing the title to reflect the progress.


Note You need to log in before you can comment on or make changes to this bug.