
Linear branch entropy : characterizing and optimizing branch behavior in a micro-architecture independent way
- Author
- Sander De Pestel, Stijn Eyerman and Lieven Eeckhout (UGent)
- Organization
- Abstract
- In this paper, we propose linear branch entropy, a new metric for characterizing branch behavior. Linear branch entropy is independent of the configuration of a specific branch predictor, but is highly correlated with the branch misprediction rate of any predictor. In particular, we empirically derive a linear relationship between linear branch entropy and branch misprediction rate, which enables predicting miss rates for a range of branch predictors using a single branch entropy profile. Linear branch entropy is more accurate than previously proposed branch classification models, such as taken rate and transition rate. In addition, linear branch entropy provides insight for both analyzing an application's inherent branch behavior as well as for understanding a branch predictor's performance for easy-to-predict versus hard-to-predict branches. We present several case studies, ranging from comparing state-of-the-art branch predictors to compiler optimizations. More in particular, we find that the winner of the latest branch predictor competition outperforms the runners-up on easy-to-predict branches, but performs worse on hard-to-predict branches. We also show that using linear branch entropy to guide if-conversion in compilers leads to better performance compared to standard if-conversion heuristics.
- Keywords
- Experimentation, measurement, performance
Downloads
-
(...).pdf
- full text
- |
- UGent only
- |
- |
- 1.29 MB
Citation
Please use this url to cite or link to this publication: http://hdl.handle.net/1854/LU-8542503
- MLA
- De Pestel, Sander, et al. “Linear Branch Entropy : Characterizing and Optimizing Branch Behavior in a Micro-Architecture Independent Way.” IEEE TRANSACTIONS ON COMPUTERS, vol. 66, no. 3, Ieee Computer Soc, 2017, pp. 458–72, doi:10.1109/TC.2016.2601323.
- APA
- De Pestel, S., Eyerman, S., & Eeckhout, L. (2017). Linear branch entropy : characterizing and optimizing branch behavior in a micro-architecture independent way. IEEE TRANSACTIONS ON COMPUTERS, 66(3), 458–472. https://doi.org/10.1109/TC.2016.2601323
- Chicago author-date
- De Pestel, Sander, Stijn Eyerman, and Lieven Eeckhout. 2017. “Linear Branch Entropy : Characterizing and Optimizing Branch Behavior in a Micro-Architecture Independent Way.” IEEE TRANSACTIONS ON COMPUTERS 66 (3): 458–72. https://doi.org/10.1109/TC.2016.2601323.
- Chicago author-date (all authors)
- De Pestel, Sander, Stijn Eyerman, and Lieven Eeckhout. 2017. “Linear Branch Entropy : Characterizing and Optimizing Branch Behavior in a Micro-Architecture Independent Way.” IEEE TRANSACTIONS ON COMPUTERS 66 (3): 458–472. doi:10.1109/TC.2016.2601323.
- Vancouver
- 1.De Pestel S, Eyerman S, Eeckhout L. Linear branch entropy : characterizing and optimizing branch behavior in a micro-architecture independent way. IEEE TRANSACTIONS ON COMPUTERS. 2017;66(3):458–72.
- IEEE
- [1]S. De Pestel, S. Eyerman, and L. Eeckhout, “Linear branch entropy : characterizing and optimizing branch behavior in a micro-architecture independent way,” IEEE TRANSACTIONS ON COMPUTERS, vol. 66, no. 3, pp. 458–472, 2017.
@article{8542503, abstract = {{In this paper, we propose linear branch entropy, a new metric for characterizing branch behavior. Linear branch entropy is independent of the configuration of a specific branch predictor, but is highly correlated with the branch misprediction rate of any predictor. In particular, we empirically derive a linear relationship between linear branch entropy and branch misprediction rate, which enables predicting miss rates for a range of branch predictors using a single branch entropy profile. Linear branch entropy is more accurate than previously proposed branch classification models, such as taken rate and transition rate. In addition, linear branch entropy provides insight for both analyzing an application's inherent branch behavior as well as for understanding a branch predictor's performance for easy-to-predict versus hard-to-predict branches. We present several case studies, ranging from comparing state-of-the-art branch predictors to compiler optimizations. More in particular, we find that the winner of the latest branch predictor competition outperforms the runners-up on easy-to-predict branches, but performs worse on hard-to-predict branches. We also show that using linear branch entropy to guide if-conversion in compilers leads to better performance compared to standard if-conversion heuristics.}}, author = {{De Pestel, Sander and Eyerman, Stijn and Eeckhout, Lieven}}, issn = {{0018-9340}}, journal = {{IEEE TRANSACTIONS ON COMPUTERS}}, keywords = {{Experimentation,measurement,performance}}, language = {{eng}}, number = {{3}}, pages = {{458--472}}, publisher = {{Ieee Computer Soc}}, title = {{Linear branch entropy : characterizing and optimizing branch behavior in a micro-architecture independent way}}, url = {{http://dx.doi.org/10.1109/TC.2016.2601323}}, volume = {{66}}, year = {{2017}}, }
- Altmetric
- View in Altmetric
- Web of Science
- Times cited: