Java TeX R Groovy CSS Shell HTML
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
diagrams
docs
gradle
logs
models
postgres
results
scripts
site
trainbenchmark-config
trainbenchmark-format-emf-model
trainbenchmark-format-emf
trainbenchmark-format-graph-neo4j
trainbenchmark-format-rdf
trainbenchmark-format-sql
trainbenchmark-generator-emf
trainbenchmark-generator-graph-cypher
trainbenchmark-generator-graph-neo4j
trainbenchmark-generator-graph-tinkerpop
trainbenchmark-generator-rdf
trainbenchmark-generator-sql
trainbenchmark-generator
trainbenchmark-reporting
trainbenchmark-scripts
trainbenchmark-server
trainbenchmark-tool-emf
trainbenchmark-tool-emfapi
trainbenchmark-tool-ingraph
trainbenchmark-tool-janusgraph
trainbenchmark-tool-jena
trainbenchmark-tool-mysql
trainbenchmark-tool-neo4j
trainbenchmark-tool-orientdb
trainbenchmark-tool-rdf
trainbenchmark-tool-sesame
trainbenchmark-tool-sql
trainbenchmark-tool-sqlite
trainbenchmark-tool-tinkergraph
trainbenchmark-tool-viatra-patterns
trainbenchmark-tool-viatra
trainbenchmark-tool
visualization
.editorconfig
.gitignore
.travis.yml
LICENSE
README.md
build.gradle
gradlew
gradlew.bat
settings.gradle

README.md

Train Benchmark

Build Status

🚂 Summary. The Train Benchmark is a framework for measuring the performance of continuous model transformations, with a particular emphasis on the performance of incremental query reevaluation. The benchmark is actively developed since 2011.

📖 Documentation. If you are interested in implementing the benchmark on your tool, please visit the documentation.

🎥 Presentation. For a short summary, check out this presentation, delivered at the Linked Data Benchmark Council's 9th Technical User Community meeting.

📚 Publications. The definitive publication on the benchmark is our journal paper The Train Benchmark: cross-technology performance evaluation of continuous model queries. For use cases, also check out the related publications.

💻 Technologies. The framework is implemented in Java 8 (for the main components) and Groovy (for scripts). The visualization is handled by R scripts. Both the build and the benchmark process in governed by Gradle.

👋 Contributions welcome. If you would like to implement the benchmark on your tool, we recommend to read the documentation and also please do not hesitate to get in touch!

⚠️ Warning. The Train Benchmark is designed to run in an isolated server environment, e.g. virtual machines in the cloud. Some implementations may shut down or delete existing databases, so only run it on your developer workstation if you understand the consequences. See also issue #75.

⚠️ Warning. The Train Benchmark has a fork for the 2015 Transformation Tool Contest, primarily targeting EMF tools. That fork is no longer maintained. You should use this repository, containing the full, cross-technology Train Benchmark (also supporting RDF, SQL and property graph databases).

📄 Citing the benchmark. For referencing the benchmark, please cite the paper in Software and Systems Modeling with the following BibTeX snippet.

@article{TrainBenchmark2017,
  author="Sz{\'a}rnyas, G{\'a}bor and Izs{\'o}, Benedek and R{\'a}th, Istv{\'a}n and Varr{\'o}, D{\'a}niel",
  title="The Train Benchmark: cross-technology performance evaluation of continuous model queries",
  journal="Software {\&} Systems Modeling",
  year="2017",
  pages="1--29",
  issn="1619-1374",
  doi="10.1007/s10270-016-0571-8",
  url="http://dx.doi.org/10.1007/s10270-016-0571-8"
}

License

The project uses the Eclipse Public License 1.0 and was supported by the MONDO EU FP7 (EU ICT-611125) project. It is primarily maintained by the MTA-BME Lendület Research Group on Cyber-Physical Systems.