Legion Runtime
Loading...
Searching...
No Matches
Legion::Mapping::WrapperMapper Class Reference
Inheritance diagram for Legion::Mapping::WrapperMapper:
Legion::Mapping::Mapper

Public Member Functions

 WrapperMapper (Mapper *dmapper, MapperRuntime *rt, Machine machine, Processor local)
 
void get_input ()
 
void get_input (const MapperContext ctx)
 
void get_select_task_options_input (const MapperContext ctx, std::string task_name, TaskOptions &output)
 
bool InputNumberCheck (std::string strUserInput)
 
void Deserialize (std::string rec_string)
 
std::string Serialize (const std::map< std::string, int > &tasks_map, const std::map< int, int > &procs_map)
 
std::string Serialize (const std::vector< std::string > &print_tasks, const std::vector< std::string > &stop_tasks, const std::map< int, int > &procs_map)
 
const char * get_mapper_name (void) const override
 
MapperSyncModel get_mapper_sync_model (void) const override
 
void select_task_options (const MapperContext ctx, const Task &task, TaskOptions &output) override
 
void premap_task (const MapperContext ctx, const Task &task, const PremapTaskInput &input, PremapTaskOutput &output) override
 
void slice_task (const MapperContext ctx, const Task &task, const SliceTaskInput &input, SliceTaskOutput &output) override
 
void map_task (const MapperContext ctx, const Task &task, const MapTaskInput &input, MapTaskOutput &output) override
 
void select_task_variant (const MapperContext ctx, const Task &task, const SelectVariantInput &input, SelectVariantOutput &output) override
 
void postmap_task (const MapperContext ctx, const Task &task, const PostMapInput &input, PostMapOutput &output) override
 
void select_task_sources (const MapperContext ctx, const Task &task, const SelectTaskSrcInput &input, SelectTaskSrcOutput &output) override
 
void report_profiling (const MapperContext ctx, const Task &task, const TaskProfilingInfo &input) override
 
void map_inline (const MapperContext ctx, const InlineMapping &inline_op, const MapInlineInput &input, MapInlineOutput &output) override
 
void select_inline_sources (const MapperContext ctx, const InlineMapping &inline_op, const SelectInlineSrcInput &input, SelectInlineSrcOutput &output) override
 
void report_profiling (const MapperContext ctx, const InlineMapping &inline_op, const InlineProfilingInfo &input) override
 
void map_copy (const MapperContext ctx, const Copy &copy, const MapCopyInput &input, MapCopyOutput &output) override
 
void select_copy_sources (const MapperContext ctx, const Copy &copy, const SelectCopySrcInput &input, SelectCopySrcOutput &output) override
 
void report_profiling (const MapperContext ctx, const Copy &copy, const CopyProfilingInfo &input) override
 
void select_close_sources (const MapperContext ctx, const Close &close, const SelectCloseSrcInput &input, SelectCloseSrcOutput &output) override
 
void report_profiling (const MapperContext ctx, const Close &close, const CloseProfilingInfo &input) override
 
void map_acquire (const MapperContext ctx, const Acquire &acquire, const MapAcquireInput &input, MapAcquireOutput &output) override
 
void report_profiling (const MapperContext ctx, const Acquire &acquire, const AcquireProfilingInfo &input) override
 
void map_release (const MapperContext ctx, const Release &release, const MapReleaseInput &input, MapReleaseOutput &output) override
 
void select_release_sources (const MapperContext ctx, const Release &release, const SelectReleaseSrcInput &input, SelectReleaseSrcOutput &output) override
 
void report_profiling (const MapperContext ctx, const Release &release, const ReleaseProfilingInfo &input) override
 
void configure_context (const MapperContext ctx, const Task &task, ContextConfigOutput &output) override
 
void select_tunable_value (const MapperContext ctx, const Task &task, const SelectTunableInput &input, SelectTunableOutput &output) override
 
void map_must_epoch (const MapperContext ctx, const MapMustEpochInput &input, MapMustEpochOutput &output) override
 
void map_dataflow_graph (const MapperContext ctx, const MapDataflowGraphInput &input, MapDataflowGraphOutput &output) override
 
void select_tasks_to_map (const MapperContext ctx, const SelectMappingInput &input, SelectMappingOutput &output) override
 
void select_steal_targets (const MapperContext ctx, const SelectStealingInput &input, SelectStealingOutput &output) override
 
void permit_steal_request (const MapperContext ctx, const StealRequestInput &input, StealRequestOutput &output) override
 
void handle_message (const MapperContext ctx, const MapperMessage &message) override
 
