ANTAREX API

Clava API

LARA API

LARA Common Language API

MargotDseInfo

Constructor

MargotDseInfo

new MargotDseInfo(blockName)

Class that holds information for the DSE step needed in mARGOt's toolflow. This concerns a single block.

Parameters

blockName: string - the name of the block for which this information is meant

Static Members

fromConfig

fromConfig(config, blockName)

Generates and returns the DSE instance for the block with the provided name.

Parameters

config: MargotConfig - the configuration from which we get the information
blockName: String - the name of the block for which the DSE info will be returned.

Returns

MargotDseInfo - an object with the DSE information

Instance Members

addEnergyMetric

addEnergyMetric(name, unit, domain)

Adds an energy metric to the DSE. This is one of the measurements to be performed.

Parameters

name: string - the name of this metric
unit: SiUnit - the unit of this mertic
domain: MargotEnergyDomain - the domain of the energy measurement

addTimeMetric

addTimeMetric(name, unit)

Adds a time metric to the DSE. This is one of the measurements to be performed.

Parameters

name: string - the name of the metric
unit: TimeUnit - the unit of the metric

execute

execute(filePath)

Parameters

filePath: any

getBlockName

getBlockName()

Returns the name of the block.


getDataFeatures

getDataFeatures()

Returns the data features.


getDseRuns

getDseRuns()

Returns the number of runs to perform.


getKnobs

getKnobs()

Returns the map of knobs.


getMargotMonitors

getMargotMonitors()

Returns the monitors to be measured.


setCompilationFlags

setCompilationFlags(flags)

Sets the compilation flags.

Parameters

flags: String - a string with the compilation flags

setDataFeatures

setDataFeatures(dataFeatures)

Sets the map of data features. The map of data features should map a feature name to the corresponding {@link MargotDataFeature} instance.

Parameters

dataFeatures: Object - the map of features

setDseRuns

setDseRuns(dseRuns)

Sets the number of runs to perform.

Parameters

dseRuns: Number - the number of runs

setExecutionFlags

setExecutionFlags(flags)

Sets the execution flags.

Parameters

flags: String - a string with the execution flags

setFeatureSetValues

setFeatureSetValues(featureNames, values)

Sets the values that a set of data features can take during the exploration.

Parameters

featureNames: string[] - the names of the data features
values: ...Object[] - the values of the features, there should be as many arrays as there are data features

setFeatureValues

setFeatureValues(featureName, values)

Sets the values a feature can take during the exploration.

Parameters

featureName: string - the name of the feature
values: (Object[]|...Object) - the values the feature is going to take during DSE

setKnobValues

setKnobValues(knobName, values)

Sets the values a knob can take during the exploration.

Parameters

knobName: string - the name of the knob
values: (Object[]|...Object) - the values the knob is going to take during DSE

setKnobs

setKnobs(knobs)

Sets the map of knobs. The map of knobs should map a knob name to the corresponding {@link MargotKnob} instance.

Parameters

knobs: Object - the map of knobs

setMargotMonitors

setMargotMonitors(margotMonitors)

Sets the monitors to be measured.

Parameters

margotMonitors: MargotMonitor[] - the array of monitors to be measured

setMeasure

setMeasure($measure)

Sets the join point around which the monitors will be measured.

Parameters

$measure: joinpoint - the reference join point

setScope

setScope($scope)

Sets the scope of the DSE where the variables will be changed (e.g., the body of a function).

Parameters

$scope: joinpoint - the scope join point