Go to the documentation of this file.
9 template <
class T,
int myStyle>
15 if constexpr (myStyle ==
styleC) {
16 for (
int i=0; i < arr.totElems(); i++) {
if (arr(i) == mv)
return i; }
18 for (
int i=
lbound(arr,1); i <=
ubound(arr,1); i++) {
if (arr(i) == mv)
return i; }
30 for (
int i=0; i < arr.totElems(); i++) {
if (arr(i) == mv)
return i; }
47 for (
int i=
lbound(arr,1); i <=
ubound(arr,1); i++) {
if (arr(i) == mv)
return i; }
57 template <
class T,
class D0>
70 template <
class T,
unsigned D0>
Implements the functionality of a stream for parallel kernel execution. If the Stream::create() metho...
Definition: YAKL_streams_events.h:394
int minloc(Array< T, 1, memHost, myStyle > const &arr)
Definition: YAKL_intrinsics_minloc.h:10
YAKL_INLINE bool allocated(T const &arr)
Definition: YAKL_intrinsics_allocated.h:9
void parallel_for(char const *str, Bounds< N, simple > const &bounds, F const &f, LaunchConfig< VecLen, B4B > config=LaunchConfig<>())
[ASYNCHRONOUS] Launch the passed functor in parallel.
T hostRead(Stream stream=Stream()) const
Returns a host copy of the data. This is blocking.
Definition: YAKL_ScalarLiveOut.h:83
#define __YAKL_NAMESPACE_WRAPPER_END__
Definition: YAKL.h:20
T minval(Array< T, rank, memHost, myStyle > const &arr)
Definition: YAKL_intrinsics_minval.h:10
void parallel_for(char const *str, Bounds< N, simple > const &bounds, F const &f, LaunchConfig< VecLen, B4B > config=LaunchConfig<>())
[ASYNCHRONOUS] Launch the passed functor in parallel.
#define __YAKL_NAMESPACE_WRAPPER_BEGIN__
Definition: YAKL.h:19
LaunchConfig<> DefaultLaunchConfig
This launch configuration sets vector length to the device default and B4B to false.
Definition: YAKL_LaunchConfig.h:77
#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 int ubound(T const &arr, int dim)
Definition: YAKL_intrinsics_ubound.h:9
Class to handle scalars that exist before kernels, are written to by kernels, and read after the kern...
Definition: YAKL_ScalarLiveOut.h:39
YAKL_INLINE int lbound(T const &arr, int dim)
Definition: YAKL_intrinsics_lbound.h:9
YAKL_INLINE void yakl_throw(const char *msg)
Throw an error message. Works from the host or device.
Definition: YAKL_error.h:17
constexpr int styleC
Template parameter for yakl::Array that specifies it should follow C-style behavior.
Definition: YAKL_Array.h:20
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
YAKL_INLINE CSArray< uint, 1, rank > get_dimensions() const
Returns the dimensions of this array as a yakl::SArray object.
Definition: YAKL_CSArray.h:157
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
#define YAKL_LAMBDA
Used to create C++ lambda expressions passed to parallel_for and parallel_outer
Definition: YAKL_defines.h:128
Fortran-style array on the stack similar in nature to, e.g., float arr[ny][nx];
Definition: YAKL_FSArray.h:53