void handle_task_result (const MapperContext ctx, const MapperTaskResult &result) override
 
virtual void report_profiling (MapperContext ctx, const Task &task, const TaskProfilingInfo &input)=0
 
virtual void report_profiling (MapperContext ctx, const InlineMapping &inline_op, const InlineProfilingInfo &input)=0
 
virtual void report_profiling (MapperContext ctx, const Copy &copy, const CopyProfilingInfo &input)=0
 
virtual void report_profiling (MapperContext ctx, const Close &close, const CloseProfilingInfo &input)=0
 
virtual void report_profiling (MapperContext ctx, const Acquire &acquire, const AcquireProfilingInfo &input)=0
 
virtual void report_profiling (MapperContext ctx, const Release &release, const ReleaseProfilingInfo &input)=0
 
virtual void report_profiling (MapperContext ctx, const Partition &partition, const PartitionProfilingInfo &input)=0
 
- Public Member Functions inherited from Legion::Mapping::Mapper
 Mapper (MapperRuntime *rt)
 
virtual bool request_valid_instances (void) const
 
virtual void replicate_task (MapperContext ctx, const Task &task, const ReplicateTaskInput &input, ReplicateTaskOutput &output)=0
 
virtual void select_sharding_functor (MapperContext ctx, const Task &task, const SelectShardingFunctorInput &input, SelectShardingFunctorOutput &output)=0
 
virtual void select_sharding_functor (MapperContext ctx, const Copy &copy, const SelectShardingFunctorInput &input, SelectShardingFunctorOutput &output)=0
 
virtual void select_sharding_functor (MapperContext ctx, const Close &close, const SelectShardingFunctorInput &input, SelectShardingFunctorOutput &output)=0
 
virtual void select_sharding_functor (MapperContext ctx, const Acquire &acquire, const SelectShardingFunctorInput &input, SelectShardingFunctorOutput &output)=0
 
virtual void select_sharding_functor (MapperContext ctx, const Release &release, const SelectShardingFunctorInput &input, SelectShardingFunctorOutput &output)=0
 
virtual void select_partition_projection (MapperContext ctx, const Partition &partition, const SelectPartitionProjectionInput &input, SelectPartitionProjectionOutput &output)=0
 
virtual void map_partition (MapperContext ctx, const Partition &partition, const MapPartitionInput &input, MapPartitionOutput &output)=0
 
virtual void select_partition_sources (MapperContext ctx, const Partition &partition, const SelectPartitionSrcInput &input, SelectPartitionSrcOutput &output)=0
 
virtual void select_sharding_functor (MapperContext ctx, const Partition &partition, const SelectShardingFunctorInput &input, SelectShardingFunctorOutput &output)=0
 
virtual void select_sharding_functor (MapperContext ctx, const Fill &fill, const SelectShardingFunctorInput &input, SelectShardingFunctorOutput &output)=0
 
virtual void map_future_map_reduction (MapperContext ctx, const FutureMapReductionInput &input, FutureMapReductionOutput &output)
 
virtual void select_sharding_functor (MapperContext ctx, const MustEpoch &epoch, const SelectShardingFunctorInput &input, MustEpochShardingFunctorOutput &output)=0
 
virtual void memoize_operation (MapperContext ctx, const Mappable &mappable, const MemoizeInput &input, MemoizeOutput &output)=0
 
virtual void handle_instance_collection (const MapperContext ctx, const PhysicalInstance &inst)
 

Public Attributes

Mapper * dmapper
 
Mapper::TaskOptions wait_task_options
 
- Public Attributes inherited from Legion::Mapping::Mapper
MapperRuntime *const runtime
 

Static Public Attributes

static std::vector< std::string > print_tasks
 
static std::vector< std::string > stop_tasks
 
static std::map< int, int > methods_map
 
static std::set< Memory > all_mems
 
static std::set< Processor > all_procs
 
static std::map< Processor, int > procs_map
 
static std::map< int, int > procs_map_int
 
static bool inputtaken
 
static bool databroadcasted
 
static Processor ownerprocessor
 
static Processor localowner
 
static MapperEvent mapevent
 
static int broadcastcount
 

Protected Attributes

MapperRuntime *const mrt
 
const Processor local_proc
 
const Processor::Kind local_kind
 
const AddressSpace node_id
 
const Machine machine
 
unsigned max_steals_per_theft
 
unsigned max_steal_count
 
bool breadth_first_traversal
 
bool stealing_enabled
 
unsigned max_schedule_count
 

Additional Inherited Members

