HMLP: High-performance Machine Learning Primitives
|
This is the default ball tree splitter. Given coordinates, compute the direction from the two most far away points. Project all points to this line and split into two groups using a median select. More...
#include <tree_mpi.hpp>
Public Member Functions | |
void | Set (NODE *user_arg) |
void | DependencyAnalysis () |
void | Execute (Worker *user_worker) |
![]() | |
Task () | |
(Default) Task constructor. More... | |
~Task () | |
(Default) Task destructor. More... | |
TaskStatus | GetStatus () |
Status is a private member. | |
void | SetStatus (TaskStatus status) |
Move foward to the next status. | |
void | SetBatchStatus (TaskStatus status) |
void | Submit () |
Ask the runtime to create an normal task in file. | |
virtual void | Set (string user_name, void(*user_function)(Task *), void *user_arg) |
This is only for virtual function pointer. | |
virtual void | Prefetch (Worker *) |
void | Enqueue () |
void | Enqueue (size_t tid) |
bool | TryEnqueue () |
Try to dispatch the task if there is no dependency left. | |
void | ForceEnqueue (size_t tid) |
void | CallBackWhileWaiting () |
This is the callback function for the owner of thenested task. More... | |
virtual void | GetEventRecord () |
void | DependenciesUpdate () |
Update the my outgoing and children's incoming edges. More... | |
void | Acquire () |
void | Release () |
bool | IsNested () |
Public Attributes | |
NODE * | arg = NULL |
![]() | |
class Worker * | worker = NULL |
string | name |
string | label |
int | taskid |
float | cost = 0 |
bool | priority = false |
Event | event |
void(* | function )(Task *) |
void * | arg |
volatile int | n_dependencies_remaining = 0 |
deque< Task * > | in |
deque< Task * > | out |
Lock * | task_lock = NULL |
Task * | next = NULL |
volatile bool | stealable = true |
volatile int | created_by = 0 |
This is the default ball tree splitter. Given coordinates, compute the direction from the two most far away points. Project all points to this line and split into two groups using a median select.
Need to explit the parallelism.Parallel median search TODO: Can be parallelized
|
inline |