Go to the documentation of this file.
9 template <
class T,
int rank,
int myStyle>
12 if (!arr.initialized()) {
yakl_throw(
"ERROR: calling maxval on an array that has not been initialized"); }
14 typename std::remove_cv<T>::type m = arr.data()[0];
15 for (
int i=1; i<arr.totElems(); i++) {
16 if (arr.data()[i] > m) { m = arr.data()[i]; }
21 template <
class T,
int rank,
int myStyle>
24 if (!arr.initialized()) {
yakl_throw(
"ERROR: calling maxval on an array that has not been initialized"); }
26 typedef typename std::remove_cv<T>::type TNC;
27 ParallelMax<TNC,memDevice> pmax(arr.totElems(),stream);
28 return pmax(
const_cast<TNC *
>(arr.data()) );
31 template <
class T,
int rank,
class D0,
class D1,
class D2,
class D3>
33 typename std::remove_cv<T>::type m = arr.
data()[0];
34 for (
int i=1; i<arr.
totElems(); i++) {
35 if (arr.
data()[i] > m) { m = arr.
data()[i]; }
40 template <
class T,
int rank,
unsigned D0,
unsigned D1,
unsigned D2,
unsigned D3>
42 typename std::remove_cv<T>::type m = arr.
data()[0];
43 for (
int i=1; i<arr.
totElems(); i++) {
44 if (arr.
data()[i] > m) { m = arr.
data()[i]; }
static constexpr unsigned totElems()
Get the total number of array elements.
Definition: YAKL_FSArray.h:179
Implements the functionality of a stream for parallel kernel execution. If the Stream::create() metho...
Definition: YAKL_streams_events.h:394
#define __YAKL_NAMESPACE_WRAPPER_END__
Definition: YAKL.h:20
#define __YAKL_NAMESPACE_WRAPPER_BEGIN__
Definition: YAKL.h:19
#define YAKL_INLINE
Used to decorate functions called from kernels (parallel_for and parallel_outer) or from CPU function...
Definition: YAKL_defines.h:140
YAKL_INLINE void yakl_throw(const char *msg)
Throw an error message. Works from the host or device.
Definition: YAKL_error.h:17
T maxval(Array< T, rank, memHost, myStyle > const &arr)
Definition: YAKL_intrinsics_maxval.h:10
This declares the yakl::Array class. Please see the yakl::styleC and yakl::styleFortran template spec...
Definition: YAKL_Array.h:40
C-style array on the stack similar in nature to, e.g., float arr[ny][nx];
Definition: YAKL_CSArray.h:30
static constexpr unsigned totElems()
Get the total number of array elements.
Definition: YAKL_CSArray.h:131
YAKL_INLINE T * data() const
Get the underlying raw data pointer.
Definition: YAKL_CSArray.h:123
YAKL_INLINE T * data() const
Get the underlying raw data pointer.
Definition: YAKL_FSArray.h:171
Fortran-style array on the stack similar in nature to, e.g., float arr[ny][nx];
Definition: YAKL_FSArray.h:53