summaryrefslogtreecommitdiff
path: root/opendc-stdlib/src/main
AgeCommit message (Collapse)Author
2018-07-11feat: Interpolate machine state and task progress (#21)Fabian Mastenbroek
This pull request implements interpolation of task progress (represented as the `TaskState` and `MachineState` class) via the Interpolation helpers implemented in #20. The model assumes that tasks progress linearly between two measurements (since the time between measurements is usually small).
2018-02-23feat(#12): Add support for measurement interpolationFabian Mastenbroek
This change adds interpolation functionality to the standard library for instrumentation devices.
2018-02-18refactor(#18): Optimize importsFabian Mastenbroek
2018-02-18refactor(#18): Provide access to process context in nested callsFabian Mastenbroek
This change provides a method in the standard library to access the process context in nested suspending function calls.
2018-02-14refactor(#18): Create distinction between kernel and simulationFabian Mastenbroek
This change creates a distinction between a kernel and a simulation. A single simulation is represented by a `Simulation` object which provides control over the simulation, while the `Kernel` interface allows users to create a new simulation using that kernel as backend.
2018-02-12refactor(#18): Align formatting with official Kotlin Style GuideFabian Mastenbroek
This change aligns the code formatting of the project with the official Kotlin Style Guide. They can be found at http://kotlinlang.org/docs/reference/coding-conventions.html.
2018-01-11refactor(#18): Redesign core simulation APIFabian Mastenbroek
This change contains the redesign of the core simulation API and provides a cleaner interface for developing simulation models for the users.
2017-10-24bug(#4): Prevent scheduling to machines without processing unitsFabian Mastenbroek
This change prevents the currently available scheduler implementations from scheduling tasks to machines without processing units, since these machines cannot perform any work. Closes #4
2017-10-04bug(#9): Fix interference between experimentsFabian Mastenbroek
This change fixes the interference of multiple experiments running at the same time due to some thread unsafe behaviour in the JpaExperimentManager class. The code has now been restructured to solve the issue and fix the thread unsafe behaviour. Closes #9.
2017-09-28Add thread pool for experiment platformFabian Mastenbroek
2017-09-28Implement JPA integrationFabian Mastenbroek
2017-09-21Create simple datacenter experimentFabian Mastenbroek
2017-09-20Add support for timeouts on receive callsFabian Mastenbroek
This change allows processes to set a timeout when waiting for a message to arrive.
2017-09-20Implement standard task schedulersFabian Mastenbroek
This change implements default tasks scheduling algorithms like FIFO or SRTF and adds them to to the standard library.
2017-09-20Improve simulation time managementFabian Mastenbroek
2017-09-18Refactor and split up code baseFabian Mastenbroek
This change splits up the current code base into three different module: - opendc-core - This module defines the API which you can use to write simulatable entities in a topology. - opendc-omega - This module is the reference implementation of the API defined the `opendc-core` module. - opendc-stdlib - This module provides a standard library of entities which can be used for datacenter simulation.