Blender_sync seems to gives random results

I implemented an auto tile size algorithm that decides based on the number of samples in cscene. Something like
if (get_boolean(cscene, "use_auto_tiles")){
int samples = get_int(cscene, "samples");
if (samples > 10) tile_x=tile_y=16;
}
between
int tile_x = b_engine.tile_x();
int tile_y = b_engine.tile_y();
and
params.tile_size = make_int2(tile_x, tile_y);
using the BMW scene with 256x256 set as tile size and auto_tile_size on shows the following problem:

  • On CPU with up to 8 threads (at least tested a 8 threads i7 and a 4 thread ryzen), the tile size is set properly.

  • On 2 different ryzen 2700x configurations however (16 threads, same OS = win10 1809, same graphic card 1080Ti, same driver 419.35), the results are random. One of them will render the BMW scene with the awaited tile size (16x16), the other PC will render with the user defined tile size (256x256). But the PC rendering the BMW scene as awaited, will render another scene with a number of sample > 10 with the user-defined tile size (32x32, although auto tile size is on). So it looks like it’s random, but the same scene often gives the same results on the same PC… My i7 render this scene with 16x16 tile size as awaited. The BMW scene used to test were freshly downloaded from the same URL.

  • Another thing that let me thing something is fishy is that with the same buildbot version (2.8 version from 2019 03 23), same CPU (ryzen 2700x), same CG(1080Ti), same OS (win10 1809), same driver(419.35), one configuration renders the BMW scene in 1min20, the other one in 1min05. Both were checked with MSI afterburner during rendering to ensure the frequency is stable and it is stable (1860MHz). As a side note, the same scene on an i7 set to the same frequency (4Ghz) and using a 1080Ti at 1860Mhz with the same driver and the same buildbot renders in 1min40…

Any Idea what could be going on here?

looks like it’s a user error with custom scripts… will have a more in depth look later. Sorry if I posted for nothing.