Virtualized Weight Perceptron Branch Predictor
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Perceptron branch predictors, while providing highly accurate branch predictions, are expensive in terms of silicon area and cycle time due to the need for storing signed integer weights for each bit in the history vector, with many weights being close to zero and thus having little effect on the prediction.
Innovation Solution
The implementation of virtualized weight perceptron branch prediction, where a virtualization map selects between history values and weights, allowing fewer weights to be stored while maintaining prediction accuracy by mapping influential history bits to weights and periodically retraining to identify and adjust weights near zero.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If perceptron branch predictors store signed integer weights for each bit in the history vector, then prediction accuracy is improved, but silicon area and cycle time increase
Solution Approach 1:
The patent extracts only the essential information from the history vector by selecting a subset of bits rather than using all bits. The virtualization map selectively maps important history bits to weights, eliminating redundant weight storage while maintaining prediction accuracy. This reduces the number of weights from the full history length to a smaller effective subset.
Solution Approach 2:
The virtualization map dynamically reconfigures which history bits are mapped to weights based on runtime conditions. The system can adaptively select different history bits for different prediction scenarios, allowing the same weight storage structure to effectively utilize varying portions of the history vector without requiring static allocation for all possible bits.
2Measurement precision
If perceptron branch predictors store signed integer weights for each bit in the history vector, then prediction accuracy is improved, but cycle time increases
Solution Approach 1:
By extracting only the necessary weights through the virtualization map, the patent reduces the number of weight operations required per prediction cycle. This selective weight application decreases the computational burden and reduces cycle time while maintaining the predictive power derived from the full history vector.
3Area of stationary object
If fewer weights are stored through virtualization, then silicon area is reduced, but prediction accuracy may deteriorate
Solution Approach 1:
The virtualization map acts as an intermediary between the full history vector and the reduced weight set. It translates and maps the essential information from the complete history into a compact representation that can be stored in fewer weights, preserving prediction accuracy while reducing storage requirements.
Solution Approach 2:
The dynamic reconfiguration capability allows the system to adaptively select the most informative history bits for mapping to weights. This ensures that the reduced weight set consistently captures the essential prediction patterns, maintaining accuracy despite the reduced number of stored weights.
Data Source
AI summary
According to an aspect, virtualized weight perceptron branch prediction is provided in a processing system. A selection is performed between two or more history values at different positions of a history vector based on a virtualization map value that maps a first selected history value to a first weight of a plurality of weights, where a number of history values in the history vector is greater than a number of the weights. The first selected history value is applied to the first weight in a perceptron branch predictor to determine a first modified virtualized weight. The first modified virtualized weight is summed with a plurality of modified virtualized weights to produce a prediction direction. The prediction direction is output as a branch predictor result to control instruction fetching in a processor of the processing system.


