April 30, 2021, 15:37 (GMT) |
Cycles: use CUDA toolkit 11.3 for buildbot in cycles-x branch |
April 30, 2021, 15:34 (GMT) |
Cycles: add initial specialization of svm_eval_nodes To leave out shaders nodes from rendering kernels where they are known to be unused. Reduces GPU render time between 3-12% depending on the scene in our tests. Differential Revision: https://developer.blender.org/D11131 |
April 28, 2021, 17:56 (GMT) |
Cleanup: add mechanism for devices to not have a megakernel |
April 28, 2021, 17:56 (GMT) |
Cleanup: move number of concurrent GPU paths to device queue So different devices can set it to different values, though it's still hardcoded as of now. |
April 28, 2021, 17:56 (GMT) |
Cycles: add GPU queue kernel time stats * Print summary of kernel execution times for GPU queues with --verbose 3 * This is for combinations of kernels rather than individual ones, since measuring individual ones has a performance impact. * Refactor code to be independent of CUDA queue Differential Revision: https://developer.blender.org/D11112 |
April 28, 2021, 17:49 (GMT) |
Fix wrong order of graphics interop destruction The GPU display needs to be destroyed after path trace works, otherwise the CUDA interop resource destruction will error with an invalid graphics context. Additionally, added guards to ensure the CUDA graphics interop object is never copied. |
April 28, 2021, 17:19 (GMT) |
Fix wrong number of integrator kernels The value was off-by-one, causing buffer overflow on accessing the queue counters. |
April 28, 2021, 09:05 (GMT) |
Cycles: Extend information provided in the full report Include actual devices used for path tracing and denoising. useful for in the following cases: - Verify that the benchmark was made on the device it was intended to be done. - Easily see which exactly device was used for OptiX denoiser. - Share and compare different reports, by making it explicit in the report itself what conditions the benchmark was run in. The report is printed at the end of rendering when Blender is run with the `--debug-cycles` command line argument (verbosity level 2). Differential Revision: https://developer.blender.org/D11105 |
April 23, 2021, 13:56 (GMT) |
Restore submodule URLs for pushing branch to git.blender.org. |
April 23, 2021, 13:55 (GMT) |
Cycles: force disable OpenCL building since it has errors |
April 23, 2021, 11:07 (GMT) |
Avoid costly OptiX module creation when only doing denoising |
April 22, 2021, 17:54 (GMT) |
Cycles: Show message about loading denoising kernels It is possible that denoiser will create device on-demand, and the creation might take a while due to possible runtime kernel compilation or optimization of ptx for OptiX. This change makes it so a nice and meaningful status is reported to the user instead of status being stuck at o samples. |
April 22, 2021, 17:18 (GMT) |
Fix wrong render with Cycles persistent data Need to always zero render buffers, otherwise it will have previous result stored in it, making integration wrong (image will be over exposed) and will make it so that adaptive sampling will pretend that it adds samples, causing an early convergence. Probably the render buffer is to be freed at the end of the render anyway, but this would need a deeper look. For now just mimicking what happens in master. |
April 22, 2021, 10:32 (GMT) |
Fix compilation error with strict flags It could be seen as too much of a boiler plate code to explicitly mention all kernels, but when one does not constantly work with the related code it is a bit hidden to see where modifications are to be made when new kernel is added. Having compiler to nag about places where modification might be needed is personally found to be very helpful. |
April 22, 2021, 10:32 (GMT) |
Cycles: Refactor of OptiX queue - Use early output instead of indented if-else block. - Use nullptr instead of NULL. Should be no functional changes, just making code a bit more modern and easier to follow. |
April 22, 2021, 10:32 (GMT) |
Cycles: Use best suitable BVH layout for OptiX Restore back the decision between fast-to-trace and fast-to-update BVH types. Based on the BVH type which is available via the BVH parameters. The BVHType is now moved from render/ to bvh/ so that the device can easily access the enum values. |
April 21, 2021, 18:48 (GMT) |
Fix OptiX denoiser being broken after addition of CUDA streams |
April 21, 2021, 17:37 (GMT) |
Enable megakernel path in OptiX |
April 21, 2021, 17:37 (GMT) |
Fix launch params not being allocated and updated |
April 21, 2021, 17:37 (GMT) |
Remove OptiX code that is no longed in use |
|