|
Legion Runtime
|
#include <constraints.h>
Public Member Functions | |
| ProcessorConstraint (Processor::Kind kind=Processor::NO_KIND) | |
| bool | operator== (const ProcessorConstraint &other) const |
| bool | operator!= (const ProcessorConstraint &other) const |
| bool | is_valid (void) const |
| void | add_kind (Processor::Kind kind) |
| bool | can_use (Processor::Kind kind) const |
| bool | entails (const ProcessorConstraint &other) const |
| bool | conflicts (const ProcessorConstraint &other) const |
| void | swap (ProcessorConstraint &rhs) |
| void | serialize (Serializer &rez) const |
| void | deserialize (Deserializer &derez) |
Public Attributes | |
| std::vector< Processor::Kind > | valid_kinds |
Static Public Attributes | |
| static const ExecutionConstraintKind | constraint_kind |
Processor constraints are used to declare that a task variant should only be able to executed on processors of certain kinds. This is necessary for example, to distinguish I/O tasks which can run on all x86 cores by their ISA constraints, but users want to restrict their execution to just I/O processors.
|
static |