Changeset b51c3b for src


Ignore:
Timestamp:
Apr 24, 2012, 3:38:21 PM (14 years ago)
Author:
Julian Iseringhausen <isering@…>
Children:
a150d0
Parents:
716da7
Message:

Minor changes to vmg.

git-svn-id: https://svn.version.fz-juelich.de/scafacos/trunk@1733 5161e1c8-67bf-11de-9fd5-51895aff932f

Location:
src
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • src/base/command_list.cpp

    r716da7 rb51c3b  
    4848    MPI_Barrier(MPI_COMM_WORLD);
    4949#endif
    50     comm->PrintString("Command \"%s\" start", iter->first.c_str());
     50    comm->PrintStringOnce("Command \"%s\" start", iter->first.c_str());
    5151#endif
    5252
     
    5959    MPI_Barrier(MPI_COMM_WORLD);
    6060#endif
    61     comm->PrintString("Command \"%s\" done", iter->first.c_str());
     61    comm->PrintStringOnce("Command \"%s\" done", iter->first.c_str());
    6262#endif
    6363
  • src/base/timer.cpp

    r716da7 rb51c3b  
    184184
    185185    if (rank == 0) {
    186       int min_calls, max_calls, avg_calls;
     186      int min_calls, max_calls;
     187      vmg_float avg_calls;
    187188      vmg_float min_duration, max_duration, avg_duration;
    188189      int rank_min_calls, rank_max_calls, rank_min_duration, rank_max_duration;
  • src/comm/comm.hpp

    r716da7 rb51c3b  
    7272  virtual void GlobalSumArray(vmg_int* array, const vmg_int& size) {}
    7373
     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
    7482  virtual vmg_float LevelSum(const Grid& grid, const vmg_float& value) {return value;}
    7583  virtual vmg_float LevelSumRoot(const Grid& grid, const vmg_float& value) {return value;}
  • src/comm/comm_mpi.cpp

    r716da7 rb51c3b  
    513513{
    514514  MPI_Allreduce(MPI_IN_PLACE, array, size, MPI_INT, MPI_SUM, comm_global);
     515}
     516
     517vmg_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
     524vmg_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
     532void 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
     537vmg_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
     544vmg_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
     552void CommMPI::GlobalMaxArray(vmg_int* array, const vmg_int& size)
     553{
     554  MPI_Allreduce(MPI_IN_PLACE, array, size, MPI_INT, MPI_MAX, comm_global);
    515555}
    516556
  • src/comm/comm_mpi.hpp

    r716da7 rb51c3b  
    7676  vmg_int GlobalSumRoot(const vmg_int& value);
    7777  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);
    7886
    7987  vmg_float LevelSum(const Grid& grid, const vmg_float& value);
Note: See TracChangeset for help on using the changeset viewer.