Skip to content
Snippets Groups Projects
Commit 98b4cd48 authored by Nikolaus Huber's avatar Nikolaus Huber
Browse files

implemented a weighting function counting delta of active resources

git-svn-id: https://se1.informatik.uni-wuerzburg.de/usvn/svn/code/code/DMM/trunk@11956 9e42b895-fcda-4063-8a3b-11be15eb1bbd
parent 9998e01e
No related branches found
No related tags found
No related merge requests found
package edu.kit.ipd.descartes.adaptation.evaluation.weightingfunction;
import static org.junit.Assert.*;
import org.eclipse.emf.common.util.URI;
import org.junit.Before;
import org.junit.Test;
import edu.kit.ipd.descartes.adaptation.AbstractTest;
import edu.kit.ipd.descartes.adaptation.AdaptationControl;
import edu.kit.ipd.descartes.adaptation.model.dmm.AdaptationProcessModelLoader;
import edu.kit.ipd.descartes.mm.adaptation.AdaptationProcess;
import edu.kit.ipd.descartes.mm.adaptation.Strategy;
import edu.kit.ipd.descartes.mm.adaptation.WeightingFunction;
public class ResourceEfficiencyTest extends AbstractTest {
IWeightingFunction resEfficiency = null;
Strategy testStrategy = null;
@Before
public void setUp() throws Exception {
super.setUp();
String propertiesFile = "default.properties";
AdaptationControl control = new AdaptationControl();
control.init(propertiesFile);
URI uri = URI.createFileURI("/Users/nhuber/Documents/workspace/descartes/metamodel/edu.kit.ipd.descartes.adaptation.test/test_models/StaRepository.xmi");
AdaptationProcessModelLoader loader = AdaptationProcessModelLoader.getInstance();
AdaptationProcess process = loader.load(uri);
testStrategy = process.getStrategies().get(1);
}
@Test
public void testCalculateWeight() {
WeightingFunction function = testStrategy.getWeightingFunction();
resEfficiency = new ResourceEfficiency();
resEfficiency.setWeightingFunction(function);
assertEquals(-1, resEfficiency.calculateWeight(testStrategy.getTacticWithHighestWeight()), 0.01);
}
}
......@@ -31,9 +31,17 @@ public class AdaptationProcessModelLoaderTest extends AbstractTest {
@Test
public void testLoad() {
AdaptationProcessModelLoader loader = new AdaptationProcessModelLoader();
AdaptationProcessModelLoader loader = AdaptationProcessModelLoader.getInstance();
String modelFile = "/Users/nhuber/Documents/workspace/descartes/metamodel/Examples/SEAMS_Case_Study/pushpull.adaptation";
AdaptationProcess process = loader.load(URI.createFileURI(modelFile));
}
@Test
public void testGetModelLocation() {
AdaptationProcessModelLoader loader = AdaptationProcessModelLoader.getInstance();
URI modelUri = URI.createFileURI("/Users/nhuber/Documents/workspace/descartes/metamodel/Examples/SEAMS_Case_Study/pushpull.adaptation");
AdaptationProcess process = loader.load(modelUri);
assertEquals(modelUri, loader.getCurrentModelUri());
}
}
<?xml version="1.0" encoding="ASCII"?>
<containerrepository:ContainerRepository
xmi:version="2.0"
xmlns:xmi="http://www.omg.org/XMI"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:containerrepository="http://www.descartes-research.net/metamodel/containerrepository/0.1"
xmlns:resourceconfiguration="http://www.descartes-research.net/metamodel/resourceconfiguration/0.1"
xmlns:resourcelandscape="http://www.descartes-research.net/metamodel/resourcelandscape/0.1"
id="1" name="MyTestContainerTemplates">
<templates
id="2"
name="VM_USA_TEMPLATE">
<templateConfig
xsi:type="resourceconfiguration:ActiveResourceSpecification"
id="3"
name="CPU_TEMPLATE">
<processingResourceSpecifications
id="235234"
name="CPU"
processingRate="1000.0"
parentResourceSpecification="3">
<nrOfParProcUnits
id="1341341"
name="NumberOfVirtualCpus"
number="2"/>
<containerrepository:ContainerRepository xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:containerrepository="http://www.descartes-research.net/metamodel/containerrepository/0.1" xmlns:resourceconfiguration="http://www.descartes-research.net/metamodel/resourceconfiguration/0.1" xmlns:resourcelandscape="http://www.descartes-research.net/metamodel/resourcelandscape/0.1" id="1" name="MyTestContainerTemplates">
<templates id="2" name="VM_USA_TEMPLATE">
<templateConfig xsi:type="resourceconfiguration:ActiveResourceSpecification" id="3" name="CPU_TEMPLATE">
<processingResourceSpecifications id="235234" name="CPU" processingRate="1000.0">
<nrOfParProcUnits id="1341341" name="NumberOfVirtualCpus" number="2"/>
</processingResourceSpecifications>
</templateConfig>
<referringContainers
xsi:type="resourcelandscape:RuntimeEnvironment"
href="DistributedDataCenter.xmi#2313"/>
<referringContainers xsi:type="resourcelandscape:RuntimeEnvironment" href="DistributedDataCenter.xmi#2313"/>
</templates>
<templates
id="555"
name="VM_GER_TEMPLATE">
<templateConfig
xsi:type="resourceconfiguration:ActiveResourceSpecification"
id="1231231231"
name="CPU">
<processingResourceSpecifications
id="51241132"
name="Opteron CPU"
processingRate="1000.0"
parentResourceSpecification="1231231231">
<nrOfParProcUnits
id="_-avagGPGEeKyF6WpqcAI9Q"
name="NumberOfCores"
number="8"/>
<templates id="555" name="VM_GER_TEMPLATE">
<templateConfig xsi:type="resourceconfiguration:ActiveResourceSpecification" id="1231231231" name="CPU">
<processingResourceSpecifications id="51241132" name="Opteron CPU" processingRate="1000.0">
<nrOfParProcUnits id="_-avagGPGEeKyF6WpqcAI9Q" name="NumberOfCores" number="8"/>
</processingResourceSpecifications>
</templateConfig>
<referringContainers
xsi:type="resourcelandscape:RuntimeEnvironment"
href="DistributedDataCenter.xmi#12345-1"/>
<referringContainers
xsi:type="resourcelandscape:RuntimeEnvironment"
href="DistributedDataCenter.xmi#12345-2"/>
<referringContainers xsi:type="resourcelandscape:RuntimeEnvironment" href="DistributedDataCenter.xmi#12345-1"/>
<referringContainers xsi:type="resourcelandscape:RuntimeEnvironment" href="DistributedDataCenter.xmi#12345-2"/>
</templates>
</containerrepository:ContainerRepository>
......@@ -357,7 +357,7 @@
name="testMigration"
usedTactic="12312412312">
<lastImpact
href="PerformanceDataRepositoryDummy.xmi#3df1q3eq"/>
href="PerformanceDataRepositoryDummy.xmi#mi1"/>
</tactics>
<weightingFunction
id="_WDSVAs52EeKoaZRgevo7AQ"
......@@ -370,6 +370,13 @@
<metricType
href="PerformanceDataRepositoryDummy.xmi#2"/>
</weightedMetrics>
<weightedMetrics
id="_Ti-UkM6bEeKoaZRgevo7AQ"
name="Util2"
weight="10.0">
<metricType
href="PerformanceDataRepositoryDummy.xmi#22"/>
</weightedMetrics>
</weightingFunction>
</strategies>
<goal description="Test Tactics, Strategies and Actions">
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment