[Bf-cycles] Measuring render work

Jonas Eschenburg indyjo at gmx.de
Fri Feb 7 23:36:29 CET 2014


Hi everybody,

Does Cycles keep track of how many samples/bounces/rays it actually had 
to calculate during a render? And if so, is there a way to exactly limit 
the amount of work a render takes?

Background: Bitwrk, a network rendering project I am working on, would 
profit from predictable render times. The prediction has to be 
independent of CPU speed, so a simple time limit is not suitable. 
Rather, I'd like to impose specific limits on the amount of work a 
certain render task takes.

At the moment, I am limiting work like this (non-branched path sampling):

cost_per_pixel = scene.cycles.max_bounces * scene.cycles.samples
cost_of_tile = cost_per_pixel * (xmax - xmin + 1) * (ymax - ymin + 1)
if cost_of_tile > MAX_COST:
     raise RuntimeError("Cost limit exceeded")

This is, of course, only a very rough worst-case estimation. Is there 
anything I can do to make it better?

Jonas


More information about the Bf-cycles mailing list