aboutsummaryrefslogtreecommitdiffstats
path: root/Framework
diff options
context:
space:
mode:
authorLibravatar Oszkar Semerath <semerath@mit.bme.hu>2020-05-12 03:19:32 +0200
committerLibravatar Oszkar Semerath <semerath@mit.bme.hu>2020-05-12 03:19:32 +0200
commit0ca3b7409e1b98bb2ebeb65df9dbe316500302e9 (patch)
tree2f0bd914eed9471bc437201b0c5ac680db853eba /Framework
parentremoved unnecessary printing (diff)
downloadVIATRA-Generator-0ca3b7409e1b98bb2ebeb65df9dbe316500302e9.tar.gz
VIATRA-Generator-0ca3b7409e1b98bb2ebeb65df9dbe316500302e9.tar.zst
VIATRA-Generator-0ca3b7409e1b98bb2ebeb65df9dbe316500302e9.zip
logging detailed measurement data for the numerical solver
Diffstat (limited to 'Framework')
-rw-r--r--Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/src/hu/bme/mit/inf/dslreasoner/viatra2logic/NumericTranslator.xtend16
1 files changed, 16 insertions, 0 deletions
diff --git a/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/src/hu/bme/mit/inf/dslreasoner/viatra2logic/NumericTranslator.xtend b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/src/hu/bme/mit/inf/dslreasoner/viatra2logic/NumericTranslator.xtend
index 89719b91..81bc1796 100644
--- a/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/src/hu/bme/mit/inf/dslreasoner/viatra2logic/NumericTranslator.xtend
+++ b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/src/hu/bme/mit/inf/dslreasoner/viatra2logic/NumericTranslator.xtend
@@ -19,6 +19,10 @@ class NumericTranslator {
19 19
20 private XExpressionExtractor extractor = new XExpressionExtractor(); 20 private XExpressionExtractor extractor = new XExpressionExtractor();
21 21
22 long formingProblemTime=0;
23 long solvingProblemTime=0;
24 long formingSolutionTime=0;
25
22 val comparator = new Comparator<JvmIdentifiableElement>(){ 26 val comparator = new Comparator<JvmIdentifiableElement>(){
23 override compare(JvmIdentifiableElement o1, JvmIdentifiableElement o2) { 27 override compare(JvmIdentifiableElement o1, JvmIdentifiableElement o2) {
24 //println('''«o1.simpleName» - «o2.simpleName»''') 28 //println('''«o1.simpleName» - «o2.simpleName»''')
@@ -52,6 +56,7 @@ class NumericTranslator {
52 val input = formNumericProblemInstance(matches) 56 val input = formNumericProblemInstance(matches)
53 val solver = new NumericProblemSolver 57 val solver = new NumericProblemSolver
54 val satisfiability = solver.isSatisfiable(input) 58 val satisfiability = solver.isSatisfiable(input)
59 solver.updateTimes
55 return satisfiability 60 return satisfiability
56 } 61 }
57 62
@@ -59,6 +64,17 @@ class NumericTranslator {
59 val input = formNumericProblemInstance(matches) 64 val input = formNumericProblemInstance(matches)
60 val solver = new NumericProblemSolver 65 val solver = new NumericProblemSolver
61 val solution = solver.getOneSolution(primitiveElements,input) 66 val solution = solver.getOneSolution(primitiveElements,input)
67 solver.updateTimes
62 return solution 68 return solution
63 } 69 }
70
71 private def updateTimes(NumericProblemSolver s) {
72 this.formingProblemTime += s.getEndformingProblem
73 this.solvingProblemTime += s.getEndSolvingProblem
74 this.formingSolutionTime += s.getEndFormingSolution
75 }
76
77 def getFormingProblemTime() {formingProblemTime}
78 def getSolvingProblemTime() {solvingProblemTime}
79 def getFormingSolutionTime() {formingSolutionTime}
64} \ No newline at end of file 80} \ No newline at end of file