Ifpack2 Templated Preconditioning Package
Version 1.0
Main Page
Related Pages
Namespaces
Classes
Files
File List
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Groups
Pages
src
Ifpack2_BlockHelper_Timers.hpp
1
// @HEADER
2
// *****************************************************************************
3
// Ifpack2: Templated Object-Oriented Algebraic Preconditioner Package
4
//
5
// Copyright 2009 NTESS and the Ifpack2 contributors.
6
// SPDX-License-Identifier: BSD-3-Clause
7
// *****************************************************************************
8
// @HEADER
9
10
#ifndef IFPACK2_BLOCKHELPER_TIMERS_HPP
11
#define IFPACK2_BLOCKHELPER_TIMERS_HPP
12
13
namespace
Ifpack2 {
14
15
namespace
BlockHelperDetails {
16
17
#if defined(HAVE_IFPACK2_BLOCKTRIDICONTAINER_TIMERS)
18
#define IFPACK2_BLOCKHELPER_TIMER(label, varname) TEUCHOS_FUNC_TIME_MONITOR_DIFF(label, varname);
19
#define IFPACK2_BLOCKHELPER_TIMER_FENCE(execution_space) execution_space().fence();
20
#define IFPACK2_BLOCKHELPER_TIMER_DEFAULT_FENCE() Kokkos::DefaultExecutionSpace().fence();
21
#else
22
#define IFPACK2_BLOCKHELPER_TIMER(label, varname)
23
#define IFPACK2_BLOCKHELPER_TIMER_FENCE(execution_space)
24
#define IFPACK2_BLOCKHELPER_TIMER_DEFAULT_FENCE()
25
#endif
26
27
#define IFPACK2_BLOCKHELPER_TIMER_WITH_FENCE(label, varname, execution_space) \
28
IFPACK2_BLOCKHELPER_TIMER_FENCE(execution_space) \
29
IFPACK2_BLOCKHELPER_TIMER(label, varname)
30
31
}
// namespace BlockHelperDetails
32
33
}
// namespace Ifpack2
34
35
#endif
Generated by
1.8.5