---
name: "icetCreateMPICommunicator"
section: "3"
platform: "linux"
package: "paraview"
version: "5.13.2+dfsg-3"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/icetCreateMPICommunicator"
---

# icetCreateMPICommunicator(3)

## NAME

**icetCreateMPICommunicator -- Converts an MPI communicator to an IceT communicator.**

## Synopsis

**#include \<IceTMPI.h\>**

| |
| --- |
| **IceTCommunicator** **icetCreateMPICommunicator**( |
| **MPI\_Comm** *mpi\_comm* ); |

## Description

**IceT requires a communicator in order to perform correctly. An** **application is free to build its own communicator, but many will simply** **prefer to use MPI, which is a well established parallel communication** **tool. Thus, IceT comes with an implementation of** **IceTCommunicator** **that uses the MPI communication layer** **underneath.**

**icetCreateMPICommunicator** **is used to create an** **IceTCommunicator** **that uses the** *mpi\_comm* **MPI communication** **object. The resulting IceTCommunicator** **shares the same process** **group and process rank as the original MPI\_Comm** **communicator.**

*mpi\_comm* **is duplicated, which has two consiquences. First, all** **process in** *mpi\_comm***'s** **group may need to call** **icetCreateMPICommunicator** **in order for any of them to proceed** **(depending on the MPI implementation). Second,** *mpi\_comm* **and the** **resulting IceTCommunicator** **are decoupled from each other.** **Communications in one cannot affect another. Also, one communicator may** **be destroyed without affecting the other.**

## Return Value

**An IceTCommunicator** **with the same process group and rank as** *mpi\_comm***.** **The communicator may be destroyed with a call to** **icetDestroyMPICommunicator.**

## Errors

**None.**

## Warnings

**None.**

## Bugs

**All MPI errors are ignored.**

## Copyright

**Copyright (C)2003 Sandia Corporation**

**Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation, the** **U.S. Government retains certain rights in this software.**

**This source code is released under the New BSD License.**

## See Also

*icetDestroyMPICommunicator***(3),** *icetCreateContext***(3)**
