Intel i86W Manual page 173

Table of Contents

Advertisement

PROGRAMMING EXAMPLES
9.10 PIPELINING OF DOUBLE-PRECISION DUAL OPERATIONS
Example 9-11 illustrates how pipeline usage for a double-precision differs from the
single-precision Example 9-10. Example 9-11 performs the dot product of a 1 x 6 row
matrix
A
with an 6 x 1 column matrix
B.
For the purpose of tracking values through the
pipelines, assume that the actual matrices to be multiplied have the following values:
A
=
[1.0, 2.0, 3.0, 4.0, 5.0, 6.0,]
B=
6.0
5.0
4.0
3.0
2.0
1.0
Assume further that the two matrices are already loaded into registers thus:
A:
f4:f5
=
1.0
f6:f7
=
2.0
f8:f9
= 3.0
flO:fl1
=
4.0
fl2:fl3
=
5.0
fl4:fl5
=
6.0
B:
fl6:fl7
=
6.0
fl8:fl9
=
5.0
f20:f21
=
4.0
f22:f23
=
3.0
f24:f25
=
2.0
f26:f27
=
1.0
Example 9-11 differs from Example 9-10 in that, with double precision, the multiplier
pipeline has only two stages; therefore the priming and flushing phases use fewer
instructions.
9-11

Advertisement

Table of Contents
loading

Table of Contents