| Age | Commit message (Collapse) | Author |
|
This change eliminates all Hadoop dependencies that are not necessary
for Parquet to work correctly. As a result, the number of dependencies
should now be greatly reduced, which in turn leads to less artifacts
that need to be retrieved at build time.
|
|
This change updates the Parquet writers used in the Capelin experiments
to use our OutputFile implementation for local files, to reduce our
dependency on Apache Hadoop.
|
|
This change updates the Parquet readers used in the Capelin experiments
to use our InputFile implementation for local files, to reduce our
dependency on Apache Hadoop.
|
|
This change removes the Jupyter Notebook that was shipped with the
initial version of the Energy21 experiments. At the moment, it is not
up to date anymore and we will probably move the plotting facility to
the web interface.
|
|
This change splits the functionality present in the CPUFreq subsystem of
the compute simulation. Currently, the DVFS functionality is embedded in
SimBareMetalMachine. However, this functionality should not exist within
the firmware layer of a machine. Instead, the operating system should
perform this logic (in OpenDC this should be the hypervisor).
Furthermore, this change moves the scaling driver into the power
package. The power driver is a machine/firmware specific implementation
that computes the power consumption of a machine.
|
|
This change updates the SimWorkload interfaces to allow
implementations to start consumers for the machine resource providers
directly.
|
|
This change adds a new interface to the resources library for accessing
metrics of resources such as work, demand and overcommitted work. With
this change, we do not need an implementation specific listener
interface in SimResourceSwitchMaxMin anymore.
Another benefit of this approach is that updates will be scheduled more
efficiently and progress will only be reported once the system has
reached a steady-state for that timestamp.
|
|
This change introduces the SimResourceInterpreter which centralizes the
logic for scheduling and interpreting the communication between resource
consumer and provider.
This approach offers better performance due to avoiding invalidating the
state of the resource context when not necessary. Benchmarks show in the
best case a 5x performance improvement and at worst a 2x improvement.
|
|
This change addresses the deprecations that were caused by the migration
to Kotlin 1.5.
|
|
|
|
|
|
|
|
|
|
|
|
This change adds the experimental environments that are being used for
the TensorFlow on OpenDC experiments.
|
|
This change adds a reader for the environment/topology format that is
used for the TensorFlow experiments in OpenDC.
|
|
This change adds a model of TensorFlow's Keras API to OpenDC.
|
|
This change adds the initial experiment setup for the TensorFlow
on OpenDC experiments.
|
|
This change adds support for custom termination policies for function
instances. This allows the user to build different strategies for
downscaling function instances after they become idle.
|
|
This change adds support for the Gradle version catalog feature in our
build configuration. This allows us to have a single file,
gradle/libs.versions.toml, which contains all the dependency versions
used in this project.
|
|
This change updates the Gradle build configuration so that the
application modules (as opposed the libraries) are not published onto
Maven Central.
|
|
This change updates the build scripts to use type-safe project accessors
when specifying build dependencies between modules.
|
|
This change adds support for configuring the experiments via
configuration files using the TypeSafe config library. In the future, we
will also integrate support for configuration into the harness.
|
|
This change adds support for appending libraries to the classpath when
searching for experiments to run using the OpenDC Harness command line
interface.
|
|
This change splits the OpenDC Experiment Harness into separate modules.
This prevents users from pulling in unnecessary dependencies when
depending on the harness API.
|
|
This change fixes the aggregation of the power draw metric. Previously,
if the power draw did not change between collection cycles, the power
draw would be reported as zero. This change uses OpenTelemetry Views to
collect the latest value of the power draw each cycle.
|
|
This change updates the project structure to become flattened.
Previously, the simulator, frontend and API each lived into their own
directory.
With this change, all modules of the project live in the top-level
directory of the repository. This should improve discoverability of
modules of the project.
|