Logo image
Warwick Data Store: A Data Structure Abstraction Library
Conference proceeding

Warwick Data Store: A Data Structure Abstraction Library

Richard O. Kirk, Martin Nolten, Robert Kevis, Timothy R. Law, Satheesh Maheswaran, Steven A. Wright, Seimon Powell, Gihan R. Mudalige and Stephen A. Jarvis
2020 IEEE/ACM Performance Modeling, Benchmarking and Simulation of High Performance Computer Systems (PMBS), pp.71-85
11/2020

Abstract

application code application development Arrays C++ language C++ template library Data models data structure abstraction library data structures Hardware High Performance Computing Layout Libraries memory architecture memory architectures Mini-Applications optimisation performant support developer productivity Physics portable support developer productivity software libraries Tools Warwick data store WDS
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.

Metrics

Details

Logo image

Usage Policy