Next: Application: matrix multiply
Up: Automatic assembly of highly
Previous: Introduction
Formally, we wish to solve the following problem:
Given:
- Several versions of an algorithm
,
where all versions have identical inputs and outputs.
- A set of samples
from the
algorithm's input space S (i.e.,
).
- The execution time T(a,x) for algorithm a on input x.
Find:
- A decision function f(x), where
,
i.e.,
a mapping from an input to an algorithm.
This is illustrated in fig. 1 (left). In general, for a
given algorithm we will identify the formal parameters above, assume
a parametric form for the mapping, and construct an appropriate cost
function in terms of the execution times T(a,x). We will determine
the parameters of the map by optimizing the cost.
Figure 1:
( Left) A hypothetical two-dimensional input spaces.
Our task is to determine the boundaries (dashed lines). This is
similar to general clustering or classification problems.
( Right) A matrix multiply operation
C = C + AB is specified
by three dimensions, M, K, N.
|
|
Next: Application: matrix multiply
Up: Automatic assembly of highly
Previous: Introduction
Richard Vuduc
1998-12-15