Performance Evaluation
----
The final PIPE processor has been set up. To evaluate its performance, use the CPI indicator for evaluation.
CPI: Average number of clock cycles required by PIPE to execute a command.
(1) PIPE's CPI intuitive judgment
PIPE uses the "loading lock + forwarding" technology. The forwarding technology does not reduce the throughput of the pipeline, but the loading lock is implemented by the suspension technology, which reduces the throughput of the pipeline. this basically achieves the goal of transmitting a new instruction in each clock cycle, that is, PIPE's CPI ≈ 1 (CPI> 1 ).
(2). Quantization
C-Number of clock periods
I-Number of commands to be executed
B-Number of inserted buckets
CPI = C/I = (I + B)/I = 1.0 + B/I
B/I-Penalty Factor
In PIPE, the Bubble is inserted in three cases.
-Load/use adventure --> load penalty (load
Penalty, lp)
-Mispreadictedbranch
Penalty, mp)
-Process ret --> ret penalty (return
Penalty, rp)
CPI = 1.0 + lp + mp + rp
(3) An instance for calculating CPI
Cause |
Name |
Instruction frequency |
Frequency of satisfying conditions |
Bubble |
Product |
Load/Use |
Lp |
0.25 |
0.20 |
1 |
0.25*0.20*1 = 0.05 |
Prediction Error |
MP |
0.20 |
0.40 |
2 |
0.20x0.40*2 = 0.16 |
Return |
RP |
0.02 |
1.00 |
3 |
0.02*1.00*3 = 0.06 |
Sum |
|
|
|
|
0.05 + 0.16 + 0.06 = 0.27 |
CPI = 1.27 ≈ 1.0
Note *: the pictures in this article are from the book's official website, I made a transformation (comment and add), see the http://csapp.cs.cmu.edu/public/figures.html
(Copyright 2011, Randal E. Bryant and David R. O 'allaron)
Reference:
1. in-depth understanding of computer systems (formerly known as 2nd)
(Copyright, reprinted with the author and source-dennis_fan-http: // blog.csdn.net/dennis_fan