HMLP: High-performance Machine Learning Primitives
|
This class contains all GOFMM related data carried by a tree node. More...
#include <gofmm.hpp>
Public Member Functions | |
NodeData () | |
![]() | |
void | SetupFactor (bool issymmetric, bool do_ulv_factorization, bool isleaf, bool isroot, size_t n, size_t nl, size_t nr, size_t s, size_t sl, size_t sr) |
void | SetupFactor (bool issymmetric, bool do_ulv_factorization, bool isleaf, bool isroot, size_t n, size_t nl, size_t nr, size_t s, size_t sl, size_t sr, Data< T > &U, Data< T > &V) |
bool | DoULVFactorization () |
bool | IsSymmetric () |
void | CheckCondition () |
void | Factorize (Data< T > &Kaa) |
void | PartialFactorize (Data< T > &A) |
void | Factorize (Data< T > &Ul, Data< T > &Ur, Data< T > &Vl, Data< T > &Vr) |
void | PartialFactorize (View< T > &Zl, View< T > &Zr, Data< T > &Ul, Data< T > &Ur, Data< T > &Vl, Data< T > &Vr) |
void | Multiply (View< T > &bl, View< T > &br) |
void | Solve (View< T > &rhs) |
Solver for leaf nodes. More... | |
void | Solve (View< T > &bl, View< T > &br) |
b - U * inv( Z ) * C * V' * b More... | |
void | Telescope (bool DO_INVERSE, Data< T > &Pa, Data< T > &Palr) |
void | Telescope (bool DO_INVERSE, Data< T > &Pa, Data< T > &Palr, Data< T > &Pl, Data< T > &Pr) |
void | Orthogonalization () |
void | ChangeBasis (SideType side, Data< T > &B) |
void | ChangeBasis (Data< T > &A) |
void | ULVForward () |
void | ULVBackward () |
Public Attributes | |
Lock | lock |
bool | isskel = false |
vector< size_t > | skels |
vector< int > | jpvt |
Data< T > | proj |
map< size_t, T > | snids |
vector< size_t > | candidate_rows |
vector< size_t > | candidate_cols |
Data< T > | KIJ |
Data< T > | w_skel |
Data< T > | u_skel |
Data< T > | w_leaf |
Data< T > | u_leaf [20] |
View< T > | w_view |
View< T > | u_view |
Data< size_t > | Nearbmap |
Data< T > | NearKab |
Data< T > | FarKab |
Event | skeletonize |
Event | updateweight |
Event | skeltoskel |
Event | skeltonode |
Event | s2s |
Event | s2n |
double | knn_acc = 0.0 |
size_t | num_acc = 0 |
![]() | |
bool | isleaf = false |
bool | isroot = false |
size_t | n = 0 |
size_t | nl = 0 |
size_t | nr = 0 |
size_t | s = 0 |
size_t | sl = 0 |
size_t | sr = 0 |
Data< T > | Z |
View< T > | Zv |
View< T > | Ztl |
View< T > | Ztr |
View< T > | Zbl |
View< T > | Zbr |
vector< int > | ipiv |
Data< T > | U |
Data< T > | V |
Data< T > | Crl |
Data< T > | Clr |
View< T > | bview |
Data< T > * | Ul = NULL |
Data< T > * | Ur = NULL |
Data< T > * | Vl = NULL |
Data< T > * | Vr = NULL |
Data< T > | Q |
View< T > | Qv |
View< T > | Q1 |
View< T > | Q2 |
vector< T > | tau |
Data< T > | B |
View< T > | Bv |
View< T > | Bp |
View< T > | Bsibling |
View< T > | Bf |
View< T > | Bc |
This class contains all GOFMM related data carried by a tree node.
end class Setup
|
inline |
(Default) constructor.
vector<size_t> hmlp::gofmm::NodeData< T >::candidate_rows |
(Buffer) nsamples row gids, and sl + sr skeleton columns of children.
bool hmlp::gofmm::NodeData< T >::isskel = false |
Whether the node can be compressed (with skel and proj).
vector<int> hmlp::gofmm::NodeData< T >::jpvt |
2s, pivoting order of GEQP3 (or GEQP4).
Data<T> hmlp::gofmm::NodeData< T >::KIJ |
(Buffer) nsamples-by-(sl+sr) submatrix of K.
double hmlp::gofmm::NodeData< T >::knn_acc = 0.0 |
knn accuracy
Lock hmlp::gofmm::NodeData< T >::lock |
The OpenMP (or pthread) lock that grants exclusive right.
Data<size_t> hmlp::gofmm::NodeData< T >::Nearbmap |
Cached Kab
Data<T> hmlp::gofmm::NodeData< T >::proj |
s-by-2s, interpolative coefficients.
Event hmlp::gofmm::NodeData< T >::skeletonize |
recorded events (for HMLP Runtime)
vector<size_t> hmlp::gofmm::NodeData< T >::skels |
Skeleton gids (subset of gids).
map<size_t, T> hmlp::gofmm::NodeData< T >::snids |
Sampling neighbors gids.
Data<T> hmlp::gofmm::NodeData< T >::w_leaf |
(Buffer) permuted weights and potentials.
Data<T> hmlp::gofmm::NodeData< T >::w_skel |
(Buffer) skeleton weights and potentials.
View<T> hmlp::gofmm::NodeData< T >::w_view |
Hierarchical tree view of w<RIDS, STAR> and u<RIDS, STAR>.