Legion Runtime
Public Member Functions | Public Attributes | List of all members
Legion::TaskVariantRegistrar Struct Reference

#include <legion.h>

Public Member Functions

 TaskVariantRegistrar (TaskID task_id, bool global=true, const char *variant_name=NULL)
 
 TaskVariantRegistrar (TaskID task_id, const char *variant_name, bool global=true)
 
TaskVariantRegistraradd_constraint (const ISAConstraint &constraint)
 
TaskVariantRegistraradd_constraint (const ProcessorConstraint &constraint)
 
TaskVariantRegistraradd_constraint (const ResourceConstraint &constraint)
 
TaskVariantRegistraradd_constraint (const LaunchConstraint &constraint)
 
TaskVariantRegistraradd_constraint (const ColocationConstraint &constraint)
 
TaskVariantRegistraradd_layout_constraint_set (unsigned index, LayoutConstraintID desc)
 
void set_leaf (bool is_leaf=true)
 
void set_inner (bool is_inner=true)
 
void set_idempotent (bool is_idempotent=true)
 
void set_replicable (bool is_replicable=true)
 
void set_concurrent (bool is_concurrent=true)
 
void set_concurrent_barrier (bool needs_barrier=true)
 
void add_generator_task (TaskID tid)
 

Public Attributes

TaskID task_id
 
bool global_registration
 
const char * task_variant_name
 
ExecutionConstraintSet execution_constraints
 
TaskLayoutConstraintSet layout_constraints
 
std::set< TaskID > generator_tasks
 
bool leaf_variant
 
bool inner_variant
 
bool idempotent_variant
 
bool replicable_variant
 
bool concurrent_variant
 
bool concurrent_barrier
 

Detailed Description

This structure captures all the meta-data information necessary for describing a task variant including the logical task ID, the execution constraints, the layout constraints, and any properties of the task. This structure is used for registering task variants and is also the output type for variants created by generator tasks.


The documentation for this struct was generated from the following file: