Photorealistic Visualisation with Grid-Based Technology
by Mika Pennanen and Markus Ylikerälä
The rapid development and low price of personal computers make them an interesting choice for conveying ideas through visualisation. Although real-time 3D graphics are adequate for many applications, a single computer is insufficient if photorealistic images are required, not only with todays technology, but even in the near future. At VTT Information Technology, grid-based distributed computing has been utilised to take advantage of the processing power of off-the-shelf office computers that are idle most of the time. As a result, using the rich resources of this existing distributed and networked environment, photorealistic images were produced faster and more cheaply.
Over the years, bandwidth has increased and become cheaper, computers have become more powerful, and the Internet has evolved into an accepted way of connecting computers and computing devices. As resources are rarely utilised to the fullest extent, companies have begun to promote the concept of grid computing, which enables the integration of computing power from anywhere in the world as easily as users now log on to the Internet, or even use electricity. This also opens up the possibility, for example, of increasing the rendering capability of low-capacity devices via the Internet, on demand. Imagine being able to plug your computer into the wall and tapping into as much processing power as you need. The promise of such utility computing is very attractive: it means obtaining the right amount of computing power at the right time, employing the latest hardware, software and services, and paying only for the computing power used. The savings could be substantial.
VTT Information Technology has participated in several national and international research projects related to grid technology. During these projects we utilised two of our research areas: utility computing used for calculation purposes, and visualisation and virtual reality environments. The objective was to use the grid for visualisation purposes to convey ideas to the interest group, and research has focused on distributed calculations for visualisation purposes. The Globus Toolkit has been used, and a grid called Grix has been developed based on platform-neutral architecture. During our research on distributed calculations for visualisation purposes, we utilised the processing power of off-the-shelf office computers that are idle most of the time. With the rich resources of this existing distributed and networked environment, photorealistic images were produced more quickly and more cheaply. To obtain photorealistic images, techniques such as ray-tracing can be used. Ray-tracing simulates the travel of rays of light from the observers viewing angle to the light sources. It should be noted that the simulation is made contrary to physical laws in order to reduce the necessary number of calculations. This is based on the fact that the observer can sense only some of the rays. The program currently in use is POV-Ray, a well-known ray-tracing program. Unfortunately a single computer not only current machines but those of the near future has insufficient power to render large or complex photorealistic images. A grid is therefore used in order to gain more computing power. An example of our research on ray-tracing with our OpenGL application is shown in Figure 1. With this application the user can move within a room that has chessboard surfaces, a yellow ball and a canvas. The observer takes a snapshot from an arbitrary viewpoint, and a photorealistic image is rendered with a grid and attached to the canvas.
|Figure 1: Ray-tracing from an arbitrary point of view in an OpenGL application.
To measure the effect of the grid with varying numbers of computers, we measured the time it took to render a photorealistic image. The image was from a model of a ski lodge containing two light sources and approximately 55,000 polygons. The complexity of this rendering task varied with the image size; Figure 2 shows the results of these tasks. Depending on the image size, the processing time with one computer (PIII processor) varied from nine seconds to 47 minutes. With multiple computers, one computer acts as the controller, while the rest perform the actual ray-tracing calculations. As a result, the performance of two computers is worse than one alone, since control data merely increases overhead. Using the increased power of a moderate number of computers does produce significant improvements, particularly with large images. However, for large numbers of computers, the control data overhead increases such that the results again deteriorate. Significant benefits can therefore be obtained even with a small number of computers. Performance is not improved by continuously increasing the number of computers.
|Figure 2: Distribution of ray-tracing calculations.
Our future work will concentrate on extending these solutions and demonstrating them on Grix. Furthermore, it is planned to extend and implement the business scenario with payable services for device users.
Mika Pennanen, VTT Information
Tel: +358 9 456 5623
Markus Ylikerälä, VTT Information
Tel: +358 9 456 6082