Applied Research

Automatic Synthesis of Branch Prediction Schemes through Genetic Programming


As processor architectures have increased their reliance on speculative execution to improve performance, the importance of accurate prediction of what to execute speculatively has increased. Our approach was to use a simple algebraic-style notation that allows one to describe branch predictors and also the feedback-process necessary to improve the prediction. This notation, developed by Joel Emer and Nikolas Gloy at Harvard University, allows the description of a wide variety of branch predictors in a uniform way. Also, this notation facilitates the use of an efficient search technique called Genetic Programming, which is loosely modeled on the natural evolutionary process, to explore the design space. We expanded the initial notation to allow a more detailed description of modern branch predictors. In this paper, we describe our notation version, the modeling system used and the first results of the application of genetic programming to the design of branch predictors.


  • Ciprian Candea
  • Marius Staicu
  • L. Vintan

Publication type

Conference Paper

Published in

Proceedings of CONTI'2000: Fourth International Conference on Technical Informatics




By continuing to use the site, you agree to the use of cookies. More information

The cookie settings on this website are set to "allow cookies" to give you the best browsing experience possible. If you continue to use this website without changing your cookie settings or you click "Accept" below then you are consenting to this.