Results 1  10
of
15
Analysis of Branch Prediction via Data Compression
 in Proceedings of the 7th International Conference on Architectural Support for Programming Languages and Operating Systems
, 1996
"... Branch prediction is an important mechanism in modem microprocessor design. The focus of research in this area has been on designing new branch prediction schemes. In contrast, very few studies address the theoretical basis behind these prediction schemes. Knowing this theoretical basis helps us to ..."
Abstract

Cited by 91 (3 self)
 Add to MetaCart
(Show Context)
Branch prediction is an important mechanism in modem microprocessor design. The focus of research in this area has been on designing new branch prediction schemes. In contrast, very few studies address the theoretical basis behind these prediction schemes. Knowing this theoretical basis helps us to evaluate how good a prediction scheme is and how much we can expect to improve its accuracy.
Towards a high performance neural branch predictor
 In Proceedings of the International Joint Conference on Neural Networks
, 1999
"... Abstract: The main aim of this short paper is to propose a new branch prediction approach called by us "neural branch prediction". We developed a first neural predictor model based on a simple neural learning algorithm, known as Learning Vector Quantization algorithm. Based on a tr ..."
Abstract

Cited by 33 (0 self)
 Add to MetaCart
(Show Context)
Abstract: The main aim of this short paper is to propose a new branch prediction approach called by us &quot;neural branch prediction&quot;. We developed a first neural predictor model based on a simple neural learning algorithm, known as Learning Vector Quantization algorithm. Based on a trace driven simulation method we investigated the influences of the learning step and training processes. Also we compared the neural predictor with a powerful classical predictor and we establish that they result in close performances. Therefore, we conclude that in the nearest future it might be necessary to model and simulate other more powerful neural adaptive predictors, based on more complex neural networks architectures or even time series concepts, in order to obtain better prediction accuracies compared with the previous known schemes. Key Words: MII Architectures, Branch prediction,Trace driven simulation, Neural algorithms (LVQ, MLP) 1.
Dynamic Feature Selection for Hardware Prediction
 PURDUE UNIVERSITY
, 2000
"... Most hardware predictors are table based (e.g. twolevel branch predictors) and have exponential size growth in the number of input bits or features (e.g. previous branch outcomes). This growth severely limits the amount of predictive information that such predictors can use. To avoid exponential gr ..."
Abstract

Cited by 16 (0 self)
 Add to MetaCart
Most hardware predictors are table based (e.g. twolevel branch predictors) and have exponential size growth in the number of input bits or features (e.g. previous branch outcomes). This growth severely limits the amount of predictive information that such predictors can use. To avoid exponential growth we introduce the idea of "dynamic feature selection" for building hardware predictors that can use a large amount of predictive information. Based on this idea, we design the dynamic decision tree (DDT) predictor, which exhibits only linear size growth in the number of features. Our initial evaluation, in branch prediction, shows that the generalpurpose DDT, using only branchhistory features, is comparable on average to conventional branch predictors, opening the door to practically using large numbers of additional features.
Introducing Entropies for Representing Program Behavior and Branch Prediction Performance
 Proc. 2007 Workshop on Experimental Computer Science, ACM digital library
, 2007
"... Predictors are inevitable components in the stateoftheart microprocessors and branch predictors are actively discussed from many aspects. Performance of a branch predictor largely depends on the dynamic behavior of the executing program, however, we have no effective metrics to represent the natur ..."
Abstract

Cited by 3 (1 self)
 Add to MetaCart
