An evaluation of OpenSHMEM interfaces for the variable-length Alltoallv() collective operation

0Citations
Citations of this article
1Readers
Mendeley users who have this article in their library.
Get full text

Abstract

Alltoallv() is a collective operation which allows all processes to exchange variable amounts of data with all other processes in the communication group. This means that Alltoallv() requires not only O(N2) communications, but typically also additional exchanges of the data lengths that will be transmitted in the eventual Alltoallv() call. This pre-exchange is used to calculate the proper offsets for the receiving buffers on the target processes. However, we propose two new candidate interfaces for Alltoallv() that would mitigate the need for the user to set up this extra exchange of information at the possible cost of memory efficiency. We explain the new interface variants and show how a single call can be used in place of the traditional Alltoall()/ Alltoallv() pair. We then discuss the performance tradeoffs for overall communication and memory costs, as well as both software and hardware-based optimizations and their applicability to the various proposed interfaces.

Cite

CITATION STYLE

APA

Graham Lopez, M., Shamis, P., & Venkata, M. G. (2015). An evaluation of OpenSHMEM interfaces for the variable-length Alltoallv() collective operation. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 9397, pp. 87–101). Springer Verlag. https://doi.org/10.1007/978-3-319-26428-8_6

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free