logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

sc::MPIMessageGrp - The MPIMessageGrp class is an concrete implementation of MessageGrp that uses the MPI

Author

       Generated automatically by Doxygen for MPQC from the source code.

Version 2.3.1                                    Sun Oct 4 2020                             sc::MPIMessageGrp(3)

Constructor & Destructor Documentation

sc::MPIMessageGrp::MPIMessageGrp(MPI_Commcomm)
       Use an MPI communicator to create a MessageGrp. The comm argument could be a subset of MPI_COMM_WORLD,
       for example.

   sc::MPIMessageGrp::MPIMessageGrp(int*argc,char***argv)
       Use argc and argv to create a MPIMessageGrp. This would have to be used for implementations of MPI that
       have MPI_Init fill in argc and argv.

Detailed Description

       The MPIMessageGrp class is an concrete implementation of MessageGrp that uses the MPI 1 library.

Member Function Documentation

voidsc::MPIMessageGrp::reduce(double*,intn,GrpReduce<double>&,double*scratch=0,inttarget=-1)[virtual]
       Global generic reduction. Similar members exist for each of the basic types.

       Reimplemented from sc::MessageGrp.

   voidsc::MPIMessageGrp::sum(double*data,intn,double*=0,inttarget=-1)[virtual]
       Global sum reduction. Similar members exist for each of the basic types.

       Reimplemented from sc::MessageGrp.

Name

       sc::MPIMessageGrp - The MPIMessageGrp class is an concrete implementation of MessageGrp that uses the MPI
       1 library.

Synopsis

       #include <messmpi.h>

       Inherits sc::MessageGrp.

   PublicMemberFunctionsMPIMessageGrp (MPI_Comm comm)
           Use an MPI communicator to create a MessageGrp.
       MPIMessageGrp (int *argc, char ***argv)
           Use argc and argv to create a MPIMessageGrp.
       MPIMessageGrp (const Ref< KeyVal > &)
           Construction MPIMessageGrp given a KeyVal input object.
       Ref< MessageGrp > clone (void)
           Clones (dups) an MPIMessageGrp from MPI_COMM_WORLD.
       void raw_send (int target, const void *data, int nbyte)
       void raw_recv (int sender, void *data, int nbyte)
       void raw_sendt (int target, int type, const void *data, int nbyte)
       void raw_recvt (int type, void *data, int nbyte)
       int probet (int type)
           Ask if a given typed message has been received.
       void sync ()
           Synchronize all of the processors.
       void sum (double *, int n, double *scratch=0, int target=-1)
           Global sum reduction.
       void sum (int *, int n, int *scratch=0, int target=-1)
       void reduce (double *, int n, GrpReduce< double > &, double *scratch=0, int target=-1)
           Global generic reduction.
       void reduce (unsigned int *, int n, GrpReduce< unsigned int > &, unsigned int *scratch=0, int target=-1)
       void reduce (int *, int n, GrpReduce< int > &, int *scratch=0, int target=-1)
       void reduce (char *, int n, GrpReduce< char > &, char *scratch=0, int target=-1)
       void reduce (unsigned char *, int n, GrpReduce< unsigned char > &, unsigned char *scratch=0, int
           target=-1)
       void reduce (signed char *, int n, GrpReduce< signed char > &, signed char *scratch=0, int target=-1)
       void reduce (short *, int n, GrpReduce< short > &, short *scratch=0, int target=-1)
       void reduce (float *, int n, GrpReduce< float > &, float *scratch=0, int target=-1)
       void reduce (long *, int n, GrpReduce< long > &, long *scratch=0, int target=-1)
       void raw_bcast (void *data, int nbyte, int from)

   ProtectedMemberFunctions
       void init (MPI_Comm comm, int *argc=0, char ***argv=0)
           Not thread-safe due to race condition on nmpi_grps variable.

   ProtectedAttributes
       void * buf
       int bufsize
       int rnode
       int rtag
       int rlen
       bool use_messagegrp_collectives_
           If true use the generic collective routines in the base class.
       Ref< ThreadGrp > threadgrp
       MPI_Comm commgrp
           Currently each commgrp is a dup of MPI_COMM_WORLD.

   StaticProtectedAttributes
       static int nmpi_grps
           Number of MPIMessageGrp's currently in use.
       static Ref< ThreadLock > grplock
           lock to access nmpi_grps variable

   AdditionalInheritedMembers

See Also