From ea3b5cfc3e7dc8b472cd7448f2c43477a4c33553 Mon Sep 17 00:00:00 2001 From: OszkarSemerath Date: Fri, 16 Jun 2017 01:52:22 +0200 Subject: Divers Generation times are added to statisticsexample scenario --- .../inf/dslreasoner/viatrasolver/reasoner/ViatraReasoner.xtend | 6 ++++++ .../viatrasolver/reasoner/dse/SolutionStoreWithCopy.xtend | 8 +++++++- 2 files changed, 13 insertions(+), 1 deletion(-) (limited to 'Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner') diff --git a/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/ViatraReasoner.xtend b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/ViatraReasoner.xtend index 38cc9459..5d8859bd 100644 --- a/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/ViatraReasoner.xtend +++ b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/ViatraReasoner.xtend @@ -128,6 +128,12 @@ class ViatraReasoner extends LogicReasoner{ //it.solverTime = viatraConfig.runtimeLimit it.solverTime = (solverTime/1000000) as int it.transformationTime = (transformationTime/1000000) as int + for(x : 0.. [ + it.name = '''_Sulution«x»FoundAt''' + it.value = strategy.solutionStoreWithCopy.allRuntimes.get(x).intValue + ] + } it.entries += createIntStatisticEntry => [ it.name = "TransformationExecutionTime" it.value = (method.statistics.transformationExecutionTime/1000000) as int ] diff --git a/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/dse/SolutionStoreWithCopy.xtend b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/dse/SolutionStoreWithCopy.xtend index 2892723b..679b9600 100644 --- a/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/dse/SolutionStoreWithCopy.xtend +++ b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner/src/hu/bme/mit/inf/dslreasoner/viatrasolver/reasoner/dse/SolutionStoreWithCopy.xtend @@ -9,11 +9,13 @@ import org.eclipse.emf.ecore.util.EcoreUtil import org.eclipse.viatra.dse.base.ThreadContext class SolutionStoreWithCopy { + long runtime = 0 List solutions = new LinkedList List> copyTraces = new LinkedList - long initTime = System.nanoTime + long sartTime = System.nanoTime + List solutionTimes = new LinkedList def newSolution(ThreadContext context) { //print(System.nanoTime-initTime + ";") @@ -25,10 +27,14 @@ class SolutionStoreWithCopy { solutions.add(solutionCopy) copyTraces.add(copier) runtime += System.nanoTime - copyStart + solutionTimes.add(System.nanoTime-sartTime) } def getSumRuntime() { return runtime } + def getAllRuntimes() { + return solutionTimes + } def getSolutions() { solutions } -- cgit v1.2.3-54-g00ecf