Legion Runtime
Loading...
Searching...
No Matches
Public Attributes | List of all members
Legion::Mapping::Mapper::SelectMappingInput Struct Reference

#include <mapping.h>

Public Attributes

std::list< const Task * > ready_tasks
 
Processor processor
 

Detailed Description


Select Tasks to Map

Legion gives the mapper control over when application tasks are mapped, so application tasks can be kept available for stealing or dynamically sent to another node. The select_tasks_to_map mapper call presents the mapper for the 'processor' with a list of tasks that are ready to map in the 'ready_tasks' list. For any of the tasks in this list, the mapper can either decide to map the task by placing it in the 'map_tasks' set, or send it to another processor by placing it in the 'relocate_tasks' map along with the target processor for the task. Finally, the mapper can also choose to leave the task on the ready queue by doing nothing. If the mapper chooses not to do anything for any of the tasks in the ready queue then it must give the runtime a mapper event to use for deferring any future calls to select_tasks_to_map. No more calls will be made to select_tasks_to_map until this mapper event is triggered by the mapper in another mapper call or the state of the ready_queue changes (e.g. new tasks are added). Failure to provide a mapper event will result in an error.


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