HMLP: High-performance Machine Learning Primitives
hmlp::MortonHelper Class Reference

Public Types

typedef pair< size_t, size_t > Recursor
 

Static Public Member Functions

static Recursor Root ()
 
static Recursor RecurLeft (Recursor r)
 
static Recursor RecurRight (Recursor r)
 
static size_t MortonID (Recursor r)
 
static size_t SiblingMortonID (Recursor r)
 
static int Morton2Rank (size_t it, int size)
 return the MPI rank that owns it.
 
static void Morton2Offsets (Recursor r, size_t depth, vector< size_t > &offsets)
 
static vector< size_t > Morton2Offsets (size_t me, size_t depth)
 
static bool IsMyParent (size_t me, size_t it)
 Check if it'' isme'''s ancestor by checking two facts. 1) itlevel >= mylevel and 2) morton above itlevel should be identical. For example,. More...
 
template<typename TQUERY >
static bool ContainAny (size_t target, TQUERY &querys)
 

Member Function Documentation

template<typename TQUERY >
static bool hmlp::MortonHelper::ContainAny ( size_t  target,
TQUERY &  querys 
)
inlinestatic
static bool hmlp::MortonHelper::IsMyParent ( size_t  me,
size_t  it 
)
inlinestatic

Check if it'' isme'''s ancestor by checking two facts. 1) itlevel >= mylevel and 2) morton above itlevel should be identical. For example,.

end Morton2Offsets() me = 01110 100 (level 4) it = 01100 010 (level 2) is my parent

me = 00000 001 (level 1) it = 00000 011 (level 3) is not my parent

static void hmlp::MortonHelper::Morton2Offsets ( Recursor  r,
size_t  depth,
vector< size_t > &  offsets 
)
inlinestatic

end Morton2rank()

static vector<size_t> hmlp::MortonHelper::Morton2Offsets ( size_t  me,
size_t  depth 
)
inlinestatic
static size_t hmlp::MortonHelper::MortonID ( Recursor  r)
inlinestatic

Compute the correct shift.

Append the depth of the tree.

static size_t hmlp::MortonHelper::SiblingMortonID ( Recursor  r)
inlinestatic

Compute the correct shift.

Append the depth of the tree.


The documentation for this class was generated from the following file: