blender/intern/cycles/device
Lukas Stockner a2ebc5268f Cycles: Refactor Progress system to provide better estimates
The Progress system in Cycles had two limitations so far:
 - It just counted tiles, but ignored their size. For example, when rendering a 600x500 image with 512x512 tiles, the right 88x500 tile would count for 50% of the progress, although it only covers 15% of the image.
 - Scene update time was incorrectly counted as rendering time - therefore, the remaining time started very long and gradually decreased.

This patch fixes both problems:
First of all, the Progress now has a function to ignore time spans, and that is used to ignore scene update time.
The larger change is the tile size: Instead of counting samples per tile, so that the final value is num_samples*num_tiles, the code now counts every sample for every pixel, so that the final value is num_samples*num_pixels.

Along with that, some unused variables were removed from the Progress and Session classes.

Reviewers: brecht, sergey, #cycles

Subscribers: brecht, candreacchio, sergey

Differential Revision: https://developer.blender.org/D2214
2016-12-03 05:02:21 +01:00
..
opencl Cycles: Refactor Progress system to provide better estimates 2016-12-03 05:02:21 +01:00
CMakeLists.txt Cycles: Split device_opencl.cpp into multiple files for easier maintenance 2016-10-09 15:49:50 +02:00
device_cpu.cpp Cycles: Refactor Progress system to provide better estimates 2016-12-03 05:02:21 +01:00
device_cuda.cpp Cycles: Refactor Progress system to provide better estimates 2016-12-03 05:02:21 +01:00
device_intern.h Cycles: Refactor Device selection to allow individual GPU compute device selection 2016-11-07 03:19:29 +01:00
device_memory.h Fix Cycles assert after recent half changes. 2016-06-19 20:17:25 +02:00
device_multi.cpp Cycles: Refactor Progress system to provide better estimates 2016-12-03 05:02:21 +01:00
device_network.cpp Cycles: Refactor Progress system to provide better estimates 2016-12-03 05:02:21 +01:00
device_network.h Cycles: Use explicit qualifier for single-argument constructors 2016-05-11 16:51:14 +02:00
device_opencl.cpp Cycles: Refactor Device selection to allow individual GPU compute device selection 2016-11-07 03:19:29 +01:00
device_task.cpp Cycles: Refactor Progress system to provide better estimates 2016-12-03 05:02:21 +01:00
device_task.h Cycles: Refactor Progress system to provide better estimates 2016-12-03 05:02:21 +01:00
device.cpp Cycles: Refactor Device selection to allow individual GPU compute device selection 2016-11-07 03:19:29 +01:00
device.h Cycles: Refactor Progress system to provide better estimates 2016-12-03 05:02:21 +01:00