One of the key determining factors of the quality of a GPU renderer is whether the resulting image is the same as it would be when rendering on the CPU. For almost every case, Fractorium will produce identical results on both, however there are a few corner cases where there are differences.

Variation Count

Fractorium limits the maximum number of variations per xform on the GPU to 8. So if you have more than 8 and are rendering on the CPU, then switch over to the GPU, the output will look different. This shouldn’t be much of a problem as xforms rarely need to have more than 8 variations in them.

Specific Variations

Hexaplay3D

This happened to be the only variation where I was unable to get the outputs to be the same. In practice, the GPU results look better for hexaplay3D.

Waves2b

Uses a function called j1() which exists on the CPU, but not in OpenCL on the GPU. However, waves2b only uses it in very rare cases, so the results will look the same most of the time.

If you find any other cases where the outputs are different, then this is a severe bug and you should report it to me immediately.