aboutsummaryrefslogtreecommitdiffstats
path: root/Application
diff options
context:
space:
mode:
authorLibravatar Oszkar Semerath <semerath@mit.bme.hu>2020-05-12 20:45:15 +0200
committerLibravatar Oszkar Semerath <semerath@mit.bme.hu>2020-05-12 20:45:15 +0200
commit3b1984761eb8a520a8fd5631b825b640b3fd822c (patch)
tree5680b8ebfd63c54c50c10331d680a3e0efab1f87 /Application
parentremoved unnecesary printing (diff)
downloadVIATRA-Generator-3b1984761eb8a520a8fd5631b825b640b3fd822c.tar.gz
VIATRA-Generator-3b1984761eb8a520a8fd5631b825b640b3fd822c.tar.zst
VIATRA-Generator-3b1984761eb8a520a8fd5631b825b640b3fd822c.zip
memory cleaning for measurements
Diffstat (limited to 'Application')
-rw-r--r--Application/hu.bme.mit.inf.dslreasoner.application/src/hu/bme/mit/inf/dslreasoner/application/execution/GenerationTaskExecutor.xtend3
-rw-r--r--Application/hu.bme.mit.inf.dslreasoner.application/src/hu/bme/mit/inf/dslreasoner/application/execution/ScriptExecutor.xtend19
2 files changed, 19 insertions, 3 deletions
diff --git a/Application/hu.bme.mit.inf.dslreasoner.application/src/hu/bme/mit/inf/dslreasoner/application/execution/GenerationTaskExecutor.xtend b/Application/hu.bme.mit.inf.dslreasoner.application/src/hu/bme/mit/inf/dslreasoner/application/execution/GenerationTaskExecutor.xtend
index 1f52c4b3..aa98e268 100644
--- a/Application/hu.bme.mit.inf.dslreasoner.application/src/hu/bme/mit/inf/dslreasoner/application/execution/GenerationTaskExecutor.xtend
+++ b/Application/hu.bme.mit.inf.dslreasoner.application/src/hu/bme/mit/inf/dslreasoner/application/execution/GenerationTaskExecutor.xtend
@@ -184,6 +184,9 @@ class GenerationTaskExecutor {
184 184
185 console.writeMessage("Model generation started") 185 console.writeMessage("Model generation started")
186 for(run : 1..runs) { 186 for(run : 1..runs) {
187 if(run > 1) {
188 ScriptExecutor::restForMeasurements(console)
189 }
187 monitor.subTask('''Solving problem«IF runs>0» «run»/«runs»«ENDIF»''') 190 monitor.subTask('''Solving problem«IF runs>0» «run»/«runs»«ENDIF»''')
188 val visualisationProgressMonitor= new EclipseBasedProgressMonitor(monitor) 191 val visualisationProgressMonitor= new EclipseBasedProgressMonitor(monitor)
189 192
diff --git a/Application/hu.bme.mit.inf.dslreasoner.application/src/hu/bme/mit/inf/dslreasoner/application/execution/ScriptExecutor.xtend b/Application/hu.bme.mit.inf.dslreasoner.application/src/hu/bme/mit/inf/dslreasoner/application/execution/ScriptExecutor.xtend
index c9ec68bb..6037cfbf 100644
--- a/Application/hu.bme.mit.inf.dslreasoner.application/src/hu/bme/mit/inf/dslreasoner/application/execution/ScriptExecutor.xtend
+++ b/Application/hu.bme.mit.inf.dslreasoner.application/src/hu/bme/mit/inf/dslreasoner/application/execution/ScriptExecutor.xtend
@@ -4,6 +4,7 @@ import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.ConfigRef
4import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.ConfigSpecification 4import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.ConfigSpecification
5import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.ConfigurationScript 5import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.ConfigurationScript
6import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.CustomEntry 6import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.CustomEntry
7import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.DocumentLevelSpecification
7import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.DocumentationEntry 8import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.DocumentationEntry
8import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.EPackageImport 9import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.EPackageImport
9import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.FileReference 10import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.FileReference
@@ -24,11 +25,10 @@ import hu.bme.mit.inf.dslreasoner.application.execution.util.ApplicationConfigur
24import hu.bme.mit.inf.dslreasoner.logic.model.builder.DocumentationLevel 25import hu.bme.mit.inf.dslreasoner.logic.model.builder.DocumentationLevel
25import java.util.LinkedHashMap 26import java.util.LinkedHashMap
26import java.util.Optional 27import java.util.Optional
27import org.eclipse.emf.common.util.URI
28import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.DocumentLevelSpecification
29import org.eclipse.core.runtime.jobs.Job
30import org.eclipse.core.runtime.IProgressMonitor 28import org.eclipse.core.runtime.IProgressMonitor
31import org.eclipse.core.runtime.Status 29import org.eclipse.core.runtime.Status
30import org.eclipse.core.runtime.jobs.Job
31import org.eclipse.emf.common.util.URI
32 32
33class ScriptExecutor { 33class ScriptExecutor {
34 val parser = new ApplicationConfigurationParser 34 val parser = new ApplicationConfigurationParser
@@ -58,6 +58,9 @@ class ScriptExecutor {
58 val tasks = script.commands.filter(Task) 58 val tasks = script.commands.filter(Task)
59 59
60 for(taskIndex : 0..<tasks.size) { 60 for(taskIndex : 0..<tasks.size) {
61 if(taskIndex>0) {
62 restForMeasurements(null)
63 }
61 val task = tasks.get(taskIndex) 64 val task = tasks.get(taskIndex)
62 monitor.beginTask('''Executing task«IF tasks.size>1» «taskIndex+1»«ENDIF»: «task.name»''',task.totalWork) 65 monitor.beginTask('''Executing task«IF tasks.size>1» «taskIndex+1»«ENDIF»: «task.name»''',task.totalWork)
63 task.execute(monitor) 66 task.execute(monitor)
@@ -234,4 +237,14 @@ class ScriptExecutor {
234 } 237 }
235 } 238 }
236 } 239 }
240 static val boolean measuring = true
241 static def restForMeasurements(ScriptConsole console) {
242 if(measuring) {
243 if(console !== null) {
244 console.writeMessage('''Cleaning memory.''')
245 }
246 System.gc System.gc System.gc
247 Thread.sleep(2500)
248 }
249 }
237} \ No newline at end of file 250} \ No newline at end of file