On expected and observed communication performance with MPI derived datatypes
Autor: | Jesper Larsson Träff, Sascha Hunold, Alexandra Carpen-Amarie |
---|---|
Rok vydání: | 2017 |
Předmět: |
Unpacking
020203 distributed computing Theoretical computer science SIMPLE (military communications protocol) Computer Networks and Communications Computer science Message Passing Interface 010103 numerical & computational mathematics 02 engineering and technology Software_PROGRAMMINGTECHNIQUES 01 natural sciences Computer Graphics and Computer-Aided Design Theoretical Computer Science Artificial Intelligence Hardware and Architecture 0202 electrical engineering electronic engineering information engineering 0101 mathematics Heuristics Software |
Zdroj: | Parallel Computing. 69:98-117 |
ISSN: | 0167-8191 |
Popis: | We are interested in the cost of communicating simple, common, non-contiguous data layouts in various scenarios using the MPI derived datatype mechanism. Our aim is twofold. First, we provide a framework for studying communication performance for non-contiguous data layouts described with MPI derived datatypes in comparison to baseline performance with the same amount of contiguously stored data. Second, we explicate natural expectations on derived datatype communication performance that any MPI library implementation should arguably fulfill. These expectations are stated semi-formally as MPI datatype performance guidelines. Using our framework, we examine several MPI libraries on two different systems. Our findings are in many ways surprising and disappointing. First, using derived datatypes as intended by the MPI standard sometimes performs worse than the semantically equivalent packing and unpacking with the corresponding MPI functionality followed by contiguous communication. Second, communication performance with a single, contiguous datatype can be significantly worse than a repetition of its constituent datatype. Third, the heuristics that are typically employed by MPI libraries at type-commit time turn out to be insufficient to enforce the performance guidelines, showing room for better algorithms and heuristics for representing and processing derived datatypes in MPI libraries. In particular, we show cases where all MPI type constructors are necessary to achieve the expected performance. Our findings provide useful information to MPI library implementers, and hints to application programmers on good use of derived datatypes. Improved MPI libraries can be validated using our framework and approach. |
Databáze: | OpenAIRE |
Externí odkaz: |