Cycles: Ignore preprocessing time in ETA calculation

This patch makes Cycles ignore the time spent in BVH construction etc. when
estimating the remaining time. Considering that the remaining time is calculated
based on the average time per tile so far, as far as I understand it makes no
sense to include the preprocessing time.

Reviewers: sergey, #cycles

Reviewed By: sergey, #cycles

Subscribers: sergey

Projects: #cycles

Differential Revision: https://developer.blender.org/D895
This commit is contained in:
Lukas Stockner
2015-01-14 23:06:10 +05:00
committed by Sergey Sharybin
parent 0d6e88b446
commit 193871ae7d
4 changed files with 37 additions and 21 deletions

View File

@@ -199,8 +199,7 @@ void Session::run_gpu()
paused_time = 0.0;
last_update_time = time_dt();
if(!params.background)
progress.set_start_time(start_time + paused_time);
progress.set_render_start_time(start_time + paused_time);
while(!progress.get_cancel()) {
/* advance to next tile */
@@ -233,6 +232,7 @@ void Session::run_gpu()
if(!params.background)
progress.set_start_time(start_time + paused_time);
progress.set_render_start_time(start_time + paused_time);
update_status_time(pause, no_tiles);
progress.set_update();
@@ -517,6 +517,7 @@ void Session::run_cpu()
if(!params.background)
progress.set_start_time(start_time + paused_time);
progress.set_render_start_time(start_time + paused_time);
update_status_time(pause, no_tiles);
progress.set_update();
@@ -665,7 +666,8 @@ void Session::reset_(BufferParams& buffer_params, int samples)
paused_time = 0.0;
if(!params.background)
progress.set_start_time(start_time + paused_time);
progress.set_start_time(start_time);
progress.set_render_start_time(start_time);
}
void Session::reset(BufferParams& buffer_params, int samples)