Research & Publications
Prior Research
Machine Learning Based Branch Prediction
One of the best-performing branch predictors in academic research is based on the perceptron, a simple artificial neural network. Our research involved studying predictors based on decision trees. Decision trees were chosen because of their ability to represent a much wider array of decision spaces than the perceptron. We integrated idealized decision trees to evaluate their performance and the potential speedups they could yield.
Memory Violation Detection
The C and C++ programming languages are notorious for providing unsafe access to memory objects. Bugs originating from illegal memory pointer usage are a major source of program error. Previous schemes to detect such violations have been software-based, and result in overheads that can slow programs down by an order of magnitude. We developed compiler-assisted architectural mechanisms for performing online detection of out-of-bounds references with minimal performance impact.