March 7, 2017, 12:43 (GMT) |
Merge branch 'master' into cycles_split_kernel |
March 7, 2017, 10:33 (GMT) |
Cycles: Fix building of CUDA split kernel |
March 7, 2017, 10:33 (GMT) |
Cycles: Fix indentation |
March 7, 2017, 10:16 (GMT) |
Cycles: Fix strict warning about unused variable |
March 4, 2017, 11:37 (GMT) |
Cycles: Calculate size of split state buffer kernel side By calculating the size of the state buffer in the kernel rather than the host less code is needed and the size actually reflects the requested features. Will also be a little faster in some cases because of larger global work size. |
March 4, 2017, 08:29 (GMT) |
Cycles: Fix crash after failed kernel build Pointers to kernels were uninitialized leading to freeing of random memory addresses. Another reason it would be good to use smart pointers. |
March 4, 2017, 06:49 (GMT) |
Cycles: Faster building of split kernel Simple change to make it so that only kernels that have been modified are rebuilt. Might only be useful during development. |
March 3, 2017, 10:57 (GMT) |
Cycles: Initialize rng_state for split kernel Because the split kernel can render multiple samples in parallel it is necessary to have everything initialized before rendering of any samples begins. The code that normally handles initialization of `rng_state` (`kernel_path_trace_setup()`) only does so for the first sample, which was causing artifacts in the split kernel due to uninitialized `rng_state` for some samples. Note that because the split kernel can render samples in parallel this means that the split kernel is incompatible with the LCG. |
March 3, 2017, 10:57 (GMT) |
Cycles: Remove sum_all_radiance kernel This was only needed for the previous implementation of parallel samples. As we don't have that any more it can be removed. Real reason for removal tho is this: `per_sample_output_buffers` was being calculated too small and artifacts resulted. The tile buffer is already the correct size and calculating the size for `per_sample_output_buffers` is a bit difficult with the current layout of the code. As `per_sample_output_buffers` was only needed for `sum_all_radiance`, removing that kernel and writing output to the tile buffer directly fixes the artifacts. |
March 3, 2017, 10:56 (GMT) |
Cycles: Split path initialization into own kernel This makes it easier to initialize things correctly in the data_init kernel before they are needed by path tracing. |
February 22, 2017, 14:33 (GMT) |
Merge branch 'master' into cycles_split_kernel |
February 22, 2017, 12:17 (GMT) |
Cycles: Round global size down rather than up to avoid setting too large |
February 22, 2017, 11:56 (GMT) |
Cycles: Get passes size in more robust way |
February 22, 2017, 11:10 (GMT) |
Cycles: Use correct index for sd_dl_shadow after removing ccl_fetch |
February 22, 2017, 10:19 (GMT) |
Cycles: Remove ccl_fetch and SOA |
February 22, 2017, 10:19 (GMT) |
Revert "Cycles: Faster version of driver workaround for OpenCL" Was getting infrequent hangs, unfortunately we have to take the performance hit of clFinish for now. This reverts commit 122743e7f23f8df908bcd10322d39f951ebc83e2. |
February 22, 2017, 10:19 (GMT) |
Cycles: Fix buffer offsets in split kernel Was getting wrong renders with multiple devices. |
February 22, 2017, 10:00 (GMT) |
Cycles: Remove all split kernel stuff from opencl.h |
February 21, 2017, 08:12 (GMT) |
Cycles: Reenable debug tile size for viewport rendering Not a problem now that split kernel global size is decoupled from tile size. |
February 20, 2017, 12:02 (GMT) |
Cycles: Report device maximum allocation and detected global size |
|