forked from portelli/lattice-benchmarks
		
	Grid comms warmup sequence
This commit is contained in:
		| @@ -168,6 +168,7 @@ class Benchmark | |||||||
|       } |       } | ||||||
|  |  | ||||||
|       double dbytes; |       double dbytes; | ||||||
|  | #define NWARMUP 50 | ||||||
|  |  | ||||||
|       for (int dir = 0; dir < 8; dir++) |       for (int dir = 0; dir < 8; dir++) | ||||||
|       { |       { | ||||||
| @@ -176,6 +177,24 @@ class Benchmark | |||||||
|         { |         { | ||||||
|  |  | ||||||
|           std::vector<double> times(Nloop); |           std::vector<double> times(Nloop); | ||||||
|  |           for (int i = 0; i < NWARMUP; i++) | ||||||
|  |           { | ||||||
|  |             int xmit_to_rank; | ||||||
|  |             int recv_from_rank; | ||||||
|  |  | ||||||
|  |             if (dir == mu) | ||||||
|  |             { | ||||||
|  |               int comm_proc = 1; | ||||||
|  |               Grid.ShiftedRanks(mu, comm_proc, xmit_to_rank, recv_from_rank); | ||||||
|  |             } | ||||||
|  |             else | ||||||
|  |             { | ||||||
|  |               int comm_proc = mpi_layout[mu] - 1; | ||||||
|  |               Grid.ShiftedRanks(mu, comm_proc, xmit_to_rank, recv_from_rank); | ||||||
|  |             } | ||||||
|  |             Grid.SendToRecvFrom((void *)&xbuf[dir][0], xmit_to_rank, | ||||||
|  |                                 (void *)&rbuf[dir][0], recv_from_rank, bytes); | ||||||
|  |           } | ||||||
|           for (int i = 0; i < Nloop; i++) |           for (int i = 0; i < Nloop; i++) | ||||||
|           { |           { | ||||||
|  |  | ||||||
| @@ -249,7 +268,6 @@ class Benchmark | |||||||
|     uint64_t NN; |     uint64_t NN; | ||||||
|     uint64_t lmax = 64; |     uint64_t lmax = 64; | ||||||
| #define NLOOP (200 * lmax * lmax * lmax / lat / lat / lat) | #define NLOOP (200 * lmax * lmax * lmax / lat / lat / lat) | ||||||
| #define NWARMUP 50 |  | ||||||
|  |  | ||||||
|     GridSerialRNG sRNG; |     GridSerialRNG sRNG; | ||||||
|     sRNG.SeedFixedIntegers(std::vector<int>({45, 12, 81, 9})); |     sRNG.SeedFixedIntegers(std::vector<int>({45, 12, 81, 9})); | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user