Generic placeholder image

Recent Advances in Computer Science and Communications

Editor-in-Chief

ISSN (Print): 2666-2558
ISSN (Online): 2666-2566

Review Article

Towards the Improvement of Branch Instructions Identification in High- Performance Processors: Issues, Challenges and Techniques

Author(s): Sweety Nain* and Prachi Chaudhary

Volume 15, Issue 7, 2022

Published on: 10 February, 2021

Article ID: e190522191298 Pages: 6

DOI: 10.2174/2666255814666210210164146

Price: $65

conference banner
Abstract

Introduction: Accurate branch prediction technique has become compulsory in superscalar and deep pipeline processors. The conditional instructions can break the continuous flow of execution in the pipeline stages, thereby decreasing processor performance.

Discussion: This paper highlights the concept of branch prediction, some issues and challenges, and techniques for improving processor performance. Further, this paper also presents the role of branch prediction in different processors and their features.

Conclusion: The concept of the branch prediction used in parallel processors to enhance the execution speed of the conditional branch instructions and improve the processor's performance is highlighted in this paper. Further, this paper highlights the branch predictor techniques with their features and presents the challenges, issues, and future techniques related to the branch prediction.

Keywords: Microprocessor, pipeline, branch predictor, saturating counters, computer architecture, static prediction scheme.

Graphical Abstract

[1]
Sweety and P. Chaudhary, "Branch prediction techniques used in pipeline processors  A review", Int. J. Pure Appl. Math., vol. 119, no. 15, pp. 2843-2851, 2018.
[2]
Y. He, H. Wan, B. Jiang, and X. Gao, "A new method to prevent control hazard in pipeline processor by using an auxiliary processing unit", In: 2010 2nd International Conference on Advanced Computer Control, vol. 5. 2010, pp. 596-599.
[http://dx.doi.org/10.1051/matecconf/201713900085.]
[3]
S. Otiv, K. Garikipati, M. Patnaik, and V. Kamakoti, "H-Pattern  A hybrid pattern based dynamic branch predictor with performance based adaptation", In: Proc. 4th JILP Workshop Comput. Architecture Competitions: Championship Branch Prediction, 2014, pp. 2-5.
[4]
M.S.M. Haque, M.R. Hassan, M. Sulaiman, S. Onoruoiza, J. Kamruzzaman, and M. Arifuzzaman, "Enhancing branch predictors using genetic algorithm", 2019 8th International Conference on Modeling Simulation and Applied Optimization, ICMSAO 2019, pp. 1-5, 2019.
[http://dx.doi.org/10.1109/ICMSAO.2019.8880435.]
[5]
Sweety P. Chaudhary, "Implemented static branch prediction schemes for the parallelism processors", In: International Conference on Machine Learning, Big Data, Cloud and Parallel Computing (IEEE Xplore), 2019, pp. 79-83.
[http://dx.doi.org/10.1109/COMITCon.2019.8862216.]
[6]
V.P. Bharadwaj, and M. Kohalli, "Dual decode architecture for dynamic branch prediction", In: 2nd International Conference for Convergence in Technology (I2CT), 2017, pp. 1140-1143.
[7]
G. Steven, R. Anguera, C. Egan, F. Steven, and V.L., "Dynamic Branch Prediction using Neural Networks", Dsd’01, pp. 178-185, 2001.
[8]
K. Landen, and K. Landen, Survey of Branch Prediction., Pipelining, Memory Systems as Related to Computer Architecture Survey of Branch Prediction, Pipelining, Memory Systems as Related to Computer Architecture Honors Directed Study Research Project, 2017.
[9]
S. Antonio, and F.T. Corporation, Effective Branch Prediction through Caching of Aliasing Branches *, vol. 574, pp. 557-574, 2004.
[10]
P. Eng, L. N. Vin, U. Lucian, and F. De Inginerie, Dynamic neural branch prediction fundamentals, 2016.
[11]
V. R. Kulkarni, Ketan N, and Mekala, A review of branch prediction schemes and a study of branch predictors in modern microprocessors, 2016.
[12]
R. Patel, and S. Kumar, "A Study of Various Existing Techniques to deal with Pipeline Hazards", Res. J. Eng. Technol., vol. 9, no. 4, pp. 304-306, 2018.
[http://dx.doi.org/10.5958/2321-581X.2018.00041.7.]
[13]
A. Carminati, R.A. Starke, and R.S. De Oliveira, "On the use of static branch prediction to reduce the worst-case execution time of real-time applications", Real-Time Syst., pp. 1-25, 2018.
[http://dx.doi.org/10.1007/s11241-018-9306-y.]
[14]
S.A.I. Quadri, and M.Z. Jahangir, "Design, implementation and performance comparison of different branch predictors on pipelined-CPU", 2017 International Conference on Computer, Electrical and Communication Engineering, ICCECE 2017, pp. 1-7, 2018.
[http://dx.doi.org/10.1109/ICCECE.2017.8526196.]
[15]
S. Rao, and P. K. Sudhakar, "An Analysis to Improve Branch prediction Accuracy by using Neural Branch Prediction", International J. Modern Trends Sci. Technol., vol. 3, no. 5, 2018.
[16]
D.A. Jimenez, and C. Lin, "Neural methods for dynamic branch prediction", ACM Trans. Comput. Syst., vol. 20, no. 4, pp. 369-397, 2002.
[http://dx.doi.org/10.1145/571637.571639.]
[17]
S. Manne, A. Klauser, and D. Grunwald, "Branch prediction using selective branch inversion", In: International Conference on Parallel Architectures and Compilation Techniques, 1999, pp. 48-56.
[http://dx.doi.org/10.1109/PACT.1999.807405.]
[18]
D. Tarjan, and K. Skadron, "Merging path and gshare indexing in perceptron branch prediction", ACM Trans. Archit. Code Optim., vol. 2, no. 3, pp. 280-300, 2005.
[http://dx.doi.org/10.1145/1089008.1089011.]
[19]
A. Seznec, J. San Miguel, and J. Albericio, "Practical Multidimensional Branch Prediction", IEEE Micro, vol. 36, no. 3, pp. 10-19, 2016.
[http://dx.doi.org/10.1109/MM.2016.33.]
[20]
P.Z. Shah, and S.U. Prabhu, "Hybrid learning-based branch predictor", International Journal of Engineering Research and Technology., vol. 3, no. 8, pp. 1135-1139, 2014.
[21]
J. Albericio, J.S. Miguel, N.E. Jerger, and A. Moshovos, "Wormhole: Wisely predicting multidimensional branches", In: 47th Annual IEEE/ACM International Symposium on Microarchitecture, 2015, pp. 509-520.
[http://dx.doi.org/10.1109/MICRO.2014.40.]

Rights & Permissions Print Cite
© 2024 Bentham Science Publishers | Privacy Policy