Blender Git Loki

Blender Git "cycles_kernel_split" branch commits.

Page: 3 / 11

May 8, 2015, 12:01 (GMT)
Cycles kernel split: Avoid having temporary variable in shader function in megakernel

Those temp variables are only needed in OpenCL split kernel and better be avoided in
other kernels since it's not cheap to create them.

In the future it'll be replaced with generic address space from OpenCL 2.0.
May 8, 2015, 11:04 (GMT)
Cycles kernel split: Remove extra argument from direct_emission in megakernel

It's just dummy attribute which will never be optimized due to non-inline nature
of the function.
May 8, 2015, 11:01 (GMT)
Cycles kernel split: Avoid having temp variable in non-split kernel
May 8, 2015, 10:44 (GMT)
Cycles kernel split: Remove unused/unwanted declaration
May 8, 2015, 10:40 (GMT)
Cycles kernel split: Avoid unnecessary structure reshuffle

Saves 12 bytes per shader data actually.
May 8, 2015, 10:33 (GMT)
Cycles kernel split: Avoid unnecessary arguments from more functions
May 8, 2015, 09:45 (GMT)
Cycles kernel split: Avoid adding extra arguments to shadow_blocked()

This way it's guaranteed non-split kernel is exactly the same, and also
localizes changes to a single file only without touching existing path
tracing code.
May 8, 2015, 09:37 (GMT)
Cycles kernel split: Avoid having duplicated wireframe function

It was only used because of address space mess. Now it's solved by using
temporary variable which is betetr than duplication and could be solved
with OpenCL 2.0.
May 8, 2015, 09:07 (GMT)
Cycles kernel split: Remove unwanted whitespace changes
May 8, 2015, 07:58 (GMT)
Merge branch 'master' into cycles_kernel_split
May 8, 2015, 07:20 (GMT)
Cycles Kernel Split: Kill some more whitespace changes to mkae diff more clear.
May 7, 2015, 15:23 (GMT)
Cycles kernel split: Indentation fixes in new kernel files
May 7, 2015, 15:18 (GMT)
Cycles kernel split: Don't add extra argument to emissive eval in non-split kernel

This argument does not have chance to be optimized out and it also causes ptex
to crash on sm_30 experimental kernel/
May 7, 2015, 14:59 (GMT)
Cycles kernel split: Get rid of redundant _KERNEL_SPLIT suffix of kernels
May 7, 2015, 13:55 (GMT)
Merge branch 'master' into cycles_kernel_split
May 7, 2015, 13:52 (GMT)
Cycles kernel split: Remove unwanted whitespace changes
May 7, 2015, 13:38 (GMT)
Cycles kernel split: No need to get tile size from manager, it's known in params
May 7, 2015, 13:24 (GMT)
Cycles kernel split: Fix broken logic around multi-closure in device_opencl

The code actually acted in a way when multi-closure was always enabled, this is
due to kernel_types.h header by default using CPU settings.

This caused re-definition of maximum number of closures.

Now the code acts in a way so desired number of closure is passed via cflags
and then kernel decided whether to use it or ignore.

It's possible that some OpenCL platform still over-allocates, but that's not
caused by this change and needs to be addressed separately.
May 7, 2015, 13:15 (GMT)
Cycles kernel split: Move device requested features to own struct

Previously it was all stored in the device itself, which is not really good
practice. Now all parameters which are related on what exact kernel with
what feature set to load are wrapped into own struct which is passed to
load_kenrels() function.

Network render part is not really tested and likely is broken.
May 7, 2015, 12:12 (GMT)
Cycles kernel split: Remove unneeded changes in device multi

Setting multi device's split kernel flag is a bit misleading and actually
malformed. it might be in theory heterogeneous environment where it'll be
totally unclear how to treat this flag.

Since it's now only used for skipping samples report in the status line
and multi devices are ignored anyway it's safe to remove that bit of code.

TODO: Still have feeling we can get rid of this flag in device info and
just treat reported number of samples as scheduled number of samples.
This could also help in the cases like distributed rendering.
Tehnyt: Miika HämäläinenViimeksi päivitetty: 07.11.2014 14:18MiikaH:n Sivut a.k.a. MiikaHweb | 2003-2021