- Public Types inherited from Legion::Mapping::Mapper
enum  MapperSyncModel { CONCURRENT_MAPPER_MODEL , SERIALIZED_REENTRANT_MAPPER_MODEL , SERIALIZED_NON_REENTRANT_MAPPER_MODEL }
 

Member Function Documentation

◆ configure_context()

void Legion::Mapping::WrapperMapper::configure_context ( const MapperContext  ctx,
const Task &  task,
ContextConfigOutput &  output 
)
overridevirtual

◆ get_mapper_name()

const char * Legion::Mapping::WrapperMapper::get_mapper_name ( void  ) const
overridevirtual

Get Mapper Name

Specify a name that the runtime can use for referring to this mapper. This will primarily be used for providing helpful error messages so semantically meaningful names are encouraged. This mapper call must be immutable as it may be made before the synchronization model has been chosen.

Implements Legion::Mapping::Mapper.

◆ get_mapper_sync_model()

MapperSyncModel Legion::Mapping::WrapperMapper::get_mapper_sync_model ( void  ) const
overridevirtual

◆ handle_message()

void Legion::Mapping::WrapperMapper::handle_message ( const MapperContext  ctx,
const MapperMessage &  message 
)
overridevirtual

◆ handle_task_result()

void Legion::Mapping::WrapperMapper::handle_task_result ( const MapperContext  ctx,
const MapperTaskResult &  result 
)
overridevirtual

◆ map_acquire()

void Legion::Mapping::WrapperMapper::map_acquire ( const MapperContext  ctx,
const Acquire &  acquire,
const MapAcquireInput &  input,
MapAcquireOutput &  output 
)
overridevirtual

◆ map_copy()

void Legion::Mapping::WrapperMapper::map_copy ( const MapperContext  ctx,
const Copy &  copy,
const MapCopyInput &  input,
MapCopyOutput &  output 
)
overridevirtual

◆ map_dataflow_graph()

void Legion::Mapping::WrapperMapper::map_dataflow_graph ( const MapperContext  ctx,
const MapDataflowGraphInput &  input,
MapDataflowGraphOutput &  output 
)
overridevirtual

◆ map_inline()

void Legion::Mapping::WrapperMapper::map_inline ( const MapperContext  ctx,
const InlineMapping &  inline_op,
const MapInlineInput &  input,
MapInlineOutput &  output 
)
overridevirtual

◆ map_must_epoch()

void Legion::Mapping::WrapperMapper::map_must_epoch ( const MapperContext  ctx,
const MapMustEpochInput &  input,
MapMustEpochOutput &  output 
)
overridevirtual

◆ map_release()

void Legion::Mapping::WrapperMapper::map_release ( const MapperContext  ctx,
const Release &  release,
const MapReleaseInput &  input,
MapReleaseOutput &  output 
)
overridevirtual

◆ map_task()

void Legion::Mapping::WrapperMapper::map_task ( const MapperContext  ctx,
const Task &  task,
const MapTaskInput &  input,
MapTaskOutput &  output 
)
overridevirtual

◆ permit_steal_request()

void Legion::Mapping::WrapperMapper::permit_steal_request ( const MapperContext  ctx,
const StealRequestInput &  input,
StealRequestOutput &  output 
)
overridevirtual

◆ postmap_task()

void Legion::Mapping::WrapperMapper::postmap_task ( const MapperContext  ctx,
const Task &  task,
const PostMapInput &  input,
PostMapOutput &  output 
)
overridevirtual

◆ premap_task()

void Legion::Mapping::WrapperMapper::premap_task ( const MapperContext  ctx,
const Task &  task,
const PremapTaskInput &  input,
PremapTaskOutput &  output 
)
overridevirtual

◆ report_profiling() [1/13]

void Legion::Mapping::WrapperMapper::report_profiling ( const MapperContext  ctx,
const Acquire &  acquire,
const AcquireProfilingInfo &  input 
)
overridevirtual

◆ report_profiling() [2/13]

void Legion::Mapping::WrapperMapper::report_profiling ( const MapperContext  ctx,
const Close &  close,
const CloseProfilingInfo &  input 
)
overridevirtual

◆ report_profiling() [3/13]

void Legion::Mapping::WrapperMapper::report_profiling ( const MapperContext  ctx,
const Copy &  copy,
const CopyProfilingInfo &  input 
)
overridevirtual

◆ report_profiling() [4/13]

void Legion::Mapping::WrapperMapper::report_profiling ( const MapperContext  ctx,
const InlineMapping &  inline_op,
const InlineProfilingInfo &  input 
)
overridevirtual

