geopm  3.1.1.dev272+gdfb40a8d
GEOPM - Global Extensible Open Power Manager
geopm_mpi_comm_split.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2015 - 2024 Intel Corporation
3  * SPDX-License-Identifier: BSD-3-Clause
4  */
5 
6 #ifndef GEOPM_MPI_COMM_SPLIT_H_INCLUDE
7 #define GEOPM_MPI_COMM_SPLIT_H_INCLUDE
8 
9 #ifndef GEOPM_TEST
10 #include <mpi.h>
11 #else
12 typedef int MPI_Comm;
13 #endif
14 
15 #ifdef __cplusplus
16 extern "C" {
17 #endif
18 /*****************/
19 /* MPI COMM APIS */
20 /*****************/
21 int geopm_comm_split_ppn1(MPI_Comm comm, const char *tag, MPI_Comm *ppn1_comm);
22 
23 int geopm_comm_split_shared(MPI_Comm comm, const char *tag, MPI_Comm *split_comm);
24 
25 int geopm_comm_split(MPI_Comm comm, const char *tag, MPI_Comm *split_comm, int *is_ctl_comm);
26 #ifdef __cplusplus
27 }
28 
29 #endif
30 #endif
int geopm_comm_split_shared(MPI_Comm comm, const char *tag, MPI_Comm *split_comm)
Definition: MPICommSplit.cpp:55
int geopm_comm_split(MPI_Comm comm, const char *tag, MPI_Comm *split_comm, int *is_ctl_comm)
Definition: MPICommSplit.cpp:112
int geopm_comm_split_ppn1(MPI_Comm comm, const char *tag, MPI_Comm *ppn1_comm)
Definition: MPICommSplit.cpp:43