Graphics Reference
In-Depth Information
3.3 CASE FOR DATA-DRIVEN MODELLING
In system identification, we approach the problem of modelling a dynamic sys-
tem from the observable data generated by its input and output. The case for using
data-driven modelling is especially compelling for real-time rendering because the
process is inherently complex. Rendering is a computer system process that thus
raises considerations at both the hardware and software levels. Furthermore, unlike
mechanical systems or chemical processes, no physical laws or intuitive functional
relationships can be applied easily to achieve high accuracy.
Considering the real-time rendering process as a black box does not necessar-
ily imply high risk of inappropriate modelling of the system as long as reasonable
assumptions are based on a priori understanding of the system and can be reinforced
from experiment results. In this topic, we approach the challenge of modelling a ren-
dering system by considering the expanded scopes of both single and multiple inputs.
We also consider the output of the rendering process in terms of measurable quanti-
ties and the benefit of registering them as system outputs. This chapter discusses the
inputs and outputs considered in system modelling and their eventual roles in system
model representations.
To proceed with the modelling process, we first establish the relationship between
the input and output of a system. This means that we must define and qualify the set
of inputs and outputs before proceeding to identify their relationship. In the context
of a real-time rendering application, it is reasonable to associate the geometry used
for construction of 3D objects with the input to the rendering system and the output
with the frame rate since empirical data indicate that they have an inverse relation-
ship. Furthermore, in system identification, the input variables must be modifiable
by the user in a straightforward manner. This is different from research in workload
characterisation and heuristics where the defined variables are quantities such as
hardware level parameters and processing time that cannot be changed by a user
during runtime.
3.3.1 B asis foR s election of s ystem V aRiaBles
With reference to the data flow in the computer graphics rendering pipeline shown in
FigureĀ 2.3 in Chapter 2, the inputs to the rendering process are obtained from mem-
ory resources (rectangle at far right) of the computer system. These inputs consist of
various types of data ranging from geometry information to textures (image-related
information) and rendering routines such as shader programs.
In order to define a set of variables to describe a rendering system, the input and
output variables must be easily measurable. Furthermore, it is imperative that the
input variables are controllable so that control actions can be implemented properly.
Based on these criteria, we investigated the available performance counters with
common low level graphics rendering profiler toolkits that included Microsoft's PIX.
TableĀ 3.1 shows a set of performance counters commonly used in many computer
graphics applications.
Since many performance counters fall into the same category and are derivatives
of one another, we chose the lowest denomination or most primitive variable in each
Search WWH ::




Custom Search