Bug 2180613

Summary: Feature Request: oneAPI support for Cycles coming on Q3 2023
Product: [Fedora] Fedora Reporter: Alexander Koppe <koppe>
Component: blenderAssignee: Luya Tshimbalanga <luya_tfz>
Status: ASSIGNED --- QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 38CC: aekoroglu, code, design-devel, epel-packagers-sig, fzatlouk, koppe, kwizart, luya_tfz, promac
Target Milestone: ---Keywords: FutureFeature, SubFeature, Task
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

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.