44 #ifndef ROLTEUCHOSBATCHMANAGER_HPP 45 #define ROLTEUCHOSBATCHMANAGER_HPP 48 #include "Teuchos_RCP.hpp" 49 #include "Teuchos_Comm.hpp" 50 #include "Teuchos_CommHelpers.hpp" 54 template<
class Real,
class Ordinal>
57 Teuchos::RCP<const Teuchos::Comm<Ordinal> >
comm_;
64 return Teuchos::rank<Ordinal>(*comm_);
68 return Teuchos::size<Ordinal>(*comm_);
71 void minAll(Real* input, Real* output,
int dim) {
72 Teuchos::reduceAll<Ordinal,Real>(*
comm_,Teuchos::REDUCE_MIN,
76 void maxAll(Real* input, Real* output,
int dim) {
77 Teuchos::reduceAll<Ordinal,Real>(*
comm_,Teuchos::REDUCE_MAX,
81 void sumAll(Real* input, Real* output,
int dim) {
82 Teuchos::reduceAll<Ordinal,Real>(*
comm_,Teuchos::REDUCE_SUM,
89 Teuchos::barrier<Ordinal>(*comm_);
void minAll(Real *input, Real *output, int dim)
void maxAll(Real *input, Real *output, int dim)
Defines the linear algebra or vector space interface.
void sumAll(Real *input, Real *output, int dim)
TeuchosBatchManager(const Teuchos::RCP< const Teuchos::Comm< Ordinal > > &comm)
Teuchos::RCP< const Teuchos::Comm< Ordinal > > comm_