Cycles: Disable MNEE on RDNA4 GPUs
At the moment MNEE locks up Cycles, or has rendering artifacts on RDNA4 GPUs on WIndows. This commit disables MNEE on that configuration until a fix is avaliable. Pull Request: https://projects.blender.org/blender/blender/pulls/136980
This commit is contained in:
@@ -170,8 +170,15 @@ void device_hip_info(vector<DeviceInfo> &devices)
|
||||
|
||||
const bool is_rdna2_or_newer = hipIsRDNA2OrNewer(num);
|
||||
|
||||
/* Disable on RDNA1 due to apparent bug in HIP SDK 6.3. */
|
||||
/* Disable MNEE on devices that don't work properly with it.
|
||||
* Common symptoms are either rendering artifacts,
|
||||
* or renders that get stuck in the MNEE kernel.
|
||||
* These are most likely compiler bugs and can be re-enabled in the future. */
|
||||
# ifdef _WIN32
|
||||
info.has_mnee = is_rdna2_or_newer && !hipIsRDNA4OrNewer(num);
|
||||
# else
|
||||
info.has_mnee = is_rdna2_or_newer;
|
||||
# endif
|
||||
info.has_nanovdb = true;
|
||||
|
||||
info.has_gpu_queue = true;
|
||||
|
||||
@@ -77,6 +77,14 @@ static inline bool hipIsRDNA2OrNewer(const int hipDevId)
|
||||
return (major > 10 || (major == 10 && minor >= 3));
|
||||
}
|
||||
|
||||
static inline bool hipIsRDNA4OrNewer(const int hipDevId)
|
||||
{
|
||||
int major;
|
||||
hipDeviceGetAttribute(&major, hipDeviceAttributeComputeCapabilityMajor, hipDevId);
|
||||
|
||||
return (major >= 12);
|
||||
}
|
||||
|
||||
static inline bool hipNeedPreciseMath(const std::string &arch)
|
||||
{
|
||||
# ifdef _WIN32
|
||||
|
||||
Reference in New Issue
Block a user