- case 0: /* Single short put (1 word at OFFSET_1) */
- source[0] = PUT_VAL;
- MPI_Put( source, 1, MPI_INT, master, OFFSET_1, 1, MPI_INT, win );
- break;
- case 1: /* Single short accumulate (1 word of value 17 at OFFSET_2) */
- source[0] = ACC_VAL;
- MPI_Accumulate( source, 1, MPI_INT, master,
- OFFSET_2, 1, MPI_INT, MPI_SUM, win );
- break;
- case 2: /* Single short get (1 word at OFFSET_3) */
- getbuf[0] = -1;
- MPI_Get( getbuf, 1, MPI_INT, master, OFFSET_3, 1, MPI_INT, win );
- break;
- case 3: /* Datatype single put (strided put) */
- for (j=0; j<veccount; j++) {
- source[j*stride] = PUT_VAL + j;
- }
- MPI_Put( source, 1, vectype, master, OFFSET_1, 1, vectype, win );
- break;
- case 4: /* Datatype single accumulate (strided acc) */
- for (j=0; j<veccount; j++) {
- source[j*stride] = ACC_VAL + j;
- }
- MPI_Accumulate( source, 1, vectype, master,
- OFFSET_2, 1, vectype, MPI_SUM, win );
- break;
- case 5: /* Datatype single get (strided get) */
- for (j=0; j<veccount; j++) {
- getbuf[j] = -j;
- }
- MPI_Get( getbuf, 1, vectype, master,
- OFFSET_3, 1, vectype, win );
- break;
- case 6: /* a few small puts (like strided put, but 1 word at a time) */
- for (j=0; j<veccount; j++) {
- source[j*stride] = PUT_VAL + j;
- }
- for (j=0; j<veccount; j++) {
- MPI_Put( source + j*stride, 1, MPI_INT, master,
- OFFSET_1+j*stride, 1, MPI_INT, win );
- }
- break;
- case 7: /* a few small accumulates (like strided acc, but 1 word at a time )*/
- for (j=0; j<veccount; j++) {
- source[j*stride] = ACC_VAL + j;
- }
- for (j=0; j<veccount; j++) {
- MPI_Accumulate( source + j*stride, 1, MPI_INT, master,
- OFFSET_2+j*stride, 1, MPI_INT, MPI_SUM, win );
- }
- break;
- case 8: /* a few small gets (like strided get, but 1 word at a time) */
- for (j=0; j<veccount; j++) {
- getbuf[j*stride] = -j;
- }
- for (j=0; j<veccount; j++) {
- MPI_Get( getbuf + j*stride, 1, MPI_INT, master,
- OFFSET_3+j*stride, 1, MPI_INT, win );
- }
- break;
- case 9: /* Single long put (OFFSET_1) */
- for (j=0; j<longcount; j++) source[j] = j;
- MPI_Put( source, longcount, MPI_INT, master,
- OFFSET_1, longcount, MPI_INT, win );
- break;
- case 10: /* Single long accumulate (OFFSET_2) */
- for (j=0; j<longcount; j++) source[j] = j;
- MPI_Accumulate( source, longcount, MPI_INT, master,
- OFFSET_2, longcount, MPI_INT, MPI_SUM, win );
- break;
- case 11: /* Single long get (OFFSET_3) */
- for (j=0; j<longcount; j++) getbuf[j] = -j;
- MPI_Get( getbuf, longcount, MPI_INT, master,
- OFFSET_3, longcount, MPI_INT, win );
- break;
- case 12: /* a few long puts (start at OFFSET_1, medcount ) */
- for (j=0; j<mednum; j++) {
- for (k=0; k<medcount; k++) {
- source[j*medcount+k] = j*2*medcount+k;
- }
- MPI_Put( source + j*medcount, medcount, MPI_INT, master,
- OFFSET_1 + j*2*medcount, medcount, MPI_INT, win );
- }
- break;
- case 13: /* a few long accumulates (start at OFFSET_2, medcount) */
- for (j=0; j<mednum; j++) {
- for (k=0; k<medcount; k++) {
- source[j*medcount+k] = ACC_VAL + j*2*medcount+k;
- }
- MPI_Accumulate( source + j*medcount, medcount, MPI_INT, master,
- OFFSET_2 + j*2*medcount, medcount, MPI_INT,
- MPI_SUM, win );
- }
- break;
- case 14: /* a few long gets (start at OFFSET_3, medcount) */
- for (j=0; j<mednum; j++) {
- for (k=0; k<medcount; k++) {
- getbuf[j*medcount+k] = -(j*medcount+k);
- }
- MPI_Get( getbuf + j*medcount, medcount, MPI_INT, master,
- OFFSET_3 + j*2*medcount, medcount, MPI_INT, win );
- }
- break;
+ case 0: /* Single short put (1 word at OFFSET_1) */
+ source[0] = PUT_VAL;
+ MPI_Put(source, 1, MPI_INT, master, OFFSET_1, 1, MPI_INT, win);
+ break;
+ case 1: /* Single short accumulate (1 word of value 17 at OFFSET_2) */
+ source[0] = ACC_VAL;
+ MPI_Accumulate(source, 1, MPI_INT, master, OFFSET_2, 1, MPI_INT, MPI_SUM, win);
+ break;
+ case 2: /* Single short get (1 word at OFFSET_3) */
+ getbuf[0] = -1;
+ MPI_Get(getbuf, 1, MPI_INT, master, OFFSET_3, 1, MPI_INT, win);
+ break;
+ case 3: /* Datatype single put (strided put) */
+ for (j = 0; j < veccount; j++) {
+ source[j * stride] = PUT_VAL + j;
+ }
+ MPI_Put(source, 1, vectype, master, OFFSET_1, 1, vectype, win);
+ break;
+ case 4: /* Datatype single accumulate (strided acc) */
+ for (j = 0; j < veccount; j++) {
+ source[j * stride] = ACC_VAL + j;
+ }
+ MPI_Accumulate(source, 1, vectype, master, OFFSET_2, 1, vectype, MPI_SUM, win);
+ break;
+ case 5: /* Datatype single get (strided get) */
+ for (j = 0; j < veccount; j++) {
+ getbuf[j] = -j;
+ }
+ MPI_Get(getbuf, 1, vectype, master, OFFSET_3, 1, vectype, win);
+ break;
+ case 6: /* a few small puts (like strided put, but 1 word at a time) */
+ for (j = 0; j < veccount; j++) {
+ source[j * stride] = PUT_VAL + j;
+ }
+ for (j = 0; j < veccount; j++) {
+ MPI_Put(source + j * stride, 1, MPI_INT, master,
+ OFFSET_1 + j * stride, 1, MPI_INT, win);
+ }
+ break;
+ case 7: /* a few small accumulates (like strided acc, but 1 word at a time) */
+ for (j = 0; j < veccount; j++) {
+ source[j * stride] = ACC_VAL + j;
+ }
+ for (j = 0; j < veccount; j++) {
+ MPI_Accumulate(source + j * stride, 1, MPI_INT, master,
+ OFFSET_2 + j * stride, 1, MPI_INT, MPI_SUM, win);
+ }
+ break;
+ case 8: /* a few small gets (like strided get, but 1 word at a time) */
+ for (j = 0; j < veccount; j++) {
+ getbuf[j * stride] = -j;
+ }
+ for (j = 0; j < veccount; j++) {
+ MPI_Get(getbuf + j * stride, 1, MPI_INT, master,
+ OFFSET_3 + j * stride, 1, MPI_INT, win);
+ }
+ break;
+ case 9: /* Single long put (OFFSET_1) */
+ for (j = 0; j < longcount; j++)
+ source[j] = j;
+ MPI_Put(source, longcount, MPI_INT, master, OFFSET_1, longcount, MPI_INT, win);
+ break;
+ case 10: /* Single long accumulate (OFFSET_2) */
+ for (j = 0; j < longcount; j++)
+ source[j] = j;
+ MPI_Accumulate(source, longcount, MPI_INT, master,
+ OFFSET_2, longcount, MPI_INT, MPI_SUM, win);
+ break;
+ case 11: /* Single long get (OFFSET_3) */
+ for (j = 0; j < longcount; j++)
+ getbuf[j] = -j;
+ MPI_Get(getbuf, longcount, MPI_INT, master, OFFSET_3, longcount, MPI_INT, win);
+ break;
+ case 12: /* a few long puts (start at OFFSET_1, medcount) */
+ for (j = 0; j < mednum; j++) {
+ for (k = 0; k < medcount; k++) {
+ source[j * medcount + k] = j * 2 * medcount + k;
+ }
+ MPI_Put(source + j * medcount, medcount, MPI_INT, master,
+ OFFSET_1 + j * 2 * medcount, medcount, MPI_INT, win);
+ }
+ break;
+ case 13: /* a few long accumulates (start at OFFSET_2, medcount) */
+ for (j = 0; j < mednum; j++) {
+ for (k = 0; k < medcount; k++) {
+ source[j * medcount + k] = ACC_VAL + j * 2 * medcount + k;
+ }
+ MPI_Accumulate(source + j * medcount, medcount, MPI_INT, master,
+ OFFSET_2 + j * 2 * medcount, medcount, MPI_INT, MPI_SUM, win);
+ }
+ break;
+ case 14: /* a few long gets (start at OFFSET_3, medcount) */
+ for (j = 0; j < mednum; j++) {
+ for (k = 0; k < medcount; k++) {
+ getbuf[j * medcount + k] = -(j * medcount + k);
+ }
+ MPI_Get(getbuf + j * medcount, medcount, MPI_INT, master,
+ OFFSET_3 + j * 2 * medcount, medcount, MPI_INT, win);
+ }
+ break;