Yet Another eXchange Tool
DO_NOT_EDIT_HERE
src
xt_mpi_internal.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://doc.redmine.dkrz.de/yaxt/html/
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
#ifndef XT_MPI_INTERNAL_H
47
#define XT_MPI_INTERNAL_H
48
49
#ifdef HAVE_CONFIG_H
50
#include <config.h>
51
#endif
52
53
#include <stdbool.h>
54
#include <mpi.h>
55
59
enum
xt_mpi_tags
{
60
xt_mpi_tag_exchange_msg
,
61
xt_mpi_tag_xmap_dist_dir_src_send
,
62
xt_mpi_tag_xmap_dist_dir_dst_send
,
63
xt_mpi_tag_xmap_intersection_header_exchange
,
64
xt_mpi_tag_xmap_intersection_data_exchange
,
65
xt_mpi_num_tags
,
66
};
67
68
69
extern
int
xt_mpi_comm_internal_keyval
;
70
71
void
72
xt_mpi_init
(
void
);
73
void
74
xt_mpi_finalize
(
void
);
75
76
MPI_Comm
77
xt_mpi_comm_smart_dup
(
MPI_Comm
comm,
int
*tag_offset);
78
79
void
80
xt_mpi_comm_smart_dedup
(
MPI_Comm
*comm,
int
tag_offset);
81
95
bool
96
xt_mpi_test_some
(
int
*restrict num_req,
97
MPI_Request req[],
98
int
ops_completed[],
MPI_Comm
comm);
99
100
#endif
101
102
/*
103
* Local Variables:
104
* c-basic-offset: 2
105
* coding: utf-8
106
* indent-tabs-mode: nil
107
* show-trailing-whitespace: t
108
* require-trailing-newline: t
109
* End:
110
*/
xt_mpi_tag_xmap_intersection_data_exchange
Definition:
xt_mpi_internal.h:64
xt_mpi_comm_internal_keyval
int xt_mpi_comm_internal_keyval
Definition:
xt_mpi.c:725
xt_mpi_comm_smart_dedup
void xt_mpi_comm_smart_dedup(MPI_Comm *comm, int tag_offset)
Definition:
xt_mpi.c:901
xt_mpi_tag_exchange_msg
Definition:
xt_mpi_internal.h:60
xt_mpi_tag_xmap_dist_dir_dst_send
Definition:
xt_mpi_internal.h:62
xt_mpi_comm_smart_dup
MPI_Comm xt_mpi_comm_smart_dup(MPI_Comm comm, int *tag_offset)
Definition:
xt_mpi.c:850
xt_mpi_tag_xmap_dist_dir_src_send
Definition:
xt_mpi_internal.h:61
xt_mpi_test_some
bool xt_mpi_test_some(int *restrict num_req, MPI_Request req[], int ops_completed[], MPI_Comm comm)
xt_mpi_num_tags
Definition:
xt_mpi_internal.h:65
xt_mpi_tag_xmap_intersection_header_exchange
Definition:
xt_mpi_internal.h:63
xt_mpi_tags
xt_mpi_tags
Definition:
xt_mpi_internal.h:59
xt_mpi_finalize
void xt_mpi_finalize(void)
Definition:
xt_mpi.c:790
MPI_Comm
int MPI_Comm
Definition:
core.h:64
xt_mpi_init
void xt_mpi_init(void)
Definition:
xt_mpi.c:776
Generated by
1.8.13