Arcane  4.1.12.0
Developer documentation
Loading...
Searching...
No Matches
ArcaneMpi.h
1// -*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
2//-----------------------------------------------------------------------------
3// Copyright 2000-2026 CEA (www.cea.fr) IFPEN (www.ifpenergiesnouvelles.com)
4// See the top-level COPYRIGHT file for details.
5// SPDX-License-Identifier: Apache-2.0
6//-----------------------------------------------------------------------------
7/*---------------------------------------------------------------------------*/
8/* ArcaneMpi.h (C) 2000-2025 */
9/* */
10/* Global declarations for the MPI part of Arcane. */
11/*---------------------------------------------------------------------------*/
12#ifndef ARCANE_PARALLEL_MPI_ARCANEMPI_H
13#define ARCANE_PARALLEL_MPI_ARCANEMPI_H
14/*---------------------------------------------------------------------------*/
15/*---------------------------------------------------------------------------*/
16
17#include "arccore/message_passing_mpi/MessagePassingMpiGlobal.h"
19
20/*---------------------------------------------------------------------------*/
21/*---------------------------------------------------------------------------*/
22
23#define ARCANE_MPIOP_CALL ARCCORE_MPIOP_CALL
24
25#define ARCANE_MPI_HAS_NONBLOCKINGCOLLECTIVE
26
27namespace Arcane
28{
35namespace MpiBuiltIn = MessagePassing::Mpi::MpiBuiltIn;
36
37/*---------------------------------------------------------------------------*/
38/*---------------------------------------------------------------------------*/
43extern "C" ARCANE_MPI_EXPORT void
45
46/*---------------------------------------------------------------------------*/
47/*---------------------------------------------------------------------------*/
54extern "C++" ARCANE_MPI_EXPORT bool
56
63extern "C++" ARCANE_MPI_EXPORT bool
65
66/*---------------------------------------------------------------------------*/
67/*---------------------------------------------------------------------------*/
68
70extern "C++" ARCANE_MPI_EXPORT void
71arcaneInitializeMPI(int* argc, char*** argv, int wanted_thread_level);
72
74extern "C++" ARCANE_MPI_EXPORT void
76
77/*---------------------------------------------------------------------------*/
78/*---------------------------------------------------------------------------*/
79
80} // End namespace Arcane
81
82/*---------------------------------------------------------------------------*/
83/*---------------------------------------------------------------------------*/
84
85#endif
Arcane configuration file.
Reduction operators for complex types (Real2, Real3, Real2x2 and Real3x3).
-- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature --
ARCANE_MPI_EXPORT void arcaneInitializeMPI(int *argc, char ***argv, int wanted_thread_level)
Definition ArcaneMpi.cc:226
ARCANE_MPI_EXPORT bool arcaneIsAcceleratorAwareMPI()
Indicates if the current MPI runtime supports accelerators.
Definition ArcaneMpi.cc:85
ARCANE_MPI_EXPORT bool arcaneIsCudaAwareMPI()
Indicates if the current MPI runtime supports CUDA.
Definition ArcaneMpi.cc:40
ARCANE_MPI_EXPORT void arcaneAutoDetectMessagePassingServiceMPI()
Mechanism to automatically initialize MPI and Arcane's message exchange services based on Application...
Definition ArcaneMpi.cc:218
ARCANE_MPI_EXPORT void arcaneFinalizeMPI()
Definition ArcaneMpi.cc:232