Hybrid Scheduling for Efficient Ray Tracing of Complex Images

  • Erik Reinhard
  • Frederik W. Jansen


Ray tracing is a powerful technique to generate realistic images of 3D scenes. A drawback is its high demand for processing power. Multiprocessing is one way to meet this demand. However, when the models are very large, special attention must be paid to the way the algorithm is parallelised. Combining demand driven and data parallel techniques provides good opportunities to arrive at an efficient scalable algorithm. Which tasks to process demand driven and which data driven, is decided by the data intensity of the task and the amount of data locality (coherence) that will be present in the task. Rays with the same origin and similar directions, such as primary rays and light rays, exhibit much coherence. These rays are therefore traced in demand driven fashion, a bundle at a time. Non-coherent rays are traced data parallel. By combining demand driven and data driven tasks, a good load balance may be achieved, while at the same time spreading the communication evenly across the network. This leads to a scalable and efficient parallel implementation of the ray tracing algorithm.


Load Balance Data Parallel Object Database Good Load Balance Slave Processor 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [1]
    D. J. Plunkett, M. J. Bailey, The vectorization of a ray-tracing algorithm for improved execution speed, IEEE Computer Graphics and Applications 5(8), 52–60, (1985).CrossRefGoogle Scholar
  2. [2]
    F. C. Crow, G. Demos, J. Hardy, J. McLaugglin, K. Sims, 3d image synthesis on the connection machine, in Proceedings Parallel Processing for Computer Vision and Display, Leeds, (1988).Google Scholar
  3. [3]
    T. T. Y. Lin, M. Slater, Stochastic ray tracing using SIMD processor arrays, The Visual Computer 7(4), 187–199, (1991).CrossRefGoogle Scholar
  4. [4]
    S. A. Green, D. J. Paddon, Exploiting coherence for multiprocessor ray tracing, IEEE Computer Graphics and Applications 9(6), 12–27, (1989).CrossRefGoogle Scholar
  5. [5]
    L. S. Shen, A Parallel Image Rendering Algorithm and Architecture Based on Ray Tracing and Radiosity Shading, PhD thesis, TUDelft, Delft, (1993).Google Scholar
  6. [6]
    F. W. Jansen, A. Chalmers, Realism in real time?, in 4th EG Workshop on Rendering, pp. 1–20, (1993).Google Scholar
  7. [7]
    M. A. Z. Dippé, J. Swensen, An adaptive subdivision algorithm and parallel architecture for realistic image synthesis, ACM Computer Graphics 18(3), 149–158, (1984).CrossRefGoogle Scholar
  8. [8]
    J. G. Cleary, B. M. Wyvill, G. M. Birtwistle, R. Vatti, Multiprocessor ray tracing, Computer Graphics Forum, 5(4), 3–12, (1986).CrossRefGoogle Scholar
  9. [9]
    H. Kobayashi, S. Nishimura, H. Kubota, T. Nakamura, Y. Shigei, Load balancing strategies for a parallel ray-tracing system based on constant subdivision, The Visual Computer 4(4), 197–209, (1988).CrossRefGoogle Scholar
  10. [10]
    I. D. Scherson, C. Caspary, A self-balanced parallel ray-tracing algorithm, in P. M. Dew, R. A. Earnshaw, T. R. Heywood, eds, Parallel Processing for Computer Vision and Display, Vol. 4, Addison-Wesley Publishing Company, Wokingham, pp. 188–196, (1988).Google Scholar
  11. [11]
    T. Whitted, An improved illumination model for shaded display, Communications of the ACM 23(6), 343–349, (1980).CrossRefGoogle Scholar
  12. [12]
    A. S. Glassner, ed., An Introduction to Ray Tracing, Academic Press, San Diego, (1989).MATHGoogle Scholar
  13. [13]
    G. J. Ward, F. M. Rubinstein, R. D. Clear, A ray tracing solution for diffuse interreflection, ACM Computer Graphics 22(4), 85–92, (1994).CrossRefGoogle Scholar
  14. [14]
    T. Priol, K. Bouatouch, Static Load Balancing for a Parallel Ray Tracing on a MIMD Hypercube, The Visual Computer, 5(12), 109–119, (1989).CrossRefGoogle Scholar
  15. [15]
    J. S. Singh, A. Gupta, M. Levoy, Parallel Visualization Algorithms: Performance and Architectural Implications, IEEE Computer, 277, 45–55, (1994).Google Scholar
  16. [16]
    J. Amanatides, Ray tracing with cones, ACM Computer Graphics 18(3), 129–135, (1984).CrossRefGoogle Scholar
  17. [17]
    P. S. Heckbert, P. Hanrahan, Beam tracing polygonal objects, ACM Computer Graphics 18(3), 119–127, (1984).CrossRefGoogle Scholar
  18. [18]
    N. Greene, Detecting intersection of a rectengualr solid and a convex polyhedron, in P. S. Heckbert, ed., Graphics Gems IV, AP Professional, Cambridge, MA, chapter 1.7, pp. 74–82, (1994).Google Scholar
  19. [19]
    M. Shinya, T. Takahashi, S. Naito, Principles and applications of pencil tracing, ACM Computer Graphics 21(4), 45–54 (1987).CrossRefGoogle Scholar
  20. [20]
    G. J. Ward, The radiance lighting simulation and rendering system, ACM Computer Graphics pp. 459–472. SIGGRAPH ‘84 Proceedings, (1994).Google Scholar
  21. [21]
    C. E. Kolb, Rayshade User’s Guide and Reference Manual. Included in Rayshade distribution, which is available by ftp from, (1992).Google Scholar
  22. [22]
    A. Geist, A. Beguelin, J. Dongarra, W. Jiang, R. Manchek, V. Sunderam, PVM 3 Users Guide and Reference Manual, Oak Ridge National Laboratory, Oak Ridge, Tennessee. Included with the PVM 3 distribution, (1993).Google Scholar

Copyright information

© Springer-Verlag London Limited 1996

Authors and Affiliations

  • Erik Reinhard
    • 1
  • Frederik W. Jansen
    • 1
  1. 1.Delft University of TechnologyDelftNetherlands

Personalised recommendations