Load balancing strategies for ray tracing on parallel processors

Ray tracing is one of the computer graphics techniques used to render high quality images. Unfortunately, the ray tracing of complex scenes can require large amounts of CPU time, making the technique impractical for everyday use. Since the ray tracing calculations that determine the values of individual pixels are independent, this appears to be an easy problem to parallelize, and parallel algorithms have been proposed. However, pixel computation times can vary significantly, and naive attempts at parallelization give poor speedup due to the load imbalance between the processors. The key to achieving high parallel efficiency is to ensure that the computational load is evenly balanced. In this paper, we propose two new load balancing schemes and evaluate their performance for ray tracing on parallel processors. We term the new methods 'local distributed control' (LDC) and 'global distributed control' (GDC). Our new strategies are complementary: GDC performs forms well for high computational complexity images and LDC works well for low computational complexity images.<<ETX>>