|
| TestSystolicMatrixAlgorithm (DistributedMatrix< T > &A, int tag) |
|
bool | converged (const TaskThreadEnv &env) const |
| Invoked simultaneously by all threads after each sweep to test for convergence. More...
|
|
void | kernel (int i, int j, T *rowi, T *rowj) |
| Threadsafe routine to apply the operation to rows i and j of the matrix. More...
|
|
void | start_iteration_hook (const TaskThreadEnv &env) |
| Invoked by all threads at the start of each iteration. More...
|
|
| SystolicMatrixAlgorithm (DistributedMatrix< T > &A, int tag, int nthread=ThreadPool::size()+1) |
| A must be a column distributed matrix with an even column tile >= 2. More...
|
|
virtual | ~SystolicMatrixAlgorithm () |
|
virtual void | end_iteration_hook (const TaskThreadEnv &env) |
| Invoked by all threads at the end of each iteration before convergence test. More...
|
|
int64_t | get_coldim () const |
| Returns length of column. More...
|
|
ProcessID | get_rank () const |
| Returns rank of this process in the world. More...
|
|
int64_t | get_rowdim () const |
| Returns length of row. More...
|
|
World & | get_world () const |
| Returns a reference to the world. More...
|
|
void | run (World &world, const TaskThreadEnv &env) |
| Invoked by the task queue to run the algorithm with multiple threads. More...
|
|
void | solve_sequential () |
| Invoked by the user to run the algorithm with one thread mostly for debugging. More...
|
|
| TaskInterface (const TaskAttributes &attr) |
| Create a new task with zero dependencies and given attributes. More...
|
|
| TaskInterface (int ndepend, const char *caller, const TaskAttributes attr=TaskAttributes()) |
|
| TaskInterface (int ndepend=0, const TaskAttributes attr=TaskAttributes()) |
| Create a new task with ndepend dependencies (default 0) and given attributes. More...
|
|
virtual | ~TaskInterface () |
|
World * | get_world () const |
|
virtual void | run (World &) |
| Runs a single-threaded task ... derived classes must implement this. More...
|
|
| PoolTaskInterface () |
| Default constructor. More...
|
|
| PoolTaskInterface (const TaskAttributes &attr) |
|
virtual | ~PoolTaskInterface ()=default |
| Destructor. More...
|
|
void | execute () |
|
void | set_nthread (int nthread) |
| Call this to reset the number of threads before the task is submitted. More...
|
|
| TaskAttributes (const TaskAttributes &attr) |
| Copy constructor. More...
|
|
| TaskAttributes (unsigned long flags=0) |
| Sets the attributes to the desired values. More...
|
|
virtual | ~TaskAttributes () |
|
int | get_nthread () const |
| Get the number of threads. More...
|
|
bool | is_generator () const |
| Test if the generator attribute is true. More...
|
|
bool | is_high_priority () const |
| Test if the high priority attribute is true. More...
|
|
bool | is_stealable () const |
| Test if the stealable attribute is true. More...
|
|
template<typename Archive > |
void | serialize (Archive &ar) |
| Serializes the attributes for I/O. More...
|
|
TaskAttributes & | set_generator (bool generator_hint) |
| Sets the generator attribute. More...
|
|
TaskAttributes & | set_highpriority (bool hipri) |
| Sets the high priority attribute. More...
|
|
void | set_nthread (int nthread) |
| Set the number of threads. More...
|
|
TaskAttributes & | set_stealable (bool stealable) |
| Sets the stealable attribute. More...
|
|
| DependencyInterface (int ndep, const char *caller) |
|
| DependencyInterface (int ndep=0) |
|
virtual | ~DependencyInterface () |
| Destructor. More...
|
|
void | dec () |
| Decrement the number of dependencies and invoke the callback if ndepend==0 . More...
|
|
void | dec_debug (const char *caller) |
|
void | inc () |
| Increment the number of dependencies. More...
|
|
void | inc_debug (const char *caller) |
| Same as inc(), but keeps track of caller ; calling dec_debug() will signal error if no matching inc_debug() had been invoked
More...
|
|
int | ndep () const |
| Returns the number of unsatisfied dependencies. More...
|
|
void | notify () |
| Invoked by callbacks to notify of dependencies being satisfied. More...
|
|
void | notify_debug (const char *caller) |
| Overload of CallbackInterface::notify_debug(), updates dec() More...
|
|
bool | probe () const |
| Returns true if ndepend == 0 (no unsatisfied dependencies). More...
|
|
void | register_callback (CallbackInterface *callback) |
| Registers a callback that will be executed when ndepend==0 ; immediately invoked if ndepend==0 . More...
|
|
void | register_final_callback (CallbackInterface *callback) |
| Registers the final callback to be executed when ndepend==0 ; immediately invoked if ndepend==0 . More...
|
|
virtual | ~CallbackInterface () |
|