Cycles: Add an AVX kernel for CPU rendering.
* AVX is available on Intel Sandy Bridge and newer and AMD Bulldozer and newer. * We don't use dedicated AVX intrinsics yet, but gcc auto vectorization gives a 3% performance improvement for Caminandes. Tested on an i5-3570, Linux x64. * No change for Windows yet, MSVC 2008 does not support AVX. Reviewed by: brecht Differential Revision: https://developer.blender.org/D216
This commit is contained in:
@@ -198,6 +198,12 @@ bool system_cpu_support_sse41()
|
||||
CPUCapabilities& caps = system_cpu_capabilities();
|
||||
return caps.sse && caps.sse2 && caps.sse3 && caps.ssse3 && caps.sse41;
|
||||
}
|
||||
|
||||
bool system_cpu_support_avx()
|
||||
{
|
||||
CPUCapabilities& caps = system_cpu_capabilities();
|
||||
return caps.sse && caps.sse2 && caps.sse3 && caps.ssse3 && caps.sse41 && caps.avx;
|
||||
}
|
||||
#else
|
||||
|
||||
bool system_cpu_support_sse2()
|
||||
@@ -210,6 +216,16 @@ bool system_cpu_support_sse3()
|
||||
return false;
|
||||
}
|
||||
|
||||
bool system_cpu_support_sse41()
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
bool system_cpu_support_avx()
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
CCL_NAMESPACE_END
|
||||
|
Reference in New Issue
Block a user