Smart Data Structures and Future Directions for Self-Aware Computing
As multicores have become prevalent, the complexity of programming has skyrocketed. One major difficulty is efficiently orchestrating collaboration among threads through shared data structures. Unfortunately, choosing and hand-tuning data structure algorithms to get good performance across a variety of machines and inputs is a herculean task to add to the fundamental difficulty of getting a parallel program correct. To help mitigate these complexities, this talk discusses a new class of parallel data structures called Smart Data Structures that leverage online machine learning to adapt themselves automatically. This talk will describe a prototype library of Smart Data Structures then discuss future directions for Self-Aware Computing and self-optimizing data structures.
Jonathan Eastep is a Senior Engineer at Intel Corp. in Hillsboro, OR. Jonathan received a BS in Electrical and Computer Engineering from UT Austin (2004), as well as an MS in EECS (2007) from MIT and a PhD in CS (2011) from MIT. At Intel, Dr. Eastep researches performance and power management for future supercomputers and the upcoming Knights family of throughput processors. His doctoral work was performed under the supervision of Anant Agarwal (CTO of Tilera, former director of the CS and AI lab at MIT). Jonathan's doctoral work developed a library of self-optimizing parallel data structures and was among the first examples of using Reinforcement Learning to dynamically auto-tune parallel applications. While at MIT, Jonathan was also involved in building the Raw Microprocessor -- one of the first scalable multicore processors. Jonathan's research interests include auto-tuning and Self-Aware CPU architectures, Operating Systems, and programming models.