◆ report_profiling() [5/13]

void Legion::Mapping::WrapperMapper::report_profiling ( const MapperContext  ctx,
const Release &  release,
const ReleaseProfilingInfo &  input 
)
overridevirtual

◆ report_profiling() [6/13]

void Legion::Mapping::WrapperMapper::report_profiling ( const MapperContext  ctx,
const Task &  task,
const TaskProfilingInfo &  input 
)
overridevirtual

◆ report_profiling() [7/13]

virtual void Legion::Mapping::Mapper::report_profiling ( MapperContext  ctx,
const Acquire &  acquire,
const AcquireProfilingInfo &  input 
)
virtual

◆ report_profiling() [8/13]

virtual void Legion::Mapping::Mapper::report_profiling ( MapperContext  ctx,
const Close &  close,
const CloseProfilingInfo &  input 
)
virtual

◆ report_profiling() [9/13]

virtual void Legion::Mapping::Mapper::report_profiling ( MapperContext  ctx,
const Copy &  copy,
const CopyProfilingInfo &  input 
)
virtual

◆ report_profiling() [10/13]

virtual void Legion::Mapping::Mapper::report_profiling ( MapperContext  ctx,
const InlineMapping &  inline_op,
const InlineProfilingInfo &  input 
)
virtual

◆ report_profiling() [11/13]

virtual void Legion::Mapping::Mapper::report_profiling ( MapperContext  ctx,
const Partition &  partition,
const PartitionProfilingInfo &  input 
)
virtual

◆ report_profiling() [12/13]

virtual void Legion::Mapping::Mapper::report_profiling ( MapperContext  ctx,
const Release &  release,
const ReleaseProfilingInfo &  input 
)
virtual

◆ report_profiling() [13/13]

virtual void Legion::Mapping::Mapper::report_profiling ( MapperContext  ctx,
const Task &  task,
const TaskProfilingInfo &  input 
)
virtual

◆ select_close_sources()

void Legion::Mapping::WrapperMapper::select_close_sources ( const MapperContext  ctx,
const Close &  close,
const SelectCloseSrcInput &  input,
SelectCloseSrcOutput &  output 
)
overridevirtual

◆ select_copy_sources()

void Legion::Mapping::WrapperMapper::select_copy_sources ( const MapperContext  ctx,
const Copy &  copy,
const SelectCopySrcInput &  input,
SelectCopySrcOutput &  output 
)
overridevirtual

◆ select_inline_sources()

void Legion::Mapping::WrapperMapper::select_inline_sources ( const MapperContext  ctx,
const InlineMapping &  inline_op,
const SelectInlineSrcInput &  input,
SelectInlineSrcOutput &  output 
)
overridevirtual

◆ select_release_sources()

void Legion::Mapping::WrapperMapper::select_release_sources ( const MapperContext  ctx,
const Release &  release,
const SelectReleaseSrcInput &  input,
SelectReleaseSrcOutput &  output 
)
overridevirtual

◆ select_steal_targets()

void Legion::Mapping::WrapperMapper::select_steal_targets ( const MapperContext  ctx,
const SelectStealingInput &  input,
SelectStealingOutput &  output 
)
overridevirtual

◆ select_task_options()

void Legion::Mapping::WrapperMapper::select_task_options ( const MapperContext  ctx,
const Task &  task,
TaskOptions &  output 
)
overridevirtual

◆ select_task_sources()

void Legion::Mapping::WrapperMapper::select_task_sources ( const MapperContext  ctx,
const Task &  task,
const SelectTaskSrcInput &  input,
SelectTaskSrcOutput &  output 
)
overridevirtual

◆ select_task_variant()

void Legion::Mapping::WrapperMapper::select_task_variant ( const MapperContext  ctx,
const Task &  task,
const SelectVariantInput &  input,
SelectVariantOutput &  output 
)
overridevirtual

◆ select_tasks_to_map()

void Legion::Mapping::WrapperMapper::select_tasks_to_map ( const MapperContext  ctx,
const SelectMappingInput &  input,
SelectMappingOutput &  output 
)
overridevirtual

◆ select_tunable_value()

void Legion::Mapping::WrapperMapper::select_tunable_value ( const MapperContext  ctx,
const Task &  task,
const SelectTunableInput &  input,
SelectTunableOutput &  output 
)
overridevirtual

◆ slice_task()

void Legion::Mapping::WrapperMapper::slice_task ( const MapperContext  ctx,
const Task &  task,
const SliceTaskInput &  input,
SliceTaskOutput &  output 
)
overridevirtual

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