Smart data structures: an online machine learning approach to multicore data structures

  • Authors:
  • Jonathan Eastep;David Wingate;Anant Agarwal

  • Affiliations:
  • MIT, Cambridge, MA, USA;MIT, Cambridge, MA, USA;MIT, Cambridge, MA, USA

  • Venue:
  • Proceedings of the 8th ACM international conference on Autonomic computing
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

Abstract

As multicores become prevalent, the complexity of programming is skyrocketing. 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 work develops a new class of parallel data structures called Smart Data Structures that leverage online machine learning to adapt automatically. We prototype and evaluate an open source library of Smart Data Structures for common parallel programming needs and demonstrate significant improvements over the best existing algorithms under a variety of conditions. Our results indicate that learning is a promising technique for balancing and adapting to complex, time-varying tradeoffs and achieving the best performance available.