16#include <Comm_Group_Noparallel.h>
21int Comm_Group_Noparallel::sending_ = 0;
64 char *
const*
const recv_buffers,
TypeHint typehint)
const
66 assert(sending_ == 0);
67 if (send_list.
size_array() == 1 && send_list[0] == 0 &&
68 recv_list.
size_array() == 1 && recv_list[0] == 0 &&
70 && send_size[0] == recv_size[0])
72 memcpy(recv_buffers[0], send_buffers[0], send_size[0]);
97 memcpy(dest_buffer, src_buffer, data_size);
102 memcpy(dest_buffer, src_buffer, data_size);
107 memcpy(dest_buffer, src_buffer, data_size);
112 memcpy(dest_buffer, src_buffer, recv_size[0]);
void recv(int pe, void *buffer, int size, int tag) const override
void send_recv_finish() const override
void all_gather(const void *src_buffer, void *dest_buffer, int data_size) const override
void abort() const override
void all_to_all(const void *src_buffer, void *dest_buffer, int data_size) const override
void init_group(const ArrOfInt &pe_list) override
constructeur pour un sous-groupe //
int reverse_send_recv_list(const ArrOfInt &src_list, ArrOfInt &dest_list) const
Comm_Group_Noparallel()
constructeur pour le groupe Tous
void send_recv_start(const ArrOfInt &send_list, const ArrOfInt &send_size, const char *const *const send_buffers, const ArrOfInt &recv_list, const ArrOfInt &recv_size, char *const *const recv_buffers, TypeHint typehint=CHAR) const override
void broadcast(void *buffer, int size, int pe_source) const override
void gather(const void *src_buffer, void *dest_buffer, int data_size, int root) const override
void all_gatherv(const void *src_buffer, void *dest_buffer, int send_size, const int *recv_size, const int *displs) const override
~Comm_Group_Noparallel() override
void send(int pe, const void *buffer, int size, int tag) const override
: Cette classe decrit un groupe de processeurs sur lesquels
virtual void init_group(const ArrOfInt &pe_list)
Cette fonction doit etre appelee simultanement par tous les PEs du groupe current_group avec les meme...
void init_group_trio(int nproc, int rank)
Initialise le groupe_TRUST().
Class defining operators and methods for all reading operation in an input flow (file,...
virtual Entree & readOn(Entree &)
Lecture d'un Objet_U sur un flot d'entree Methode a surcharger.
virtual Sortie & printOn(Sortie &) const
Ecriture de l'objet sur un flot de sortie Methode a surcharger.
static void barrier()
Synchronise tous les processeurs du groupe courant (attend que tous les processeurs soient arrives a ...
static void exit(int exit_code=-1)
Routine de sortie de TRUST dans une region Kokkos.
Classe de base des flux de sortie.
_SIZE_ size_array() const