blender/intern
Stefan Werner 47da8dcbca Cycles: Improved thread order for better CUDA performance.
This patch puts threads that render the same pixel closer together,
as opposed to threads that render the same sample. Thus threads
within a warp are more coherent in memory access and control flow,
leading to performance improvements.

Example benchmarks on a Quadro RTX4000 (WDDM) on Windows 10:
Koro:                 4:23 ->  3:46
BMW:                  1:18 ->  1:25
Barbershop Interior: 17:52 -> 14:55
Classroom:            4:37 ->  3:45

Performance differences on OpenCL/AMD were hit and miss, some scenes
became faster, others lost significantly. Therefore, this is kept as
CUDA only change for now.
2019-03-14 11:45:58 +01:00
..
atomic Cleanup: remove redundant, invalid info from headers 2019-02-02 02:40:00 +11:00
audaspace Cleanup: remove redundant, invalid info from headers 2019-02-02 02:40:00 +11:00
clog Cleanup: remove redundant, invalid info from headers 2019-02-02 02:40:00 +11:00
container Cleanup: remove redundant, invalid info from headers 2019-02-02 02:40:00 +11:00
cycles Cycles: Improved thread order for better CUDA performance. 2019-03-14 11:45:58 +01:00
decklink Cleanup: remove redundant, invalid info from headers 2019-02-02 02:40:00 +11:00
dualcon Cleanup: remove redundant, invalid info from headers 2019-02-02 02:40:00 +11:00
eigen Cleanup: remove redundant, invalid info from headers 2019-02-02 02:40:00 +11:00
elbeem Cleanup: remove redundant, invalid info from headers 2019-02-02 02:40:00 +11:00
ffmpeg Cleanup: remove redundant, invalid info from headers 2019-02-02 02:40:00 +11:00
ghost Windows: refactor GHOST wintab handling. 2019-02-07 15:30:59 +01:00
glew-mx Cleanup: remove redundant, invalid info from headers 2019-02-02 02:40:00 +11:00
gpudirect Cleanup: remove redundant, invalid info from headers 2019-02-02 02:40:00 +11:00
guardedalloc Cleanup: remove redundant, invalid info from headers 2019-02-02 02:40:00 +11:00
iksolver Cleanup: remove redundant, invalid info from headers 2019-02-02 02:40:00 +11:00
itasc Added extra "const" to satisfy the strict clang version in Xcode 9 2017-09-20 21:47:45 +02:00
libmv Cleanup: remove redundant, invalid info from headers 2019-02-02 02:40:00 +11:00
locale Cleanup: remove redundant, invalid info from headers 2019-02-02 02:40:00 +11:00
memutil Cleanup: remove redundant, invalid info from headers 2019-02-02 02:40:00 +11:00
mikktspace Cleanup: trailing newlines 2018-06-29 09:23:51 +02:00
moto Cleanup: remove redundant, invalid info from headers 2019-02-02 02:40:00 +11:00
numaapi Cleanup: add clarifying comments for recent NUMA fixes. 2019-01-21 10:54:19 +01:00
opencolorio Color management: Fix/workaround broken getDefaultDisplay() 2019-03-11 11:27:04 +01:00
opensubdiv Cleanup: manually remove header text not handled by automation 2019-02-02 02:41:25 +11:00
openvdb Cleanup: remove redundant, invalid info from headers 2019-02-02 02:40:00 +11:00
rigidbody Cleanup: remove redundant, invalid info from headers 2019-02-02 02:40:00 +11:00
smoke Cleanup: remove redundant, invalid info from headers 2019-02-02 02:40:00 +11:00
string Cleanup: remove redundant, invalid info from headers 2019-02-02 02:40:00 +11:00
utfconv Cleanup: remove redundant, invalid info from headers 2019-02-02 02:40:00 +11:00
CMakeLists.txt Add cross-platform NUMA library 2018-11-28 14:35:26 +01:00