diff options
author | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2013-06-18 13:36:06 +0400 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2013-06-18 13:36:06 +0400 |
commit | d57c6748c4ebb37246caf25d4900ef6d5c16c0fe (patch) | |
tree | 08491bec3d7310f7df1e2171c8fb44a68d508a90 /intern/cycles/kernel/kernel_sse3.cpp | |
parent | 9131adca9f748f794c18c71d36f830a961c218b4 (diff) |
Cycles: optimization for BVH traveral on CPU's with SSE3, using code from Embree.
On the BMW scene, this gives roughly a 10% speedup overall with clang/gcc, and 30%
speedup with visual studio (2008). It turns out visual studio was optimizing the
existing code quite poorly compared to pretty good autovectorization by clang/gcc,
but hand written SSE code also gives a smaller speed boost there.
This code isn't enabled when using the hair minimum width feature yet, need to
make that work with the SSE code still.
Diffstat (limited to 'intern/cycles/kernel/kernel_sse3.cpp')
-rw-r--r-- | intern/cycles/kernel/kernel_sse3.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/intern/cycles/kernel/kernel_sse3.cpp b/intern/cycles/kernel/kernel_sse3.cpp index 6982570c59b..ccd3ee5ac74 100644 --- a/intern/cycles/kernel/kernel_sse3.cpp +++ b/intern/cycles/kernel/kernel_sse3.cpp @@ -22,6 +22,8 @@ #ifdef WITH_OPTIMIZED_KERNEL +#define __KERNEL_SSE3__ + #include "kernel.h" #include "kernel_compat_cpu.h" #include "kernel_math.h" |