| Age | Commit message (Collapse) | Author |
|
This change removes the energy experiments. The experiments only
provided a setup for the original experiments and is not able to
reproduce the results without further worker.
|
|
This change moves the fault injection logic directly into the
opendc-compute-simulator module, so that it can operate at a higher
abstraction. In the future, we might again split the module if we can
re-use some of its logic.
|
|
This change moves the metric collection outside the Capelin codebase in
a separate module so other modules can also benefit from the compute
metric collection code.
|
|
This change updates the WTF trace reader to support the new streaming
trace API.
|
|
This change updates the FilterScheduler implementation to follow more
closely the scheduler implementation in OpenStack's Nova. We now
normalize the weights, support many of the filters and weights in
OpenStack and support overcommitting resources.
|
|
This change updates the trace reader implementation to remove their
dependency on the performance interference model. In a future commit, we
will instead pass the performance interference model via the
host/hypervisor.
|
|
This change re-organizes the classes of the compute simulator module to
make a clearer distinction between the hardware, firmware and software
interfaces in this module.
|
|
This change enables the experiments to share the SimResourceInterpreter
across multiple hosts, which allows updates to be scheduled efficiently
for all machines at the same time. This is especially beneficial if the
machines operate on the same time slices.
|
|
This change renames the opendc-serverless module to opendc-faas to
better distinguish between the two terms (Serverless and FaaS) and be
clearer about the intent of the module.
The opendc-faas module holds the code for the FaaS platform on top of
OpenDC. Although this is one approach of doing serverless, serverless
can also entail other services that will not be covered by this module.
|
|
This change fixes an issue where the power in the energy experiments is
always reported as zero due to the changes in commit 652b869.
|
|
This change fixes the execution of the Energy21 experiments which failed
due to various changes in the OpenDC codebase. First, the directory
structure is now required to be pre-generated before the writer starts
writing the experiment output. Second, we must include the configuration
of the Capelin experiment in this experiment in order to workaround an
issue with harness filtering.
|
|
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 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 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.
|