46 #ifndef MUELU_PERFUTILS_DECL_HPP
47 #define MUELU_PERFUTILS_DECL_HPP
51 #include <Teuchos_ParameterList.hpp>
53 #include <Xpetra_Export_fwd.hpp>
54 #include <Xpetra_Import_fwd.hpp>
55 #include <Xpetra_Matrix_fwd.hpp>
61 #define MueLu_sumAll(rcpComm, in, out) \
62 Teuchos::reduceAll(*rcpComm, Teuchos::REDUCE_SUM, in, Teuchos::outArg(out))
63 #define MueLu_minAll(rcpComm, in, out) \
64 Teuchos::reduceAll(*rcpComm, Teuchos::REDUCE_MIN, in, Teuchos::outArg(out))
65 #define MueLu_maxAll(rcpComm, in, out) \
66 Teuchos::reduceAll(*rcpComm, Teuchos::REDUCE_MAX, in, Teuchos::outArg(out))
68 template <
class Scalar,
69 class LocalOrdinal = int,
70 class GlobalOrdinal = LocalOrdinal,
71 class Node = KokkosClassic::DefaultNode::DefaultNodeType>
73 #undef MUELU_PERFUTILS_SHORT
77 static std::string
PrintMatrixInfo(
const Matrix& A,
const std::string& msgTag, RCP<const Teuchos::ParameterList> params = Teuchos::null);
79 static std::string
CommPattern(
const Matrix& A,
const std::string& msgTag, RCP<const Teuchos::ParameterList> params = Teuchos::null);
87 #define MUELU_PERFUTILS_SHORT
88 #endif // MUELU_PERFUTILS_DECL_HPP