Machine Learning. Literally.
9 months ago
- #cpu-architecture
- #branch-prediction
- #machine-learning
- Branch predictors are the most successful application of machine learning, achieving over 99% accuracy in practice.
- They are built into modern CPUs to predict program behavior, improving latency and throughput.
- Branch predictors solve a reinforcement learning problem within a Markov decision process framework.
- They use domain-specific knowledge and optimizations, making them barely recognizable to statisticians.
- Target prediction involves predicting if an instruction is a jump, if it will be taken, and its destination address.
- Outcome prediction uses finite state machines (FSMs) and correlating predictors to handle temporal and spatial patterns.
- Advanced predictors use hierarchical architectures and ensembles, like tournament predictors, to improve accuracy.
- Specialized predictors handle loops and function returns efficiently, such as the Subroutine Return Stack for return addresses.