SCALAPACK 2.2.2
LAPACK: Linear Algebra PACKage
Loading...
Searching...
No Matches
BI_Srecv.c
Go to the documentation of this file.
1#include "Bdef.h"
2
3void BI_Srecv(BLACSCONTEXT *ctxt, Int src, Int msgid, BLACBUFF *bp)
4{
5 Int i, info;
6 extern MPI_Status *BI_Stats;
7
8 info=MPI_Recv(bp->Buff, bp->N, bp->dtype, src, msgid, ctxt->scp->comm,BI_Stats);
9/*
10 * If we are doing our own buffering, need to determine the true length of
11 * the message just received
12 */
13#ifndef MpiBuffGood
14 if (bp->dtype == MPI_PACKED)
15 {
16 info=MPI_Get_count(BI_Stats, MPI_PACKED, &i);
17 if (i != MPI_UNDEFINED) bp->N = i;
18 else BI_BlacsWarn(BI_ContxtNum(ctxt), __LINE__, __FILE__,
19 "MPI_Get_count returned MPI_UNDEFINED.\n");
20 }
21#endif
22}
MPI_Status * BI_Stats
void BI_Srecv(BLACSCONTEXT *ctxt, Int src, Int msgid, BLACBUFF *bp)
Definition BI_Srecv.c:3
#define Int
Definition Bconfig.h:22
Int BI_ContxtNum(BLACSCONTEXT *ctxt)
Definition BI_ContxtNum.c:3
void BI_BlacsWarn(Int ConTxt, Int line, char *file, char *form,...)
Definition BI_BlacsWarn.c:3
Int N
Definition Bdef.h:61
MPI_Datatype dtype
Definition Bdef.h:60
char * Buff
Definition Bdef.h:56
BLACSSCOPE * scp
Definition Bdef.h:26
MPI_Comm comm
Definition Bdef.h:15