Skip to content
Snippets Groups Projects

Fix MPI memory leak

1 file
+ 6
0
Compare changes
  • Side-by-side
  • Inline
+ 6
0
@@ -43,6 +43,8 @@ allReduceReproducibleSum(const ReproducibleScalarSum<ArrayT, BoolArrayT>& s)
@@ -43,6 +43,8 @@ allReduceReproducibleSum(const ReproducibleScalarSum<ArrayT, BoolArrayT>& s)
BinType sum_bin = zero;
BinType sum_bin = zero;
MPI_Allreduce(&local_bin, &sum_bin, 1, mpi_bin_type, mpi_bin_sum_op, parallel::Messenger::getInstance().comm());
MPI_Allreduce(&local_bin, &sum_bin, 1, mpi_bin_type, mpi_bin_sum_op, parallel::Messenger::getInstance().comm());
 
MPI_Op_free(&mpi_bin_sum_op);
 
return sum_bin;
return sum_bin;
}
}
@@ -68,6 +70,8 @@ allReduceReproducibleSum(const ReproducibleTinyVectorSum<ArrayT, BoolArrayT>& s)
@@ -68,6 +70,8 @@ allReduceReproducibleSum(const ReproducibleTinyVectorSum<ArrayT, BoolArrayT>& s)
BinType sum_bin = zero;
BinType sum_bin = zero;
MPI_Allreduce(&local_bin, &sum_bin, 1, mpi_bin_type, mpi_bin_sum_op, parallel::Messenger::getInstance().comm());
MPI_Allreduce(&local_bin, &sum_bin, 1, mpi_bin_type, mpi_bin_sum_op, parallel::Messenger::getInstance().comm());
 
MPI_Op_free(&mpi_bin_sum_op);
 
return sum_bin;
return sum_bin;
}
}
@@ -93,6 +97,8 @@ allReduceReproducibleSum(const ReproducibleTinyMatrixSum<ArrayT, BoolArrayT>& s)
@@ -93,6 +97,8 @@ allReduceReproducibleSum(const ReproducibleTinyMatrixSum<ArrayT, BoolArrayT>& s)
BinType sum_bin = zero;
BinType sum_bin = zero;
MPI_Allreduce(&local_bin, &sum_bin, 1, mpi_bin_type, mpi_bin_sum_op, parallel::Messenger::getInstance().comm());
MPI_Allreduce(&local_bin, &sum_bin, 1, mpi_bin_type, mpi_bin_sum_op, parallel::Messenger::getInstance().comm());
 
MPI_Op_free(&mpi_bin_sum_op);
 
return sum_bin;
return sum_bin;
}
}
Loading