College of Engineering
18 Online Learning with Spiking Neural Networks for Data Prefetching
James McMahon (University of Utah)
Faculty Mentor: Rajeev Balasubramonian (School of Computing, University of Utah)
The focus of our work was in creating a Data Prefetcher that uses a Spiking Neural Network as its primary means for generating predictions. We have proposed two different implementations, each with their own strengths and weaknesses. One implementation utilizes a singular Spiking Neural Network in order to make its predictions, and the second implementation uses multiple separate networks divided along program counter and page pairs that exist in memory accesses. The singular network model is a more easily implementable prefetcher, and the multi-network model is far more accurate in the predictions that it makes, but suffers from low coverage. In terms of performance (measured as instructions per cycle or IPC), the baseline Best-Offset prefetcher, our single-network prefetcher, and our multi-network prefetcher achieved IPCs of 0.528, 0.483, and 0.463 respectively. In terms of accuracy, the numbers for the three configurations were 0.319, 0.271, and 0.518 respectively. One of the things we intend on looking into more is how to increase the coverage. In terms of coverage the results were on average, 0.392, 0.251, and 0.170. The main goal of this work was to show that Spiking Neural Networks can get comparable performance to other prefetchers, in order to extend the range of Spiking Neural Network applicability, and to provide a different angle on Machine Learning based data prefetching possibilities.
Acknowledgements: Lin Jia and Ian Lavin