HOBBIT Java SDK is a standalone software library targeted to make the design and development of HOBBIT-compatible components easier.

The SDK helps platform users with the following tasks:

  • design systems for benchmarking and debug them within a particular benchmark;
  • design a benchmark and debug the interactions between its components;
  • upload results (docker images of your components) to the online platform.

Creating a benchmark

Make sure you have all HOBBIT requirements met.

Clone Java SDK Example kit which contains a template for a benchmark.

Implement your data generator in DataGenerator::generateData and your task generator in TaskGenerator::generateTask.

Test the benchmark as a Java code: mvn -Dtest=ExampleBenchmarkTest#checkHealth test.

Configure project name in Constants if needed.

Package the benchmark as a jar file: mvn -DskipTests package.

Build the benchmark Docker image: mvn -Dtest=ExampleBenchmarkTest#buildImages test.

Now, you can test the benchmark using Docker containers: mvn -Dtest=ExampleSystemTest#checkHealthDockerized test.

After that, the benchmark image is ready and can be docker push-ed to remote repository.

As usual, you’ll need to add a .ttl file describing your benchmark.

For more details, consult HOBBIT Java SDK Example kit README.