Yet Another eXchange Tool 0.11.3
Loading...
Searching...
No Matches
xt_redist_p2p.h
Go to the documentation of this file.
1
12/*
13 * Keywords:
14 * Maintainer: Jörg Behrens <behrens@dkrz.de>
15 * Moritz Hanke <hanke@dkrz.de>
16 * Thomas Jahns <jahns@dkrz.de>
17 * URL: https://dkrz-sw.gitlab-pages.dkrz.de/yaxt/
18 *
19 * Redistribution and use in source and binary forms, with or without
20 * modification, are permitted provided that the following conditions are
21 * met:
22 *
23 * Redistributions of source code must retain the above copyright notice,
24 * this list of conditions and the following disclaimer.
25 *
26 * Redistributions in binary form must reproduce the above copyright
27 * notice, this list of conditions and the following disclaimer in the
28 * documentation and/or other materials provided with the distribution.
29 *
30 * Neither the name of the DKRZ GmbH nor the names of its contributors
31 * may be used to endorse or promote products derived from this software
32 * without specific prior written permission.
33 *
34 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
35 * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
36 * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
37 * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER
38 * OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
39 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
40 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
41 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
42 * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
43 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
44 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
45 */
46
47#ifndef XT_REDIST_P2P_H
48#define XT_REDIST_P2P_H
49
50#ifdef HAVE_CONFIG_H
51#include <config.h>
52#endif
53
54#include <mpi.h>
55
56#include <xt/xt_core.h>
57#include <xt/xt_xmap.h>
58#include <xt/xt_redist.h>
59#include <xt/xt_config.h>
60
65
73Xt_redist xt_redist_p2p_new(Xt_xmap xmap, MPI_Datatype datatype);
74
84xt_redist_p2p_custom_new(Xt_xmap xmap, MPI_Datatype datatype, Xt_config config);
85
103Xt_redist xt_redist_p2p_off_new(Xt_xmap xmap, const int *src_offsets,
104 const int *dst_offsets, MPI_Datatype datatype);
105
125xt_redist_p2p_off_custom_new(Xt_xmap xmap, const int *src_offsets,
126 const int *dst_offsets, MPI_Datatype datatype,
127 Xt_config config);
128
144 int num_src_ext,
145 const struct Xt_offset_ext src_extents[],
146 int num_dst_ext,
147 const struct Xt_offset_ext dst_extents[],
148 MPI_Datatype datatype);
149
167 int num_src_ext,
168 const struct Xt_offset_ext src_extents[],
169 int num_dst_ext,
170 const struct Xt_offset_ext dst_extents[],
171 MPI_Datatype datatype,
172 Xt_config config);
173
189 int num_src_ext,
190 const struct Xt_aoffset_ext src_extents[],
191 int num_dst_ext,
192 const struct Xt_aoffset_ext dst_extents[],
193 MPI_Datatype datatype);
194
212 int num_src_ext,
213 const struct Xt_aoffset_ext src_extents[],
214 int num_dst_ext,
215 const struct Xt_aoffset_ext dst_extents[],
216 MPI_Datatype datatype,
217 Xt_config config);
218
242 const int *src_block_offsets,
243 const int *src_block_sizes,
244 int src_block_num,
245 const int *dst_block_offsets,
246 const int *dst_block_sizes,
247 int dst_block_num,
248 MPI_Datatype datatype);
249
275 const int *src_block_offsets,
276 const int *src_block_sizes,
277 int src_block_num,
278 const int *dst_block_offsets,
279 const int *dst_block_sizes,
280 int dst_block_num,
281 MPI_Datatype datatype,
282 Xt_config config);
283
298 const int *src_block_sizes,
299 int src_block_num,
300 const int *dst_block_sizes,
301 int dst_block_num,
302 MPI_Datatype datatype);
303
320 const int *src_block_sizes,
321 int src_block_num,
322 const int *dst_block_sizes,
323 int dst_block_num,
324 MPI_Datatype datatype,
325 Xt_config config);
326
327#endif // XT_REDIST_P2P_H
328
329/*
330 * Local Variables:
331 * c-basic-offset: 2
332 * coding: utf-8
333 * indent-tabs-mode: nil
334 * show-trailing-whitespace: t
335 * require-trailing-newline: t
336 * End:
337 */
opaque configuration object for settings where the default needs to be overridden
struct Xt_config_ * Xt_config
Definition xt_config.h:58
base definitions header file
struct Xt_xmap_ * Xt_xmap
Definition xt_core.h:85
struct Xt_redist_ * Xt_redist
Definition xt_core.h:86
redistribution of data
Xt_redist xt_redist_p2p_custom_new(Xt_xmap xmap, MPI_Datatype datatype, Xt_config config)
Xt_redist xt_redist_p2p_off_new(Xt_xmap xmap, const int *src_offsets, const int *dst_offsets, MPI_Datatype datatype)
Xt_redist xt_redist_p2p_blocks_custom_new(Xt_xmap xmap, const int *src_block_sizes, int src_block_num, const int *dst_block_sizes, int dst_block_num, MPI_Datatype datatype, Xt_config config)
Xt_redist xt_redist_p2p_new(Xt_xmap xmap, MPI_Datatype datatype)
Xt_redist xt_redist_p2p_off_custom_new(Xt_xmap xmap, const int *src_offsets, const int *dst_offsets, MPI_Datatype datatype, Xt_config config)
Xt_redist xt_redist_p2p_blocks_off_custom_new(Xt_xmap xmap, const int *src_block_offsets, const int *src_block_sizes, int src_block_num, const int *dst_block_offsets, const int *dst_block_sizes, int dst_block_num, MPI_Datatype datatype, Xt_config config)
Xt_redist xt_redist_p2p_ext_new(Xt_xmap xmap, int num_src_ext, const struct Xt_offset_ext src_extents[], int num_dst_ext, const struct Xt_offset_ext dst_extents[], MPI_Datatype datatype)
Xt_redist xt_redist_p2p_blocks_off_new(Xt_xmap xmap, const int *src_block_offsets, const int *src_block_sizes, int src_block_num, const int *dst_block_offsets, const int *dst_block_sizes, int dst_block_num, MPI_Datatype datatype)
Xt_redist xt_redist_p2p_aext_new(Xt_xmap xmap, int num_src_ext, const struct Xt_aoffset_ext src_extents[], int num_dst_ext, const struct Xt_aoffset_ext dst_extents[], MPI_Datatype datatype)
Xt_redist xt_redist_p2p_blocks_new(Xt_xmap xmap, const int *src_block_sizes, int src_block_num, const int *dst_block_sizes, int dst_block_num, MPI_Datatype datatype)
Xt_redist xt_redist_p2p_aext_custom_new(Xt_xmap xmap, int num_src_ext, const struct Xt_aoffset_ext src_extents[], int num_dst_ext, const struct Xt_aoffset_ext dst_extents[], MPI_Datatype datatype, Xt_config config)
Xt_redist xt_redist_p2p_ext_custom_new(Xt_xmap xmap, int num_src_ext, const struct Xt_offset_ext src_extents[], int num_dst_ext, const struct Xt_offset_ext dst_extents[], MPI_Datatype datatype, Xt_config config)
exchange map declarations