📄 allred.c
字号:
out = (long *)malloc( count * sizeof(long) ); sol = (long *)malloc( count * sizeof(long) ); for (i=0; i<count; i++) { *(in + i) = 0; *(sol + i) = 0; *(out + i) = 0; } MPI_Allreduce( in, out, count, MPI_LONG, MPI_LOR, comm ); for (i=0; i<count; i++) { if (*(out + i) != *(sol + i)) {errcnt++; fnderr++;}} if (fnderr) fprintf( stderr, "(%d) Error for type MPI_LONG and op MPI_LOR\n", rank ); free( in ); free( out ); free( sol );}void c6(void){ short *in, *out, *sol; int i, fnderr=0; in = (short *)malloc( count * sizeof(short) ); out = (short *)malloc( count * sizeof(short) ); sol = (short *)malloc( count * sizeof(short) ); for (i=0; i<count; i++) { *(in + i) = 0; *(sol + i) = 0; *(out + i) = 0; } MPI_Allreduce( in, out, count, MPI_SHORT, MPI_LOR, comm ); for (i=0; i<count; i++) { if (*(out + i) != *(sol + i)) {errcnt++; fnderr++;}} if (fnderr) fprintf( stderr, "(%d) Error for type MPI_SHORT and op MPI_LOR\n", rank ); free( in ); free( out ); free( sol );}void d6(void){ unsigned short *in, *out, *sol; int i, fnderr=0; in = (unsigned short *)malloc( count * sizeof(unsigned short) ); out = (unsigned short *)malloc( count * sizeof(unsigned short) ); sol = (unsigned short *)malloc( count * sizeof(unsigned short) ); for (i=0; i<count; i++) { *(in + i) = 0; *(sol + i) = 0; *(out + i) = 0; } MPI_Allreduce( in, out, count, MPI_UNSIGNED_SHORT, MPI_LOR, comm ); for (i=0; i<count; i++) { if (*(out + i) != *(sol + i)) {errcnt++; fnderr++;}} if (fnderr) fprintf( stderr, "(%d) Error for type MPI_UNSIGNED_SHORT and op MPI_LOR\n", rank ); free( in ); free( out ); free( sol );}void e6(void){ unsigned *in, *out, *sol; int i, fnderr=0; in = (unsigned *)malloc( count * sizeof(unsigned) ); out = (unsigned *)malloc( count * sizeof(unsigned) ); sol = (unsigned *)malloc( count * sizeof(unsigned) ); for (i=0; i<count; i++) { *(in + i) = 0; *(sol + i) = 0; *(out + i) = 0; } MPI_Allreduce( in, out, count, MPI_UNSIGNED, MPI_LOR, comm ); for (i=0; i<count; i++) { if (*(out + i) != *(sol + i)) {errcnt++; fnderr++;}} if (fnderr) fprintf( stderr, "(%d) Error for type MPI_UNSIGNED and op MPI_LOR\n", rank ); free( in ); free( out ); free( sol );}void f6(void){ unsigned long *in, *out, *sol; int i, fnderr=0; in = (unsigned long *)malloc( count * sizeof(unsigned long) ); out = (unsigned long *)malloc( count * sizeof(unsigned long) ); sol = (unsigned long *)malloc( count * sizeof(unsigned long) ); for (i=0; i<count; i++) { *(in + i) = 0; *(sol + i) = 0; *(out + i) = 0; } MPI_Allreduce( in, out, count, MPI_UNSIGNED_LONG, MPI_LOR, comm ); for (i=0; i<count; i++) { if (*(out + i) != *(sol + i)) {errcnt++; fnderr++;}} if (fnderr) fprintf( stderr, "(%d) Error for type MPI_UNSIGNED_LONG and op MPI_LOR\n", rank ); free( in ); free( out ); free( sol );}void a7(void){ int *in, *out, *sol; int i, fnderr=0; in = (int *)malloc( count * sizeof(int) ); out = (int *)malloc( count * sizeof(int) ); sol = (int *)malloc( count * sizeof(int) ); for (i=0; i<count; i++) { *(in + i) = (rank == 1); *(sol + i) = (size > 1); *(out + i) = 0; } MPI_Allreduce( in, out, count, MPI_INT, MPI_LXOR, comm ); for (i=0; i<count; i++) { if (*(out + i) != *(sol + i)) {errcnt++; fnderr++;}} if (fnderr) fprintf( stderr, "(%d) Error for type MPI_INT and op MPI_LXOR\n", rank); free( in ); free( out ); free( sol );}void b7(void){ long *in, *out, *sol; int i, fnderr=0; in = (long *)malloc( count * sizeof(long) ); out = (long *)malloc( count * sizeof(long) ); sol = (long *)malloc( count * sizeof(long) ); for (i=0; i<count; i++) { *(in + i) = (rank == 1); *(sol + i) = (size > 1); *(out + i) = 0; } MPI_Allreduce( in, out, count, MPI_LONG, MPI_LXOR, comm ); for (i=0; i<count; i++) { if (*(out + i) != *(sol + i)) {errcnt++; fnderr++;}} if (fnderr) fprintf( stderr, "(%d) Error for type MPI_LONG and op MPI_LXOR\n", rank ); free( in ); free( out ); free( sol );}void c7(void){ short *in, *out, *sol; int i, fnderr=0; in = (short *)malloc( count * sizeof(short) ); out = (short *)malloc( count * sizeof(short) ); sol = (short *)malloc( count * sizeof(short) ); for (i=0; i<count; i++) { *(in + i) = (rank == 1); *(sol + i) = (size > 1); *(out + i) = 0; } MPI_Allreduce( in, out, count, MPI_SHORT, MPI_LXOR, comm ); for (i=0; i<count; i++) { if (*(out + i) != *(sol + i)) {errcnt++; fnderr++;}} if (fnderr) fprintf( stderr, "(%d) Error for type MPI_SHORT and op MPI_LXOR\n", rank ); free( in ); free( out ); free( sol );}void d7(void){ unsigned short *in, *out, *sol; int i, fnderr=0; in = (unsigned short *)malloc( count * sizeof(unsigned short) ); out = (unsigned short *)malloc( count * sizeof(unsigned short) ); sol = (unsigned short *)malloc( count * sizeof(unsigned short) ); for (i=0; i<count; i++) { *(in + i) = (rank == 1); *(sol + i) = (size > 1); *(out + i) = 0; } MPI_Allreduce( in, out, count, MPI_UNSIGNED_SHORT, MPI_LXOR, comm ); for (i=0; i<count; i++) { if (*(out + i) != *(sol + i)) {errcnt++; fnderr++;}} if (fnderr) fprintf( stderr, "(%d) Error for type MPI_UNSIGNED_SHORT and op MPI_LXOR\n", rank ); free( in ); free( out ); free( sol );}void e7(void){ unsigned *in, *out, *sol; int i, fnderr=0; in = (unsigned *)malloc( count * sizeof(unsigned) ); out = (unsigned *)malloc( count * sizeof(unsigned) ); sol = (unsigned *)malloc( count * sizeof(unsigned) ); for (i=0; i<count; i++) { *(in + i) = (rank == 1); *(sol + i) = (size > 1); *(out + i) = 0; } MPI_Allreduce( in, out, count, MPI_UNSIGNED, MPI_LXOR, comm ); for (i=0; i<count; i++) { if (*(out + i) != *(sol + i)) {errcnt++; fnderr++;}} if (fnderr) fprintf( stderr, "(%d) Error for type MPI_UNSIGNED and op MPI_LXOR\n", rank ); free( in ); free( out ); free( sol );}void f7(void){ unsigned long *in, *out, *sol; int i, fnderr=0; in = (unsigned long *)malloc( count * sizeof(unsigned long) ); out = (unsigned long *)malloc( count * sizeof(unsigned long) ); sol = (unsigned long *)malloc( count * sizeof(unsigned long) ); for (i=0; i<count; i++) { *(in + i) = (rank == 1); *(sol + i) = (size > 1); *(out + i) = 0; } MPI_Allreduce( in, out, count, MPI_UNSIGNED_LONG, MPI_LXOR, comm ); for (i=0; i<count; i++) { if (*(out + i) != *(sol + i)) {errcnt++; fnderr++;}} if (fnderr) fprintf( stderr, "(%d) Error for type MPI_UNSIGNED_LONG and op MPI_LXOR\n", rank ); free( in ); free( out ); free( sol );}void a8(void){ int *in, *out, *sol; int i, fnderr=0; in = (int *)malloc( count * sizeof(int) ); out = (int *)malloc( count * sizeof(int) ); sol = (int *)malloc( count * sizeof(int) ); for (i=0; i<count; i++) { *(in + i) = 0; *(sol + i) = 0; *(out + i) = 0; } MPI_Allreduce( in, out, count, MPI_INT, MPI_LXOR, comm ); for (i=0; i<count; i++) { if (*(out + i) != *(sol + i)) {errcnt++; fnderr++;}} if (fnderr) fprintf( stderr, "(%d) Error for type MPI_INT and op MPI_LXOR\n", rank ); free( in ); free( out ); free( sol );}void b8(void){ long *in, *out, *sol; int i, fnderr=0; in = (long *)malloc( count * sizeof(long) ); out = (long *)malloc( count * sizeof(long) ); sol = (long *)malloc( count * sizeof(long) ); for (i=0; i<count; i++) { *(in + i) = 0; *(sol + i) = 0; *(out + i) = 0; } MPI_Allreduce( in, out, count, MPI_LONG, MPI_LXOR, comm ); for (i=0; i<count; i++) { if (*(out + i) != *(sol + i)) {errcnt++; fnderr++;}} if (fnderr) fprintf( stderr, "(%d) Error for type MPI_LONG and op MPI_LXOR\n", rank ); free( in ); free( out ); free( sol );}void c8(void){ short *in, *out, *sol; int i, fnderr=0; in = (short *)malloc( count * sizeof(short) ); out = (short *)malloc( count * sizeof(short) ); sol = (short *)malloc( count * sizeof(short) ); for (i=0; i<count; i++) { *(in + i) = 0; *(sol + i) = 0; *(out + i) = 0; } MPI_Allreduce( in, out, count, MPI_SHORT, MPI_LXOR, comm ); for (i=0; i<count; i++) { if (*(out + i) != *(sol + i)) {errcnt++; fnderr++;}} if (fnderr) fprintf( stderr, "(%d) Error for type MPI_SHORT and op MPI_LXOR\n", rank ); free( in ); free( out ); free( sol );}void d8(void){ unsigned short *in, *out, *sol; int i, fnderr=0; in = (unsigned short *)malloc( count * sizeof(unsigned short) ); out = (unsigned short *)malloc( count * sizeof(unsigned short) ); sol = (unsigned short *)malloc( count * sizeof(unsigned short) ); for (i=0; i<count; i++) { *(in + i) = 0; *(sol + i) = 0; *(out + i) = 0; } MPI_Allreduce( in, out, count, MPI_UNSIGNED_SHORT, MPI_LXOR, comm ); for (i=0; i<count; i++) { if (*(out + i) != *(sol + i)) {errcnt++; fnderr++;}} if (fnderr) fprintf( stderr, "(%d) Error for type MPI_UNSIGNED_SHORT and op MPI_LXOR\n", rank ); free( in ); free( out ); free( sol );}void e8(void){ unsigned *in, *out, *sol; int i, fnderr=0; in = (unsigned *)malloc( count * sizeof(unsigned) ); out = (unsigned *)malloc( count * sizeof(unsigned) ); sol = (unsigned *)malloc( count * sizeof(unsigned) ); for (i=0; i<count; i++) { *(in + i) = 0; *(sol + i) = 0; *(out + i) = 0; } MPI_Allreduce( in, out, count, MPI_UNSIGNED, MPI_LXOR, comm ); for (i=0; i<count; i++) { if (*(out + i) != *(sol + i)) {errcnt++; fnderr++;}} if (fnderr) fprintf( stderr, "(%d) Error for type MPI_UNSIGNED and op MPI_LXOR\n", rank ); free( in ); free( out ); free( sol );}void f8(void){ unsigned long *in, *out, *sol; int i, fnderr=0; in = (unsigned long *)malloc( count * sizeof(unsigned long) ); out = (unsigned long *)malloc( count * sizeof(unsigned long) ); sol = (unsigned long *)malloc( count * sizeof(unsigned long) ); for (i=0; i<count; i++) { *(in + i) = 0; *(sol + i) = 0; *(out + i) = 0; } MPI_Allreduce( in, out, count, MPI_UNSIGNED_LONG, MPI_LXOR, comm ); for (i=0; i<count; i++) { if (*(out + i) != *(sol + i)) {errcnt++; fnderr++;}} if (fnderr) fprintf( stderr, "(%d) Error for type MPI_UNSIGNED_LONG and op MPI_LXOR\n", rank ); free( in ); free( out ); free( sol );}void a9(void){ int *in, *out, *sol; int i, fnderr=0; in = (int *)malloc( count * sizeof(int) ); out = (int *)malloc( count * sizeof(int) ); sol = (int *)malloc( count * sizeof(int) ); for (i=0; i<count; i++) { *(in + i) = 1; *(sol + i) = 0; *(out + i) = 0; } MPI_Allreduce( in, out, count, MPI_INT, MPI_LXOR, comm ); for (i=0; i<count; i++) { if (*(out + i) != *(sol + i)) {errcnt++; fnderr++;}} if (fnderr) fprintf( stderr, "(%d) Error for type MPI_INT and op MPI_LXOR\n", rank ); free( in ); free( out ); free( sol );}void b9(void){ long *in, *out, *sol; int i, fnderr=0; in = (long *)malloc( count * sizeof(long) ); out = (long *)malloc( count * sizeof(long) ); sol = (long *)malloc( count * sizeof(long) ); for (i=0; i<count; i++) { *(in + i) = 1; *(sol + i) = 0; *(out + i) = 0; } MPI_Allreduce( in, out, count, MPI_LONG, MPI_LXOR, comm ); for (i=0; i<count; i++) { if (*(out + i) != *(sol + i)) {errcnt++; fnderr++;}} if (fnderr) fprintf( stderr, "(%d) Error for type MPI_LONG and op MPI_LXOR\n", rank ); free( in ); free( out ); free( sol );}void c9(void){ short *in, *out, *sol; int i, fnderr=0; in = (short *)malloc( count * sizeof(short) ); out = (short *)malloc( count * sizeof(short) ); sol = (short *)malloc( count * sizeof(short) ); for (i=0; i<count; i++) { *(in + i) = 1; *(sol + i) = 0; *(out + i) = 0; } MPI_Allreduce( in, out, count, MPI_SHORT, MPI_LXOR, comm ); for (i=0; i<count; i++) { if (*(out + i) != *(sol + i)) {errcnt++; fnderr++;}} if (fnderr) fprintf( stderr, "(%d) Error for type MPI_SHORT and op MPI_LXOR\n", rank ); free( in ); free( out ); free( sol );}void d9(void){ unsigned short *in, *out, *sol; int i, fnderr=0; in = (unsigned short *)malloc( count * sizeof(unsigned short) ); out = (unsigned short *)malloc( count * sizeof(unsigned short) ); sol = (unsigned short *)malloc( count * sizeof(unsigned short) );
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -