Go to file
Sergey Sharybin 828abaf11c Cycles: Split BVH nodes storage into inner and leaf nodes
This way we can get rid of inefficient memory usage caused by BVH boundbox
part being unused by leaf nodes but still being allocated for them. Doing
such split allows to save 6 of float4 values for QBVH per leaf node and 3
of float4 values for regular BVH per leaf node.

This translates into following memory save using 01.01.01.G rendered
without hair:

                   Device memory size   Device memory peak   Global memory peak
Before the patch:  4957                 5051                 7668
With the patch:    4467                 4562                 7332

The measurements are done against current master. Still need to run speed tests
and it's hard to predict if it's faster or not: on the one hand leaf nodes are
now much more coherent in cache, on the other hand they're not so much coherent
with regular nodes anymore.

Reviewers: brecht, juicyfruit

Subscribers: venomgfx, eyecandy

Differential Revision: https://developer.blender.org/D1236
2015-04-20 17:29:51 +05:00
build_files CMake: resolve linking error on Linux 2015-04-08 11:50:57 +10:00
doc BGE: Support for collision group/mask from the api + activated on EndObject. 2015-04-19 01:04:22 +02:00
extern Cleanup: warnings 2015-04-19 22:03:42 +10:00
intern Cycles: Split BVH nodes storage into inner and leaf nodes 2015-04-20 17:29:51 +05:00
release I18n: Add Vietnamese language. 2015-04-20 14:27:20 +02:00
scons@625d446ae8 Fixed border extension for the sunbeams node. 2014-09-23 11:42:11 +02:00
source Fix T44452: Inconsistent gpencil color in prefs 2015-04-20 21:20:39 +10:00
tests Cleanup: don't use single sets for comparisons 2015-04-14 10:34:32 +10:00
.arcconfig Use HTTPS protocol for arc 2013-12-24 22:57:27 +06:00
.gitignore Revert "ignore conflict files" 2014-08-08 06:00:49 +10:00
.gitmodules Initialize git submodules for addons, locales and scons 2013-11-15 12:19:08 +06:00
CMakeLists.txt Fix T44449, sm_52 kernel missing in CMake builds. 2015-04-19 22:04:23 +02:00
COPYING == docs == 2010-10-13 14:44:22 +00:00
GNUmakefile tweaks to packman build 2015-03-24 07:49:17 +11:00
SConstruct Fix T31546 fragment program gets created every frame 2015-04-09 20:20:50 +02:00