15:00 - 15:30
Warwick Data Store: A Data Structure Abstraction Library

Richard O. Kirk, Gihan R. Mudalige
University of Warwick, Coventry, United Kingdom

Martin Nolten, Robert Kevis, Timothy R. Law, Satheesh Maheswaran, Seimon Powell
AWE, United Kingdom

Steven A. Wright
University of York, United Kingdom

Stephen A. Jarvis
University of Birmingham, United Kingdom

With the increasing complexity of memory architectures and scientific applications, developing data structures that are performant, portable, scalable, and support developer productivity, is a challenging task. In this paper, we present Warwick Data Store (WDS), a lightweight and extensible C++ template library designed to manage these complexities and allow rapid prototyping. WDS is designed to abstract details of the underlying data structures away from the user, thus easing application development and optimisation. We show that using WDS does not significantly impact achieved performance across a variety of different scientific benchmarks and proxy-applications, compilers, and different architectures. The overheads are largely below 30% for smaller problems, with the overhead deceasing to below 10% when using larger problems. This shows that the library does not significantly impact the performance, while providing additional functionality to data structures, and the ability to optimise data structures without changing the application code.