[Bf-blender-cvs] [47dd42485e1] master: Cycles: fix and enable JIT oneAPI CentOS7 builds for drivers 23570+
Xavier Hallade
noreply at git.blender.org
Tue Jul 12 15:55:30 CEST 2022
Commit: 47dd42485e19106601167f6be7b5960c4be25167
Author: Xavier Hallade
Date: Tue Jul 12 15:45:46 2022 +0200
Branches: master
https://developer.blender.org/rB47dd42485e19106601167f6be7b5960c4be25167
Cycles: fix and enable JIT oneAPI CentOS7 builds for drivers 23570+
The current specific CentOS7 workaround we have for AoT, which is to
disable __FAST_MATH__ by using -fhonor-nans, now also fixes the
compilation issue for JIT as well since at least driver 23570.
===================================================================
M intern/cycles/blender/addon/properties.py
M intern/cycles/kernel/CMakeLists.txt
M intern/cycles/kernel/device/oneapi/kernel.cpp
===================================================================
diff --git a/intern/cycles/blender/addon/properties.py b/intern/cycles/blender/addon/properties.py
index e88b65b5119..4a8854fd868 100644
--- a/intern/cycles/blender/addon/properties.py
+++ b/intern/cycles/blender/addon/properties.py
@@ -1560,7 +1560,7 @@ class CyclesPreferences(bpy.types.AddonPreferences):
if sys.platform.startswith("win"):
col.label(text="and Windows driver version 101.1660 or newer", icon='BLANK1')
elif sys.platform.startswith("linux"):
- col.label(text="and Linux driver version xx.xx.28000 or newer", icon='BLANK1')
+ col.label(text="and Linux driver version xx.xx.23570 or newer", icon='BLANK1')
elif device_type == 'METAL':
col.label(text="Requires Apple Silicon with macOS 12.2 or newer", icon='BLANK1')
col.label(text="or AMD with macOS 12.3 or newer", icon='BLANK1')
diff --git a/intern/cycles/kernel/CMakeLists.txt b/intern/cycles/kernel/CMakeLists.txt
index b893ff6ef24..57a26edff50 100644
--- a/intern/cycles/kernel/CMakeLists.txt
+++ b/intern/cycles/kernel/CMakeLists.txt
@@ -844,10 +844,9 @@ if(WITH_CYCLES_DEVICE_ONEAPI)
else()
list(APPEND sycl_compiler_flags -fPIC)
- # avoid getting __FAST_MATH__ to be defined for the graphics compiler on CentOS 7 until the compile-time issue it triggers gets fixed.
- if(WITH_CYCLES_ONEAPI_BINARIES)
- list(APPEND sycl_compiler_flags -fhonor-nans)
- endif()
+ # We avoid getting __FAST_MATH__ to be defined when building on CentOS 7 until the compilation crash
+ # it triggers at either AoT or JIT stages gets fixed.
+ list(APPEND sycl_compiler_flags -fhonor-nans)
# add $ORIGIN to cycles_kernel_oneapi.so rpath so libsycl.so and
# libpi_level_zero.so can be placed next to it and get found.
diff --git a/intern/cycles/kernel/device/oneapi/kernel.cpp b/intern/cycles/kernel/device/oneapi/kernel.cpp
index 82910d72105..300e201600c 100644
--- a/intern/cycles/kernel/device/oneapi/kernel.cpp
+++ b/intern/cycles/kernel/device/oneapi/kernel.cpp
@@ -670,10 +670,7 @@ bool oneapi_enqueue_kernel(KernelContext *kernel_context,
}
static const int lowest_supported_driver_version_win = 1011660;
-/* TODO: once Linux JIT compilation crash from CentOS generated spv is fixed, adjust version below.
- * Until then, set CYCLES_ONEAPI_ALL_DEVICES environment variable to avoid getting it filtered out.
- */
-static const int lowest_supported_driver_version_neo = 28000;
+static const int lowest_supported_driver_version_neo = 23570;
static int parse_driver_build_version(const sycl::device &device)
{
More information about the Bf-blender-cvs
mailing list