<feed xmlns='http://www.w3.org/2005/Atom'>
<title>sunfish.git/simulator/opendc-experiments, branch master</title>
<subtitle>The OpenDC BSc thesis repository.
</subtitle>
<link rel='alternate' type='text/html' href='https://git.denounce.ai/sunfish.git/'/>
<entry>
<title>build: Migrate to flat project structure</title>
<updated>2021-04-25T14:01:14+00:00</updated>
<author>
<name>Fabian Mastenbroek</name>
<email>mail.fabianm@gmail.com</email>
</author>
<published>2021-04-25T14:01:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.denounce.ai/sunfish.git/commit/?id=cd0b45627f0d8da8c8dc4edde223f3c36e9bcfbf'/>
<id>cd0b45627f0d8da8c8dc4edde223f3c36e9bcfbf</id>
<content type='text'>
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.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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.
</pre>
</div>
</content>
</entry>
<entry>
<title>simulator: Add the MSE power model (#121)</title>
<updated>2021-04-23T07:48:27+00:00</updated>
<author>
<name>Hongyu</name>
<email>39747921+HongyuHe@users.noreply.github.com</email>
</author>
<published>2021-04-23T07:48:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.denounce.ai/sunfish.git/commit/?id=128a1db017545597a5c035b7960eb3fd36b5f987'/>
<id>128a1db017545597a5c035b7960eb3fd36b5f987</id>
<content type='text'>
This change adds a power model for optimizing the mean squared error 
to the available power models in OpenDC.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This change adds a power model for optimizing the mean squared error 
to the available power models in OpenDC.</pre>
</div>
</content>
</entry>
<entry>
<title>simulator: Introduce SimulationCoroutineDispatcher (#120)</title>
<updated>2021-04-21T15:00:09+00:00</updated>
<author>
<name>Fabian Mastenbroek</name>
<email>mail.fabianm@gmail.com</email>
</author>
<published>2021-04-21T15:00:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.denounce.ai/sunfish.git/commit/?id=10dfc257de65cbbd1e25d1d7f5833bfb687d85ed'/>
<id>10dfc257de65cbbd1e25d1d7f5833bfb687d85ed</id>
<content type='text'>
This change introduces the SimulationCoroutineDispatcher implementation which replaces the TestCoroutineDispatcher for running single-threaded simulations.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This change introduces the SimulationCoroutineDispatcher implementation which replaces the TestCoroutineDispatcher for running single-threaded simulations.</pre>
</div>
</content>
</entry>
<entry>
<title>simulator: Migrate to SimulationCoroutineDispatcher</title>
<updated>2021-04-21T14:37:18+00:00</updated>
<author>
<name>Fabian Mastenbroek</name>
<email>mail.fabianm@gmail.com</email>
</author>
<published>2021-04-21T14:35:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.denounce.ai/sunfish.git/commit/?id=62678b2890a7f3640836b99ca2fec9efd7485929'/>
<id>62678b2890a7f3640836b99ca2fec9efd7485929</id>
<content type='text'>
This change migrates the remainder of the codebase to the
SimulationCoroutineDispatcher implementation.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This change migrates the remainder of the codebase to the
SimulationCoroutineDispatcher implementation.
</pre>
</div>
</content>
</entry>
<entry>
<title>simulator: Introduce SimulationCoroutineDispatcher</title>
<updated>2021-04-21T14:37:18+00:00</updated>
<author>
<name>Fabian Mastenbroek</name>
<email>mail.fabianm@gmail.com</email>
</author>
<published>2021-04-21T12:30:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.denounce.ai/sunfish.git/commit/?id=1c0568c31d60d4e690b4b9aec2e14f660b72a5c8'/>
<id>1c0568c31d60d4e690b4b9aec2e14f660b72a5c8</id>
<content type='text'>
This change introduces the SimulationCoroutineDispatcher implementation
which replaces the TestCoroutineDispatcher for running single-threaded
simulations.

Previously, we used the TestCoroutineDispatcher from the
kotlinx-coroutines-test modules for running simulations. However, this
module is aimed at coroutine tests and not at simulations.

In particular, having to construct a Clock object each time for the
TestCoroutineDispatcher caused a lot of unnecessary lines. With the new
approach, the SimulationCoroutineDispatcher automatically exposes a
usable Clock object.

In addition to ergonomic benefits, the SimulationCoroutineDispatcher is
much faster than the TestCoroutineDispatcher due to the assumption that
simulations run in only a single thread. As a result, the dispatcher
does not need to perform synchronization and can use the fast
PriorityQueue implementation.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This change introduces the SimulationCoroutineDispatcher implementation
which replaces the TestCoroutineDispatcher for running single-threaded
simulations.

Previously, we used the TestCoroutineDispatcher from the
kotlinx-coroutines-test modules for running simulations. However, this
module is aimed at coroutine tests and not at simulations.

In particular, having to construct a Clock object each time for the
TestCoroutineDispatcher caused a lot of unnecessary lines. With the new
approach, the SimulationCoroutineDispatcher automatically exposes a
usable Clock object.

In addition to ergonomic benefits, the SimulationCoroutineDispatcher is
much faster than the TestCoroutineDispatcher due to the assumption that
simulations run in only a single thread. As a result, the dispatcher
does not need to perform synchronization and can use the fast
PriorityQueue implementation.
</pre>
</div>
</content>
</entry>
<entry>
<title>exp: Prevent re-use of SimWorkload in experiment</title>
<updated>2021-04-15T12:25:24+00:00</updated>
<author>
<name>Fabian Mastenbroek</name>
<email>mail.fabianm@gmail.com</email>
</author>
<published>2021-04-15T12:13:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.denounce.ai/sunfish.git/commit/?id=e68046465d39611259fa13952add731e80ea7331'/>
<id>e68046465d39611259fa13952add731e80ea7331</id>
<content type='text'>
This change fixes and issue where a SimWorkload was being re-used across
simulation runs. Given that SimWorkload is stateless, this may cause
strange issues.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This change fixes and issue where a SimWorkload was being re-used across
simulation runs. Given that SimWorkload is stateless, this may cause
strange issues.
</pre>
</div>
</content>
</entry>
<entry>
<title>simulator: Add the asymptotic power model from GreenCloud (#114)</title>
<updated>2021-04-12T08:20:04+00:00</updated>
<author>
<name>Hongyu</name>
<email>39747921+HongyuHe@users.noreply.github.com</email>
</author>
<published>2021-04-12T08:20:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.denounce.ai/sunfish.git/commit/?id=d08c3a340dee64bfb2925e5f8b59a1193dc2dbcd'/>
<id>d08c3a340dee64bfb2925e5f8b59a1193dc2dbcd</id>
<content type='text'>
This change adds the asymptotic power model that is used in GreenCloud
to the available power models in OpenDC.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This change adds the asymptotic power model that is used in GreenCloud
to the available power models in OpenDC.</pre>
</div>
</content>
</entry>
<entry>
<title>compute: Implement filter scheduler</title>
<updated>2021-04-08T18:46:39+00:00</updated>
<author>
<name>Fabian Mastenbroek</name>
<email>mail.fabianm@gmail.com</email>
</author>
<published>2021-04-08T18:46:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.denounce.ai/sunfish.git/commit/?id=3820ac4d31d6eb04034b85a1b53667d64ce6ba89'/>
<id>3820ac4d31d6eb04034b85a1b53667d64ce6ba89</id>
<content type='text'>
This pull request implements the filter scheduler modeled after the scheduler 
from [OpenStack](https://docs.openstack.org/nova/latest/user/filter-scheduler.html). 
The scheduler is functionally equivalent to the old allocation policies, but is more 
flexible and allows policies to be combined.

* A new interface, `ComputeScheduler` is introduced, which is used by the 
  `ComputeServiceImpl` to pick hosts to schedule on.
* `FilterScheduler` is implemented, which works by filtering and weighing the available hosts.

**Breaking API Changes**

* Removal of the `AllocationPolicy` interface and its implementations. 
   Users should migrate to the filter scheduler which offers the same functionality and more.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This pull request implements the filter scheduler modeled after the scheduler 
from [OpenStack](https://docs.openstack.org/nova/latest/user/filter-scheduler.html). 
The scheduler is functionally equivalent to the old allocation policies, but is more 
flexible and allows policies to be combined.

* A new interface, `ComputeScheduler` is introduced, which is used by the 
  `ComputeServiceImpl` to pick hosts to schedule on.
* `FilterScheduler` is implemented, which works by filtering and weighing the available hosts.

**Breaking API Changes**

* Removal of the `AllocationPolicy` interface and its implementations. 
   Users should migrate to the filter scheduler which offers the same functionality and more.</pre>
</div>
</content>
</entry>
<entry>
<title>serverless: Model cold start delays</title>
<updated>2021-04-08T18:19:49+00:00</updated>
<author>
<name>Fabian Mastenbroek</name>
<email>mail.fabianm@gmail.com</email>
</author>
<published>2021-04-01T19:14:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.denounce.ai/sunfish.git/commit/?id=831ba3d882a46dad2abe6ac281b736b729dc7080'/>
<id>831ba3d882a46dad2abe6ac281b736b729dc7080</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>exp: Add experiment testing the serverless module</title>
<updated>2021-04-08T18:19:49+00:00</updated>
<author>
<name>Fabian Mastenbroek</name>
<email>mail.fabianm@gmail.com</email>
</author>
<published>2021-03-31T13:26:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.denounce.ai/sunfish.git/commit/?id=8df422ca5164bd712caf594951669ebeb656f5fb'/>
<id>8df422ca5164bd712caf594951669ebeb656f5fb</id>
<content type='text'>
This change adds an experiments testing the OpenDC Serverless module.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This change adds an experiments testing the OpenDC Serverless module.
</pre>
</div>
</content>
</entry>
</feed>
