- Timestamp:
- Apr 24, 2012, 3:38:21 PM (14 years ago)
- Children:
- a150d0
- Parents:
- 716da7
- Location:
- src
- Files:
-
- 5 edited
-
base/command_list.cpp (modified) (2 diffs)
-
base/timer.cpp (modified) (1 diff)
-
comm/comm.hpp (modified) (1 diff)
-
comm/comm_mpi.cpp (modified) (1 diff)
-
comm/comm_mpi.hpp (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
src/base/command_list.cpp
r716da7 rb51c3b 48 48 MPI_Barrier(MPI_COMM_WORLD); 49 49 #endif 50 comm->PrintString ("Command \"%s\" start", iter->first.c_str());50 comm->PrintStringOnce("Command \"%s\" start", iter->first.c_str()); 51 51 #endif 52 52 … … 59 59 MPI_Barrier(MPI_COMM_WORLD); 60 60 #endif 61 comm->PrintString ("Command \"%s\" done", iter->first.c_str());61 comm->PrintStringOnce("Command \"%s\" done", iter->first.c_str()); 62 62 #endif 63 63 -
src/base/timer.cpp
r716da7 rb51c3b 184 184 185 185 if (rank == 0) { 186 int min_calls, max_calls, avg_calls; 186 int min_calls, max_calls; 187 vmg_float avg_calls; 187 188 vmg_float min_duration, max_duration, avg_duration; 188 189 int rank_min_calls, rank_max_calls, rank_min_duration, rank_max_duration; -
src/comm/comm.hpp
r716da7 rb51c3b 72 72 virtual void GlobalSumArray(vmg_int* array, const vmg_int& size) {} 73 73 74 virtual vmg_float GlobalMax(const vmg_float& value) {return value;} 75 virtual vmg_float GlobalMaxRoot(const vmg_float& value) {return value;} 76 virtual void GlobalMaxArray(vmg_float* array, const vmg_int& size) {} 77 78 virtual vmg_int GlobalMax(const vmg_int& value) {return value;} 79 virtual vmg_int GlobalMaxRoot(const vmg_int& value) {return value;} 80 virtual void GlobalMaxArray(vmg_int* array, const vmg_int& size) {} 81 74 82 virtual vmg_float LevelSum(const Grid& grid, const vmg_float& value) {return value;} 75 83 virtual vmg_float LevelSumRoot(const Grid& grid, const vmg_float& value) {return value;} -
src/comm/comm_mpi.cpp
r716da7 rb51c3b 513 513 { 514 514 MPI_Allreduce(MPI_IN_PLACE, array, size, MPI_INT, MPI_SUM, comm_global); 515 } 516 517 vmg_float CommMPI::GlobalMax(const vmg_float& value) 518 { 519 vmg_float result = value; 520 MPI_Allreduce(MPI_IN_PLACE, &result, 1, MPI_DOUBLE, MPI_MAX, comm_global); 521 return result; 522 } 523 524 vmg_float CommMPI::GlobalMaxRoot(const vmg_float& value) 525 { 526 vmg_float recv_buffer = value; 527 vmg_float send_buffer = value; 528 MPI_Reduce(&send_buffer, &recv_buffer, 1, MPI_DOUBLE, MPI_MAX, 0, comm_global); 529 return recv_buffer; 530 } 531 532 void CommMPI::GlobalMaxArray(vmg_float* array, const vmg_int& size) 533 { 534 MPI_Allreduce(MPI_IN_PLACE, array, size, MPI_DOUBLE, MPI_MAX, comm_global); 535 } 536 537 vmg_int CommMPI::GlobalMax(const vmg_int& value) 538 { 539 vmg_int result = value; 540 MPI_Allreduce(MPI_IN_PLACE, &result, 1, MPI_INT, MPI_MAX, comm_global); 541 return result; 542 } 543 544 vmg_int CommMPI::GlobalMaxRoot(const vmg_int& value) 545 { 546 vmg_int recv_buffer = value; 547 vmg_int send_buffer = value; 548 MPI_Reduce(&send_buffer, &recv_buffer, 1, MPI_INT, MPI_MAX, 0, comm_global); 549 return recv_buffer; 550 } 551 552 void CommMPI::GlobalMaxArray(vmg_int* array, const vmg_int& size) 553 { 554 MPI_Allreduce(MPI_IN_PLACE, array, size, MPI_INT, MPI_MAX, comm_global); 515 555 } 516 556 -
src/comm/comm_mpi.hpp
r716da7 rb51c3b 76 76 vmg_int GlobalSumRoot(const vmg_int& value); 77 77 void GlobalSumArray(vmg_int* array, const vmg_int& size); 78 79 vmg_float GlobalMax(const vmg_float& value); 80 vmg_float GlobalMaxRoot(const vmg_float& value); 81 void GlobalMaxArray(vmg_float* array, const vmg_int& size); 82 83 vmg_int GlobalMax(const vmg_int& value); 84 vmg_int GlobalMaxRoot(const vmg_int& value); 85 void GlobalMaxArray(vmg_int* array, const vmg_int& size); 78 86 79 87 vmg_float LevelSum(const Grid& grid, const vmg_float& value);
Note:
See TracChangeset
for help on using the changeset viewer.
