TY - GEN
T1 - CPCI Stack
T2 - 5th International Symposium on Computing and Networking, CANDAR 2017
AU - Tanimoto, Teruo
AU - Ono, Takatsugu
AU - Inoue, Koji
N1 - Publisher Copyright:
© 2017 IEEE.
PY - 2017/7/2
Y1 - 2017/7/2
N2 - Correctly understanding microarchitectural bottlenecks is important to optimize performance and energy of OoO (Out-of-Order) processors. Although CPI (Cycles Per Instruction) stack has been utilized for this purpose, it stacks architectural events heuristically by counting how many times the events occur, and the order of stacking affects the result, which may be misleading. It is because CPI stack does not consider the execution path of dynamic instructions. Critical path analysis (CPA) is a well-known method to identify the critical execution path of dynamic instruction execution on OoO processors. The critical path consists of the sequence of events that determines the execution time of a program on a certain processor. We develop a novel representation of CPCI stack (Cycles Per Critical Instruction stack), which is CPI stack based on CPA. The main challenge in constructing CPCI stack is how to analyze a large number of paths because CPA often results in numerous critical paths. In this paper, we show that there are more than ten to the tenth power critical paths in the execution of only one thousand instructions in 35 benchmarks out of 48 from SPEC CPU2006. Then, we propose a statistical method to analyze all the critical paths and show a case study using the benchmarks.
AB - Correctly understanding microarchitectural bottlenecks is important to optimize performance and energy of OoO (Out-of-Order) processors. Although CPI (Cycles Per Instruction) stack has been utilized for this purpose, it stacks architectural events heuristically by counting how many times the events occur, and the order of stacking affects the result, which may be misleading. It is because CPI stack does not consider the execution path of dynamic instructions. Critical path analysis (CPA) is a well-known method to identify the critical execution path of dynamic instruction execution on OoO processors. The critical path consists of the sequence of events that determines the execution time of a program on a certain processor. We develop a novel representation of CPCI stack (Cycles Per Critical Instruction stack), which is CPI stack based on CPA. The main challenge in constructing CPCI stack is how to analyze a large number of paths because CPA often results in numerous critical paths. In this paper, we show that there are more than ten to the tenth power critical paths in the execution of only one thousand instructions in 35 benchmarks out of 48 from SPEC CPU2006. Then, we propose a statistical method to analyze all the critical paths and show a case study using the benchmarks.
UR - http://www.scopus.com/inward/record.url?scp=85050366795&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85050366795&partnerID=8YFLogxK
U2 - 10.1109/CANDAR.2017.60
DO - 10.1109/CANDAR.2017.60
M3 - Conference contribution
AN - SCOPUS:85050366795
T3 - Proceedings - 2017 5th International Symposium on Computing and Networking, CANDAR 2017
SP - 166
EP - 172
BT - Proceedings - 2017 5th International Symposium on Computing and Networking, CANDAR 2017
PB - Institute of Electrical and Electronics Engineers Inc.
Y2 - 19 November 2017 through 22 November 2017
ER -