Oak Ridge OpenSHMEM Benchmark Suite

The assessment of application performance is a fundamental task in high-performance computing (HPC). The OpenSHMEM Benchmark (OSB) suite is a collection of micro-benchmarks and mini-applications/compute kernels that have been ported to use OpenSHMEM. Some, like the NPB OpenSHMEM benchmarks, have been published before while most others have been used for evaluations but never formally introduced or discussed. This suite puts them together and is useful for assessing the performance of different use cases of OpenSHMEM. This offers system implementers a useful means of measuring performance and assessing the effects of new features as well as implementation strategies. The suite is also useful for application developers to assess the performance of the growing number of OpenSHMEM implementations that are emerging. In this paper, we describe the current set of codes available within the OSB suite, how they are intended to be used, and, where possible, a snapshot of their behavior on one of the OpenSHMEM implementations available to us. We also include detailed descriptions of every benchmark and kernel, focusing on how OpenSHMEM was used. This includes details on the enhancements we made to the benchmarks to support multithreaded variants. We encourage the OpenSHMEM community to use, review, and provide feedback on the benchmarks.

[1]  Manjunath Gorentla Venkata,et al.  OpenSHMEM-UCX: Evaluation of UCX for Implementing OpenSHMEM Programming Model , 2016, OpenSHMEM.

[2]  Manjunath Gorentla Venkata,et al.  Designing a High Performance OpenSHMEM Implementation Using Universal Common Communication Substrate as a Communication Middleware , 2014, OpenSHMEM.

[3]  Maurice Yarrow,et al.  New Implementations and Results for the NAS Parallel Benchmarks 2 , 1997, PPSC.

[4]  Fabio Checconi,et al.  Breaking the speed and scalability Barriers for Graph exploration on distributed-memory machines , 2012, 2012 International Conference for High Performance Computing, Networking, Storage and Analysis.

[5]  Vivek Sarkar,et al.  Implementation and Evaluation of OpenSHMEM Contexts Using OFI Libfabric , 2017, OpenSHMEM.

[6]  David H. Bailey,et al.  The Nas Parallel Benchmarks , 1991, Int. J. High Perform. Comput. Appl..

[7]  Jeffery A Kuehn,et al.  OpenSHMEM Performance and Potential: A NPB Experimental Study , 2012 .

[8]  Manjunath Gorentla Venkata,et al.  Parallelizing the Smith-Waterman Algorithm Using OpenSHMEM and MPI-3 One-Sided Interfaces , 2015, OpenSHMEM.

[9]  Neena Imam,et al.  Graph 500 in OpenSHMEM , 2015, OpenSHMEM.

[10]  Vivek Sarkar,et al.  Graph500 on OpenSHMEM: Using A Practical Survey of Past Work to Motivate Novel Algorithmic Developments , 2017, PAW@SC.

[11]  Manjunath Gorentla Venkata,et al.  Evaluating Contexts in OpenSHMEM-X Reference Implementation , 2017, OpenSHMEM.

[12]  Sayantan Sur,et al.  Design and Implementation of OpenSHMEM Using OFI on the Aries Interconnect , 2016, OpenSHMEM.