Loading...
Searching...
No Matches
scheduleTasks.h File Reference
+ Include dependency graph for scheduleTasks.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  VdfScheduleNodeTasks
 A structure describing a range of task ids, beginning at taskId and ending at taskId + taskNum. More...
 
struct  VdfScheduleComputeTaskFlags
 A bit field with additional flags to further describe a VdfScheduleComputeTask. More...
 
struct  VdfScheduleComputeTask
 A VdfScheduleComputeTask represents a unit of computation for the parallel evaluation engine. More...
 
struct  VdfScheduleNodeInvocation
 Further describes every invocation of a single node. More...
 
struct  VdfScheduleInputsTask
 Structure describing an additional task used to run prereqs and reads concurrently with read/write input dependencies. More...
 
struct  VdfScheduleInputDependency
 Describes a single input dependency, i.e. More...
 

Typedefs

typedef uint32_t VdfScheduleTaskId
 Type describing a task id.
 
typedef uint32_t VdfScheduleTaskIndex
 Type describing a task index.
 
typedef uint32_t VdfScheduleTaskNum
 Type describing a number of task indices or ids.
 
typedef uint32_t VdfScheduleInputDependencyUniqueIndex
 A sequential index assigned to the unique output and mask combination of a VdfScheduleInputDependency instance.
 

Functions

bool VdfScheduleTaskIsInvalid (uint32_t task)
 Returns true if the given task index or id is invalid.
 

Class Documentation

◆ VdfScheduleNodeTasks

struct VdfScheduleNodeTasks

A structure describing a range of task ids, beginning at taskId and ending at taskId + taskNum.

Definition at line 48 of file scheduleTasks.h.

Class Members
VdfScheduleTaskId taskId
VdfScheduleTaskNum taskNum

◆ VdfScheduleComputeTaskFlags

struct VdfScheduleComputeTaskFlags

A bit field with additional flags to further describe a VdfScheduleComputeTask.

Definition at line 56 of file scheduleTasks.h.

Class Members
bool hasKeep: 1
bool isAffective: 1

◆ VdfScheduleComputeTask

struct VdfScheduleComputeTask

A VdfScheduleComputeTask represents a unit of computation for the parallel evaluation engine.

Every scheduled node has at least one of these tasks.

Definition at line 64 of file scheduleTasks.h.

Class Members
VdfScheduleComputeTaskFlags flags
VdfScheduleTaskIndex inputsTaskIndex
VdfScheduleTaskIndex invocationIndex
VdfScheduleTaskIndex prepTaskIndex
VdfScheduleTaskIndex requiredsIndex
VdfScheduleTaskNum requiredsNum

◆ VdfScheduleNodeInvocation

struct VdfScheduleNodeInvocation

Further describes every invocation of a single node.

Note, that nodes with invocations always have exactly one output, and the data in this structure is relevant to that single output.

Definition at line 95 of file scheduleTasks.h.

Class Members
VdfMask affectsMask
VdfMask keepMask
VdfMask requestMask

◆ VdfScheduleInputsTask

struct VdfScheduleInputsTask

Structure describing an additional task used to run prereqs and reads concurrently with read/write input dependencies.

Definition at line 104 of file scheduleTasks.h.

Class Members
VdfScheduleTaskIndex inputDepIndex
VdfScheduleTaskNum optionalsNum
VdfScheduleTaskNum prereqsNum

◆ VdfScheduleInputDependency

struct VdfScheduleInputDependency

Describes a single input dependency, i.e.

the output and mask to be used to check for a cache hit, as well as the compute task id and number of compute tasks (or a single keep task) to invoke on cache misses.

Definition at line 121 of file scheduleTasks.h.

Class Members
VdfScheduleTaskId computeOrKeepTaskId
VdfScheduleTaskNum computeTaskNum
VdfMask mask
const VdfOutput & output
VdfScheduleInputDependencyUniqueIndex uniqueIndex

Typedef Documentation

◆ VdfScheduleInputDependencyUniqueIndex

A sequential index assigned to the unique output and mask combination of a VdfScheduleInputDependency instance.

This index aids in effectively de-duplicating individual input dependencies referring to the same output and mask.

Definition at line 115 of file scheduleTasks.h.

◆ VdfScheduleTaskId

typedef uint32_t VdfScheduleTaskId

Type describing a task id.

An id is comprised of an index, as well as one bit of additional information.

Definition at line 25 of file scheduleTasks.h.

◆ VdfScheduleTaskIndex

typedef uint32_t VdfScheduleTaskIndex

Type describing a task index.

Definition at line 29 of file scheduleTasks.h.

◆ VdfScheduleTaskNum

typedef uint32_t VdfScheduleTaskNum

Type describing a number of task indices or ids.

Definition at line 33 of file scheduleTasks.h.

Function Documentation

◆ VdfScheduleTaskIsInvalid()

bool VdfScheduleTaskIsInvalid ( uint32_t  task)
inline

Returns true if the given task index or id is invalid.

Definition at line 41 of file scheduleTasks.h.