Class MPIManagerGPU¶
Defined in File MPIManagerGPU.hpp
Class Documentation¶
-
class MPIManagerGPU : public MPIManager¶
MPI operation class for Lightning GPU. Maintains MPI related operations.
Public Functions
-
inline MPIManagerGPU(MPI_Comm communicator = MPI_COMM_WORLD)¶
-
inline MPIManagerGPU(int argc, char **argv)¶
-
inline auto get_cpp_mpi_type_map() const -> const std::unordered_map<std::string, MPI_Datatype>& override¶
-
template<typename T>
inline void Allgather(T &sendBuf, std::vector<T> &recvBuf, std::size_t sendCount = 1)¶ MPI_Allgather wrapper.
- Template Parameters
T – C++ data type.
- Parameters
sendBuf – Send buffer.
recvBuf – Receive buffer vector.
sendCount – Number of elements received from any process.
-
template<typename T>
inline void Reduce(DataBuffer<T> &sendBuf, DataBuffer<T> &recvBuf, std::size_t length, std::size_t root, const std::string &op_str)¶ MPI_Reduce wrapper.
- Template Parameters
T – C++ data type.
- Parameters
sendBuf – Send buffer (DataBuffer type).
recvBuf – Receive buffer (DataBuffer type).
root – Rank of root process.
op_str – String of MPI_Op.
-
inline auto split(std::size_t color, std::size_t key) -> MPIManagerGPU¶
Creates new MPIManager based on colors and keys.
- Parameters
color – Processes with the same color are in the same new communicator.
key – Rank assignment control.
- Returns
new MPIManager object.
-
inline MPIManagerGPU(MPI_Comm communicator = MPI_COMM_WORLD)¶
api/classPennylane_1_1LightningGPU_1_1Util_1_1MPIManagerGPU
Download Python script
Download Notebook
View on GitHub