21 for(i=0;i<
np;++
i) glindex[2*i+1]=glindex[2*i]=i+1;
23 out = buf+sprintf(buf,
"%03d bgn : [", (
int)comm->
id);
24 for(i=0;i<np*2;++
i) out += sprintf(out,
" %+d", (
int)glindex[i]);
25 sprintf(out,
" ]"), puts(buf);
29 out = buf+sprintf(buf,
"%03d end : [", (
int)comm->
id);
30 for(i=0;i<np*2;++
i) out += sprintf(out,
" %+d", (
int)glindex[i]);
31 sprintf(out,
" ]"), puts(buf);
34 for(i=0;i<
np;++
i) glindex[2*i+1]=glindex[2*i]=i+1;
36 for(i=0;i<
np;++
i) glindex[2*i+1]=glindex[2*i]=
id;
40 out = buf+sprintf(buf,
"%03d own : [", (
int)comm->
id);
41 for(i=0;i<np*2;++
i) out += sprintf(out,
" %+d", (
int)glindex[i]);
42 sprintf(out,
" ]"), puts(buf);
48 int main(
int narg,
char *arg[])
55 world = MPI_COMM_WORLD;
56 MPI_Comm_size(world,&np);
int main(int narg, char *arg[])
#define tmalloc(type, count)
static void test(const struct comm *comm)
static void comm_free(struct comm *c)
Gather/Scatter Library interface.
establishes some macros to establish naming conventions
static void comm_init(struct comm *c, comm_ext ce)