(.js)
laraImport("antarex.margot.dse.MargotDseInfo");
(.lara)
import antarex.margot.dse.MargotDseInfo;
Classes:
new MargotDseInfo(blockName)
Class that holds information for the DSE step needed in mARGOt's toolflow. This concerns a single block.
fromConfig(config, blockName)
Generates and returns the DSE instance for the block with the provided name.
addEnergyMetric(name, unit, domain)
Adds an energy metric to the DSE. This is one of the measurements to be performed.
addTimeMetric(name, unit)
Adds a time metric to the DSE. This is one of the measurements to be performed.
execute(filePath)
getBlockName()
Returns the name of the block.
getDataFeatures()
Returns the data features.
getDseRuns()
Returns the number of runs to perform.
getKnobs()
Returns the map of knobs.
getMargotMonitors()
Returns the monitors to be measured.
setCompilationFlags(flags)
Sets the compilation flags.
setDataFeatures(dataFeatures)
Sets the map of data features. The map of data features should map a feature name to the corresponding {@link MargotDataFeature} instance.
setDseRuns(dseRuns)
Sets the number of runs to perform.
setExecutionFlags(flags)
Sets the execution flags.
setFeatureSetValues(featureNames, values)
Sets the values that a set of data features can take during the exploration.
setFeatureValues(featureName, values)
Sets the values a feature can take during the exploration.
setKnobValues(knobName, values)
Sets the values a knob can take during the exploration.
setKnobs(knobs)
Sets the map of knobs. The map of knobs should map a knob name to the corresponding {@link MargotKnob} instance.
setMargotMonitors(margotMonitors)
Sets the monitors to be measured.
setMeasure($measure)
Sets the join point around which the monitors will be measured.
setScope($scope)
Sets the scope of the DSE where the variables will be changed (e.g., the body of a function).