Class DeploymentUtil
- Object
-
- DeploymentUtil
-
public class DeploymentUtil extends Object
-
-
Method Summary
All Methods Modifier and Type Method Description static Set<ProcessingUnit>getAssignedCoreForProcess(Process process, Amalthea model)Returns the cores the process is assigned to.static List<HwFeatureCategory>getFeatureCategories(ProcessingUnitDefinition procUnitDef)static Set<ISR>getISRsMappedToCore(ProcessingUnit core, Amalthea model)Returns a set of all ISR mapped to that corestatic Set<Memory>getLabelMapping(Label label)Set of memories the label is mapped to (should be only one!)static Set<Process>getProcessesMappedToCore(ProcessingUnit core, Amalthea model)static List<ProcessingUnitDefinition>getProcessingUnitDefinitionsForHwCategories(HwFeatureCategory hwFeatureCat, List<ProcessingUnitDefinition> procUnitDefinitons)static List<ProcessingUnitDefinition>getProcessingUnitDefinitionsForHwFeature(HwFeature feature, List<ProcessingUnitDefinition> procUnitDefinitons)static List<TaskAllocation>getTaskAllocations(Task task, Amalthea model)Returns a list of all allocations of a taskstatic Set<Task>getTasksMappedToCore(ProcessingUnit core, Amalthea model)Returns a set of tasks mapped to a core.static booleanisMapped(Label label)Returns true if at least a label mapping existsstatic MemoryMappingsetLabelMapping(Label label, Memory mem, Amalthea model)Returns a created LabelMapping element which was already added to the model
-
-
-
Method Detail
-
getProcessesMappedToCore
public static Set<Process> getProcessesMappedToCore(ProcessingUnit core, Amalthea model)
-
getTasksMappedToCore
public static Set<Task> getTasksMappedToCore(ProcessingUnit core, Amalthea model)Returns a set of tasks mapped to a core. Depends on responsibilities of schedulers and the task allocated to them Assumption: Scheduler responsibilities are set empty core affinities are ignored otherwise the intersection of core affinity and scheduler responsibility is returned- Returns:
- Set of tasks
-
getISRsMappedToCore
public static Set<ISR> getISRsMappedToCore(ProcessingUnit core, Amalthea model)Returns a set of all ISR mapped to that core- Returns:
- Set of interrupt service routines (ISR)
-
getTaskAllocations
public static List<TaskAllocation> getTaskAllocations(Task task, Amalthea model)Returns a list of all allocations of a task- Returns:
- List of task allocations
-
isMapped
public static boolean isMapped(Label label)
Returns true if at least a label mapping exists
-
getLabelMapping
public static Set<Memory> getLabelMapping(Label label)
Set of memories the label is mapped to (should be only one!)- Returns:
- Set of Memories
-
setLabelMapping
public static MemoryMapping setLabelMapping(Label label, Memory mem, Amalthea model)Returns a created LabelMapping element which was already added to the model- Returns:
- MemoryMapping
-
getAssignedCoreForProcess
public static Set<ProcessingUnit> getAssignedCoreForProcess(Process process, Amalthea model)Returns the cores the process is assigned to. Empty core affinities are ignored, otherwise the intersection of core affinity and scheduler responsibility is returned.- Parameters:
process- Task or ISRmodel- the containing model- Returns:
- Set of cores
-
getFeatureCategories
public static List<HwFeatureCategory> getFeatureCategories(ProcessingUnitDefinition procUnitDef)
- Parameters:
procUnitDef- processing unit definition
-
getProcessingUnitDefinitionsForHwCategories
public static List<ProcessingUnitDefinition> getProcessingUnitDefinitionsForHwCategories(HwFeatureCategory hwFeatureCat, List<ProcessingUnitDefinition> procUnitDefinitons)- Parameters:
hwFeatureCat- selection criteriaprocUnitDefinitons- list of potential definitions
-
getProcessingUnitDefinitionsForHwFeature
public static List<ProcessingUnitDefinition> getProcessingUnitDefinitionsForHwFeature(HwFeature feature, List<ProcessingUnitDefinition> procUnitDefinitons)- Parameters:
feature- selection criteriaprocUnitDefinitons- list of potential definitions
-
-