Select Git revision
pose_replayer.cpp
GeneratorScript.groovy 1.69 KiB
import de.tudresden.inf.st.trainbenchmark.generator.json4ag.config.Json4AgGeneratorConfigBuilder
import de.tudresden.inf.st.trainbenchmark.generator.json4agspecial.config.Json4AgSpecialGeneratorConfigBuilder
import hu.bme.mit.trainbenchmark.config.ExecutionConfig
import hu.bme.mit.trainbenchmark.generator.config.GeneratorConfigBase
import hu.bme.mit.trainbenchmark.generator.config.Scenario
import hu.bme.mit.trainbenchmark.generator.emf.config.EmfGeneratorConfigBuilder
import hu.bme.mit.trainbenchmark.generator.graph.tinkerpop.config.TinkerGraphFormat
import hu.bme.mit.trainbenchmark.generator.graph.tinkerpop.config.TinkerGraphGeneratorConfigBuilder
import hu.bme.mit.trainbenchmark.generator.runner.GeneratorRunner
def ec = new ExecutionConfig(4000, 6000)
def minSize = 1
/* def maxSize = 2048 */
def maxSize = 1024
def scenarios = [
Scenario.BATCH,
Scenario.INJECT,
Scenario.REPAIR,
]
def formats = [
new EmfGeneratorConfigBuilder(),
new TinkerGraphGeneratorConfigBuilder().setGraphFormat(TinkerGraphFormat.GRAPHML),
new Json4AgGeneratorConfigBuilder(),
new Json4AgSpecialGeneratorConfigBuilder()
]
for (scenario in scenarios) {
formats.each { generatorConfigBuilder ->
try {
for (def size = minSize; size <= maxSize; size *= 2) {
println("Scenario: ${scenario}, size: ${size}")
def configBase = new GeneratorConfigBase(scenario, size)
def config = generatorConfigBuilder.setConfigBase(configBase).createConfig()
def exitValue = GeneratorRunner.run(config, ec)
if (exitValue != 0) {
println "Timeout or error occured, skipping models for larger sizes. Error code: ${exitValue}"
break
}
}
} catch (all) {
println "Exception occured during execution."
}
}
}