VisionCpp
0.0.1
|
The definition is in RDCN file. More...
#include <reduction.hpp>
Public Types | |
using | RHSExpr = RHS |
using | OutType = typename DownSmplOP::OutType |
using | OPType = DownSmplOP |
using | Type = typename OutputMemory< OutType, LfType, Cols, Rows, LVL >::Type |
template<typename TmpRHS > | |
using | ExprExchange = RDCN< DownSmplOP, TmpRHS, Cols, Rows, LfType, LVL > |
Public Member Functions | |
RDCN (RHS rhsArg) | |
void | reset (bool reset) |
template<bool ForcedToExec, size_t LC, size_t LR, size_t LCT, size_t LRT, typename DeviceT > | |
auto | sub_expression_evaluation (const DeviceT &dev) -> decltype(execute_expr< DownSmplOP::Operation_type==ops_category::GlobalNeighbourOP, ForcedToExec, ExprExchange< RHS >, LC, LR, LCT, LRT >(rhs.template sub_expression_evaluation< DownSmplOP::Operation_type==ops_category::GlobalNeighbourOP, LC, LR, LCT, LRT >(dev), dev)) |
sub_expression_evaluation More... | |
Public Attributes | |
RHS | rhs |
bool | subexpr_execution_reseter |
Static Public Attributes | |
static constexpr size_t | LC_Ratio |
static constexpr size_t | LR_Ratio |
static constexpr bool | has_out = false |
static constexpr size_t | Level = LVL |
static constexpr size_t | RThread = Rows * LR_Ratio |
static constexpr size_t | CThread = Cols * LC_Ratio |
static constexpr size_t | ND_Category = expr_category::Unary |
static constexpr size_t | LeafType = Type::LeafType |
static constexpr bool | SubExpressionEvaluationNeeded |
static constexpr size_t | Operation_type = DownSmplOP::Operation_type |
The definition is in RDCN file.
RDCN is used to shrink the size of an input.
It can be used both for NeighbourOP and GlobalNeighbourOP.
DownSmplOP | downsampling function to shrink an input |
LHS | is the input |
RHS | is the filter2d node |
Cols | determines the column size of the output |
Rows | determines the row size of the output |
LfType | determines the type of the leafNode {Buffer2D, Buffer1D, Host, Image} |
LVL | the level of the node in the expression tree |
Definition at line 42 of file reduction.hpp.
using visioncpp::internal::RDCN< DownSmplOP, RHS, Cols, Rows, LfType, LVL >::ExprExchange = RDCN<DownSmplOP, TmpRHS, Cols, Rows, LfType, LVL> |
Definition at line 69 of file reduction.hpp.
using visioncpp::internal::RDCN< DownSmplOP, RHS, Cols, Rows, LfType, LVL >::OPType = DownSmplOP |
Definition at line 55 of file reduction.hpp.
using visioncpp::internal::RDCN< DownSmplOP, RHS, Cols, Rows, LfType, LVL >::OutType = typename DownSmplOP::OutType |
Definition at line 54 of file reduction.hpp.
using visioncpp::internal::RDCN< DownSmplOP, RHS, Cols, Rows, LfType, LVL >::RHSExpr = RHS |
Definition at line 52 of file reduction.hpp.
using visioncpp::internal::RDCN< DownSmplOP, RHS, Cols, Rows, LfType, LVL >::Type = typename OutputMemory<OutType, LfType, Cols, Rows, LVL>::Type |
Definition at line 56 of file reduction.hpp.
|
inline |
Definition at line 73 of file reduction.hpp.
|
inline |
Definition at line 75 of file reduction.hpp.
References visioncpp::internal::RDCN< DownSmplOP, RHS, Cols, Rows, LfType, LVL >::rhs, and visioncpp::internal::RDCN< DownSmplOP, RHS, Cols, Rows, LfType, LVL >::subexpr_execution_reseter.
|
inline |
sub_expression_evaluation
This function is used to break the expression tree whenever necessary. The decision for breaking the tree will be determined based on the static parameter called SubExpressionEvaluationNeeded. When this is set to true, the sub_expression_evaluation is called recursively from the root of the tree. Each node based on their parent decision will decide to launch a kernel for itself. Also, they decide for each of their children whether or not to launch a kernel separately. template parameters:
ForcedToExec | : a boolean value representing the decision made by the parent of this node for launching a kernel. |
LC | is the column size of local memory required by Filter2D and DownSmplOP |
LR | is the row size of local memory required by Filter2D and DownSmplOP |
LCT | is the column size of workgroup |
LRT | is the row size of workgroup |
DeviceT | type representing the device function parameters: |
dev | : the selected device for executing the expression |
Definition at line 102 of file reduction.hpp.
References visioncpp::internal::execute_expr(), visioncpp::internal::ops_category::GlobalNeighbourOP, and visioncpp::internal::RDCN< DownSmplOP, RHS, Cols, Rows, LfType, LVL >::rhs.
|
staticconstexpr |
Definition at line 59 of file reduction.hpp.
|
staticconstexpr |
Definition at line 53 of file reduction.hpp.
|
staticconstexpr |
Definition at line 44 of file reduction.hpp.
|
staticconstexpr |
Definition at line 61 of file reduction.hpp.
|
staticconstexpr |
Definition at line 57 of file reduction.hpp.
|
staticconstexpr |
Definition at line 48 of file reduction.hpp.
|
staticconstexpr |
Definition at line 60 of file reduction.hpp.
|
staticconstexpr |
Definition at line 67 of file reduction.hpp.
RHS visioncpp::internal::RDCN< DownSmplOP, RHS, Cols, Rows, LfType, LVL >::rhs |
Definition at line 71 of file reduction.hpp.
Referenced by visioncpp::internal::RDCN< DownSmplOP, RHS, Cols, Rows, LfType, LVL >::reset(), and visioncpp::internal::RDCN< DownSmplOP, RHS, Cols, Rows, LfType, LVL >::sub_expression_evaluation().
|
staticconstexpr |
Definition at line 58 of file reduction.hpp.
bool visioncpp::internal::RDCN< DownSmplOP, RHS, Cols, Rows, LfType, LVL >::subexpr_execution_reseter |
Definition at line 72 of file reduction.hpp.
Referenced by visioncpp::internal::RDCN< DownSmplOP, RHS, Cols, Rows, LfType, LVL >::reset().
|
staticconstexpr |
Definition at line 62 of file reduction.hpp.