Christopher Kauffman wrote: > I have been running a bunch of experiments with modeller 9v2 and noticed > a strange behavior. For the same target-template alignment but a > different computer, the structure that is produced by modeller varies.
This is perfectly normal and expected, and there also isn't really any way to "circumvent" it. Compilers on different platforms will perform slightly different optimizations on the code - for example, floating point rounding may be handled slightly differently, or certain operations may be rescheduled for better pipelining (e.g. if you write "x = a * b * c" compilers can choose to compile it as "x = (a * b) * c" or "x = a * (b * c)"). Since the energy surface optimized as part of comparative modeling is typically rather rugged, a very small difference in floating point rounding may push the optimizer into different local minima on different platforms, and thus give very different final models.
You should expect to get different results on different platforms, and in fact you should treat each model you generate as only a member of an ensemble of suitable solutions. After adequate sampling, clustering and model selection, the minor differences between platforms should disappear.
The only thing we can guarantee is that given the same starting conditions (set of restraints, alignment, template, random seed) the same release of Modeller on the same platform will always give exactly the same results. But even different Modeller releases on the same platform may give slightly different results, since the compiler developers may add new optimizations in their later releases.
Ben Webb, Modeller Caretaker