Workload Prediction of Rendering Algorithms in ... - Semantic Scholar

1 downloads 0 Views 22KB Size Report
Nikolaos Doulamis, Anastasios Doulamis, Athanasios Panagakis,. Konstantinos Dolkas and Theodora Varvarigou. Dept. of Electrical & Computer Engineering.
Workload Prediction of Rendering Algorithms in GRID Computing* Nikolaos Doulamis, Anastasios Doulamis, Athanasios Panagakis, Konstantinos Dolkas and Theodora Varvarigou Dept. of Electrical & Computer Engineering National Technical University of Athens, Athens, Greece email [email protected]

ABSTRACT Computational Grids are a promising platform for solving large-scale resource intensive problems [1]. The concept of grid computing is gaining popularity in the last decade due to the rapid growth of the Internet as a medium for global communication and the development of faster hardware and more sophisticated software. Grid computing clusters wide variety of geographically distributed computational resources, including supercomputers, PC's, PDA's and workstations, and presents them as a single unified integrated resource. Many computationally intensive problems can be solved within a more feasible/ reasonable time and cost based on a grid infrastructure than using a single resource supercomputing scheme [2]. A computationally intensive application, which can benefit from grid infrastructure, is rendering. Rendering is the process of creating realistic images from synthetic three-dimensional (3D) geometrical models and is an essential tool for many fields, ranging from simulation and design to education, entertainment and advertisement [3]. In order to implement a rendering algorithm to a grid infrastructure, two main issues should be addressed. The first refers to the parallelization of the rendering process, while the second to the way of allocating different tasks to the available resources. Parallelization of a rendering process can be performed in frame domain. In this case, each frame of the generated video sequence is handled independently from the previous frames and thus can be assigned to a different resource for processing. The second issue is solved by applying an appropriate scheduling scheme such as the Earliest Deadline First (EDF) and requires prediction of the workload of the rendering algorithm to be implemented. A block diagram of the proposed architecture is shown in Figure 1. Workload prediction of a rendering process is a difficult task, since many parameters are involved, which affect the computational complexity in a non-linear and complex way. For this reason, in our case, the rendering workload is modeled using a continuous non-linear function y = g c (x) , where vector x includes the rendering parameters and y is the respective computational cost. Index c of function g c (⋅) corresponds to a particular type of rendering algorithm. This is due to the fact that different relations between the attributes and the rendering workload are expected for different types of rendering methods since each of them uses different methodology for creating realistic images from the synthetic 3D models. In our experiments, three different types of rendering algorithms have been evaluated; the ray tracing, the radiosity method and the Monte Carlo irrandiance since these are the most common used techniques for creating a synthetic world. However, function g c (⋅) is actually unknown. For this reason in our case, a neural network model is used for modeling the unknown function g c (⋅) since a neural network architecture can be approximated any non-linear function within any degree of accuracy. In this case, function g c (⋅) is parameterized as follows [4]

N  gˆ c (x) = ∑ vl Φ l  ∑ wi ,l xi  l  i =1  where Φ l (⋅) are appropriate functionals (usually the sigmoid function, Φ l ( x ) = 1 /(1 − exp( − x )) ), while xi refers to the ith attribute (element) of the rendering parameters (vector x). The vl and wi ,l are appropriate weights which are regulated through a training algorithm to approximate function g c (⋅) . The above equation implements a feedforward neural network with one hidden layer and a linear output neuron [4]. In order to estimate parameters vl and wi ,l , a training set of M samples is used, which contains pairs of the form

(x i , yi ) . Vector x i includes the parameters of a specific rendering environment, while y i corresponds to the respective workload obtained by these parameters. The Marquardt-Levenberg algorithm has been selected to estimate the weights vl and wi ,l for a given training set due to its efficiency and very fast convergence [5]. The proposed training algorithm minimizes the least squared error over all samples of the training set and it can be also applied in an adaptive way as in [5]. Another factor, which significantly affects the network performance is the attribute selection. Table I depicts some basic rendering parameters, which affect the workload. As can be seen, there are parameters that are independent from *

This research work was supported by the European Union under the program of Information Societies Technology (IST) with grand No. IST-2001-33240, Grid Resources for Industrial Applications (GRIA).

the method of rendering used, such as the frame resolution, the number of lights in a scene, or complexity of 3D geometrical models, i.e., the number of patches used to approximate a 3D curve. There are also parameters, which are valid only for a specific type of a rendering algorithm; for the ray tracing method, the maximum number of recursive rays, while for the radiosity method, the number of radiosity steps or the minimum number of samples per patch to determine radiosity form factors. To improve neural network performance, a PCA analysis is applied to the selected attributes so that the most appropriate of them are extracted and used as inputs to the neural network architecture. In our implementation, the BMRT render tool has been used for creating graphics images. BMRT supports RIB format to describe a synthetic world. Parsing the RIB file, we can estimate the parameters of a synthetic environment and then using the neural network architecture, we can predict the rendering workload. Simulations on several synthetic environments and using different rendering methods indicate that the proposed scheme accurately predicts the workload of the rendering. Common Parameters Frame Resolution Number of Samples per pixel Number of Light Sources

Surface complexity

Ray Tracing Maximum number of recursive rays Minimum shadow bias

Object visibility (reflection, refraction) Surface shadow (none, opaque, shade)

Radiosity Number of radiosity steps Minimum number of samples per patch (Form Factors) Patch size

Monte Carlo Irrandiance Maximum error metric Number of rays used to estimate irradiance Maximum pixel distance (Forces recomputation)

Type of Radiosity calculations on surfaces (surface receives and/or shoots energy)

Surface material (specular, diffuse reflection) Type of Texture mapping used Table I: Some attributes used as inputs to the neural network predictor architecture. Workload Prediction

Parsing RIB Files

x

Attribute Selection

Neural Network Predictor

Scheduler Estimated Workload

Grid Computing

Figure 1: A block-diagram of the proposed architecture.

REFERENCES [1] Foster, I., and Kesselman, C. (editors), The Grid:Blueprint for a New Computing Infrastructure, Morgan Kaufmann Publishers, USA, 1999. [2] Leinberger W., Kumar V., Information Power Grid: The new frontier in parallel computing? IEEE Concurrency, October-December 1999, 75-84 [3] J. D. Foley, A. van Dam, S. K. Feiner and J. F. Hughes, Computer Graphics: Principles and Practice. Second Edition in C. Addison Wesley, July 1997. [4] S. Haykin. Neural Networks: A Comprehensive Foundation. New York: Macmillan, 1994. [5] A. Doulamis, N. Doulamis and S. Kollias, “On Line Retrainable Neural Networks: Improving the Performance of Neural Networks in Image Analysis Problems,” IEEE Trans. on Neural Networks, vol. 11, no.1, pp. 134-155, January 2000.