(Show Context)
Predictors are inevitable components in the stateoftheart microprocessors and branch predictors are actively discussed from many aspects. Performance of a branch predictor largely depends on the dynamic behavior of the executing program, however, we have no effective metrics to represent the nature of program behavior quantitatively. In this paper, we introduce an information entropy idea to represent program behavior and branch predictor performance. By simple application of Shannon’s information entropy, we introduce new entropy, Source Entropy, that quantitatively represents the regularity level of program behavior. We show that the entropy also represents prediction performance independent of prediction mechanisms. We further discuss stereoscopic view of branch predictor performance from two entropy viewpoints, and introduce two entropies, Reference Entropy and Transition Entropy. The latter entropy offers theoretically maximum prediction performance when a predictor has tablebased organization. We evaluated the proposed three entropies and prediction performance in various situations. Artificially generated branch patterns, as preliminary experiments, show overview of the entropies and prediction performance. Comparison with 2nd Championship Branch Predictor competition results show high potential of our entropy. Finally, application results to SPEC CPU2000 benchmarks show actual view of our entropies and prediction performance.
An Experimental Study of Sorting and Branch Prediction
"... Sorting is one of the most important and well studied problems in Computer Science. Many good algorithms are known which offer various tradeoffs in efficiency, simplicity, memory use, and other factors. However, these algorithms do not take into account features of modern computer architectures tha ..."
Abstract

Cited by 2 (0 self)
 Add to MetaCart
Sorting is one of the most important and well studied problems in Computer Science. Many good algorithms are known which offer various tradeoffs in efficiency, simplicity, memory use, and other factors. However, these algorithms do not take into account features of modern computer architectures that significantly influence performance. Caches and branch predictors are two such features, and while there has been a significant amount of research into the cache performance of general purpose sorting algorithms, there has been little research on their branch prediction properties. In this paper we empirically examine the behaviour of the branches in all the most common sorting algorithms. We also consider the interaction of cache optimization on the predictability of the branches in these algorithms. We find insertion sort to have the fewest branch mispredictions of any comparisonbased sorting algorithm, that bubble and shaker sort operate in a fashion which makes their branches highly unpredictable, that the unpredictability of shellsort’s branches improves its caching behaviour and that several cache optimizations have little effect on mergesort’s branch mispredictions. We find also that optimizations to quicksort – for example the choice of pivot – have a strong influence on the predictability of its branches. We point out a simple way of removing branch instructions from a classic heapsort implementation, and show also that unrolling a loop in a cache optimized heapsort implementation improves the predicitability of its branches. Finally, we note that when sorting random data twolevel adaptive branch predictors are usually no better than simpler bimodal predictors. This is despite the fact that twolevel adaptive predictors are almost always superior to bimodal predictors in general.
An Interactive Graphical TraceDriven Simulator for Teaching Branch Prediction in Computer Architecture
 THE 6TH EUROSIM CONGRESS ON MODELLING AND SIMULATION, (EUROSIM 2007)
, 2007
"... In modern superscalar microarchitectures that speculatively execute a great quantity of code, without performing branch prediction, it won’t be possible to aggressively exploit program’s instruction level parallelism. Both the architectural and technological complexity of current processors emphasiz ..."
Abstract

Cited by 1 (1 self)
 Add to MetaCart
(Show Context)
In modern superscalar microarchitectures that speculatively execute a great quantity of code, without performing branch prediction, it won’t be possible to aggressively exploit program’s instruction level parallelism. Both the architectural and technological complexity of current processors emphasizes the negative impact on performance due to every branch missprediction. Due to this importance, branch prediction becomes a core topic in Computer Architecture curricula. The fast development of computer science and information technology domains, and of computer architecture especially, have determined that many software tools used not far ago in research, to be enhanced with an interactive graphical interface and to be taught in Introductory Computer Organization respectively Computer Architecture courses. The lack of simulators dedicated to branch prediction used in didactical purposes despite of plenty used in research goals, represents the starting point of this paper. The main aim of this work consists in identifying the difficulttopredict branches, quantifying them at benchmarks level and finding the relevant information to reduce their numbers. Finally, we evaluate the impact of these branches on three commonly used
A New Branch Prediction Approach Using Neural Networks
 The 6th International Symposium on High Performance Computer Architectures
"... Abstract: The main aim of this short paper is to propose a new branch prediction approach called by us "neural branch prediction". We developed a first neural predictor model based on a simple neural learning algorithm, known as backpropagation algorithm, using a multilayer perceptron. Bas ..."
Abstract

Cited by 1 (1 self)
 Add to MetaCart
