Cyclops Tensor Framework
parallel arithmetic on multidimensional arrays
CTF::Schedule Class Reference

#include <schedule.h>

Inheritance diagram for CTF::Schedule:
Collaboration diagram for CTF::Schedule:

Public Member Functions

 Schedule (World *world=NULL)
 Constructor, optionally specifying a world to restrict processor allocations to. More...
 
void record ()
 Starts recording all tensor operations to this schedule (instead of executing them immediately) More...
 
ScheduleTimer execute ()
 Executes the schedule and implicitly terminates recording. More...
 
ScheduleTimer partition_and_execute ()
 Executes a slide of the ready_queue, partitioning it among the processors in the grid. More...
 
void schedule_op_successors (TensorOperation *op)
 Call when a tensor op finishes, this adds newly enabled ops to the ready queue. More...
 
void add_operation_typed (TensorOperation *op)
 Adds a tensor operation to this schedule. THIS IS CALL ORDER DEPENDENT - operations will appear to execute sequentially in the order they were added. More...
 
void add_operation (TensorOperationBase *op)
 
void set_max_partitions (int in_partitions)
 

Protected Attributes

Worldworld
 
std::deque< TensorOperation * > root_tasks
 
std::deque< TensorOperation * > steps_original
 
std::map< CTF_int::tensor *, TensorOperation * > latest_write
 
std::deque< TensorOperation * > ready_tasks
 
int partitions
 

Detailed Description

Definition at line 138 of file schedule.h.


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