Optimized Belief Propagation (CPU and GPU)
BpRunUtils.h File Reference

File with namespace for enums, constants, structures, and functions specific to belief propagation processing. More...

#include <string>
#include <string_view>
#include <array>
#include <limits>
#include "RunSettingsParams/RunSettingsConstsEnums.h"
#include "RunEval/RunTypeConstraints.h"
#include "RunEval/RunData.h"
Include dependency graph for BpRunUtils.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 beliefprop
 Namespace for enums, constants, structures, and functions specific to belief propagation processing.
 

Functions

unsigned int beliefprop::NumBpStereoRuns (unsigned int disparity_vals)
 Get number of stereo runs when evaluating implementation Perform less stereo runs if greater number of disparity values since implementation takes longer in those case, so there is likely less variance between runs and therefore less need to have as many runs. More...
 
RunData beliefprop::RunSettings ()
 Retrieve run settings as a RunData object for output. More...
 
template<RunData_t T>
bool beliefprop::MemoryAlignedAtDataStart (unsigned int x_val_data_start, unsigned int simd_data_size, unsigned int data_bytes_align_width, unsigned int padded_width_data)
 Inline function to check if data is aligned at x_val_data_start for SIMD loads/stores that require alignment. More...
 

Variables

template<typename T >
const T beliefprop::kHighValBp {std::numeric_limits<T>::max()}
 High value for type to use if initializing to "high" value. More...
 
constexpr float beliefprop::kHighValBpKernel {32000.0f}
 High value as used in kernel currently hard-coded to be below maximum short value of 32767. More...
 
constexpr bool beliefprop::kUseOptMemManagement {true}
 
constexpr bool beliefprop::kOptimizedIndexingSetting {true}
 
constexpr bool beliefprop::kAllocateFreeBpMemoryOutsideRuns {true}
 
constexpr std::string_view beliefprop::kMemAllocOptHeader {"Memory allocation of all BP data run at or before start of run"}
 
constexpr std::string_view beliefprop::kMemoryCoalescedBpDataHeader {"BP data arranged for memory coalescence"}
 
constexpr std::string_view beliefprop::kAllocateFreeMemOutsideRunsHeader {"Memory for BP allocated/freed outside of runs"}
 

Detailed Description

File with namespace for enums, constants, structures, and functions specific to belief propagation processing.

Author
Scott Grauer-Gray

Definition in file BpRunUtils.h.