(Show Context)
Abstract: The main aim of this short paper is to propose a new branch prediction approach called by us "neural branch prediction". We developed a first neural predictor model based on a simple neural learning algorithm, known as backpropagation algorithm, using a multilayer perceptron. Based on a trace driven simulation method we investigated the influences of the training processes. Also we compared the neural predictor with a powerful classical predictor and we establish that the neural predictor involves higher performances. Therefore, we conclude that in the nearest future it might be necessary to model and simulate other more powerful neural adaptive predictors, based on more complex neural networks architectures or even time series concepts, in order to obtain better prediction accuracies compared with the previous known classical schemes.
INVESTIGATING NEW BRANCH PREDICTORS THROUGH QUANTITATIVE APPROACHES
"... Abstract: During this work we investigated through a trace driven simulation method two distinct approaches in branch prediction. In our first approach the main idea is that the most predictable branches to be predicted based on a Static Prediction Table and the other branches – most difficult predi ..."
Abstract
 Add to MetaCart
(Show Context)
Abstract: During this work we investigated through a trace driven simulation method two distinct approaches in branch prediction. In our first approach the main idea is that the most predictable branches to be predicted based on a Static Prediction Table and the other branches – most difficult predictable to be predicted based on a classical Two Level Adaptive Branch Prediction Scheme. The obtained results are quite encouraging because the proposed hybrid predictor is less complex and obtains a similar performance compared to a classical dynamic predictor. Also we investigated through the same trace driven simulation method some Markov – PPM branch predictors, based on the general PPM (Prediction by Partial matching) algorithm. We studied in this context the influence of the HRg’s (Global History Register’s) length and we developed a comparison between a Markov predictor and a classical one. Also we compared a complete PPM predictor with a simplified one, most feasible to be implemented in hardware and the obtained prediction accuracies are quite identical. Therefore we conclude that similar simplified PPM predictors could be a better performance/cost alternative to the classical Two Level Adaptive Branch Predictor.
CROSSFERTILISATION BETWEEN COMPUTER ARCHITECTURE AND OTHER
"... Abstract: The main aim of this paper is to prove that using new scientific tools in Computer Architecture research could be quite efficient and useful. We exemplified this idea during the paper, by analysing some innovative proposals in branch prediction research field. It’s necessary that computer ..."
Abstract
 Add to MetaCart
Abstract: The main aim of this paper is to prove that using new scientific tools in Computer Architecture research could be quite efficient and useful. We exemplified this idea during the paper, by analysing some innovative proposals in branch prediction research field. It’s necessary that computer architects to be more opened at other Computer Science areas and research methods, in order to enlarge their view and to improve their results. Crossfertilisation is seen as essential if microprocessors are to continue their exponential growth. In conclusion we consider that using some more mature theoretical research tools, belonging to different science fields, could be an excellent alternative approach in the presentday Computer Architecture research method.
Romania TOWARDS A POWERFUL DYNAMIC BRANCH PREDICTOR
"... Dynamic branch prediction in highperformance processors is a specific instance of a general Time Series Prediction problem that occurs in many areas of science. In contrast, most current branch prediction research focuses on TwoLevel Adaptive Branch Prediction techniques, a very specific solution ..."
Abstract
 Add to MetaCart
(Show Context)
Dynamic branch prediction in highperformance processors is a specific instance of a general Time Series Prediction problem that occurs in many areas of science. In contrast, most current branch prediction research focuses on TwoLevel Adaptive Branch Prediction techniques, a very specific solution to the branch prediction problem. An alternative approach is to look to other application areas and fields for novel solutions to the problem. In this paper we examine the application of neural networks to dynamic branch prediction. Two neural networks are considered, a Learning Vector Quantisation (LVQ) Network and a MultiLayer Perceptron Network accomplished by the Backpropagation learning algorithm. We demonstrate that a neural predictor can achieve prediction rates better than conventional twolevel adaptive predictors and therefore suggest that neural predictors are a suitable vehicle for future branch prediction research. 1.