<feed xmlns='http://www.w3.org/2005/Atom'>
<title>sunfish.git/opendc-compute/opendc-compute-simulator/src/test, 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>minor fix</title>
<updated>2026-03-13T15:37:32+00:00</updated>
<author>
<name>vincent</name>
<email>you@example.com</email>
</author>
<published>2026-03-13T15:37:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.denounce.ai/sunfish.git/commit/?id=3feb66c9fc1934aa3137f09d5a27eb2cfea138f0'/>
<id>3feb66c9fc1934aa3137f09d5a27eb2cfea138f0</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>add tests for the new memory check feature</title>
<updated>2026-03-13T15:01:44+00:00</updated>
<author>
<name>vincent</name>
<email>you@example.com</email>
</author>
<published>2026-03-13T15:01:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.denounce.ai/sunfish.git/commit/?id=4ddfd2fe71b1df28f65529f15ce92219427cb619'/>
<id>4ddfd2fe71b1df28f65529f15ce92219427cb619</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Memory update (#379)</title>
<updated>2025-11-04T20:09:38+00:00</updated>
<author>
<name>Dante Niewenhuis</name>
<email>d.niewenhuis@hotmail.com</email>
</author>
<published>2025-11-04T20:09:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.denounce.ai/sunfish.git/commit/?id=71f63618fb83c8e19ae48d5dc4a6e3927031cc10'/>
<id>71f63618fb83c8e19ae48d5dc4a6e3927031cc10</id>
<content type='text'>
* Updated the memory usage of Tasks. Still in Progress.

* Merged Task and ServiceTask -&gt; Currently not fully working!!!

* Fixed bugs that made the merger between Task and ServiceTask not work well.

* Updated jdk version for Dockerfile

* Removed ServiceFlavor.java and Task.kt</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Updated the memory usage of Tasks. Still in Progress.

* Merged Task and ServiceTask -&gt; Currently not fully working!!!

* Fixed bugs that made the merger between Task and ServiceTask not work well.

* Updated jdk version for Dockerfile

* Removed ServiceFlavor.java and Task.kt</pre>
</div>
</content>
</entry>
<entry>
<title>Improved FilterScheduler using a constantly sorting array (#374)</title>
<updated>2025-10-02T13:32:32+00:00</updated>
<author>
<name>Dante Niewenhuis</name>
<email>d.niewenhuis@hotmail.com</email>
</author>
<published>2025-10-02T13:32:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.denounce.ai/sunfish.git/commit/?id=48ddc082ea301f54717a8ab7c54023f73220e4eb'/>
<id>48ddc082ea301f54717a8ab7c54023f73220e4eb</id>
<content type='text'>
Updated FilterScheduler.kt for performance using a constantly sorted Array</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Updated FilterScheduler.kt for performance using a constantly sorted Array</pre>
</div>
</content>
</entry>
<entry>
<title>Fixed a small bug that caused duplications in usedHosts in the FilterScheduler.kt (#372)</title>
<updated>2025-09-26T07:48:29+00:00</updated>
<author>
<name>Dante Niewenhuis</name>
<email>d.niewenhuis@hotmail.com</email>
</author>
<published>2025-09-26T07:48:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.denounce.ai/sunfish.git/commit/?id=e88adbc3fc15a2de717f9478454c5a5229ece10e'/>
<id>e88adbc3fc15a2de717f9478454c5a5229ece10e</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Updated FilterScheduler for performance (#371)</title>
<updated>2025-09-25T19:16:16+00:00</updated>
<author>
<name>Dante Niewenhuis</name>
<email>d.niewenhuis@hotmail.com</email>
</author>
<published>2025-09-25T19:16:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.denounce.ai/sunfish.git/commit/?id=21ff6b03685a21977fa131f4c3b6cadb8b29ac9f'/>
<id>21ff6b03685a21977fa131f4c3b6cadb8b29ac9f</id>
<content type='text'>
* Updated FilterScheduler for performance</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Updated FilterScheduler for performance</pre>
</div>
</content>
</entry>
<entry>
<title>Implements fixes to run m100 traces with GPUs (#362)</title>
<updated>2025-09-15T13:34:38+00:00</updated>
<author>
<name>Niels Thiele</name>
<email>noleu66@posteo.net</email>
</author>
<published>2025-09-15T13:34:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.denounce.ai/sunfish.git/commit/?id=a735f1768677fc996da77b239819c55dcd623f5e'/>
<id>a735f1768677fc996da77b239819c55dcd623f5e</id>
<content type='text'>
* Updated output format to reduce size

* using sum of gpu capacities instead of single max

* passing provisioned GPU cores to host view

* fix supply update trigger

* fixing floating point error, leading to negative demand

* fixing double mismatch, due to floating point in precision

* adding additional check if demand can be satisfied in the simple way

* adds workload invalidation if remaining duration for all resources is 0

* invalidating flow distributors after demand update

* spotless apply

* updating tests

* exporting power consumption of compute resources directly from gpu instead of PSU

* using big decimal to avoid floating point in-precision

* rolls back to pass-through version of PSU, before GPU implementation

* places flowdistributor between PSU and compute resources

* adds check to avoid null exception if supply is pushed without demand

* fixing task id type

* Adds memorizing GPU scheduler

* adds boundary for negative remaining work

* implemented tests for GPU scheduler filter

* Revert "Updated output format to reduce size"

This reverts commit 7171de8e0512a863df4962f64560ac7bad1fb48d.

* spotless aply

---------

Co-authored-by: DanteNiewenhuis &lt;d.niewenhuis@hotmail.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Updated output format to reduce size

* using sum of gpu capacities instead of single max

* passing provisioned GPU cores to host view

* fix supply update trigger

* fixing floating point error, leading to negative demand

* fixing double mismatch, due to floating point in precision

* adding additional check if demand can be satisfied in the simple way

* adds workload invalidation if remaining duration for all resources is 0

* invalidating flow distributors after demand update

* spotless apply

* updating tests

* exporting power consumption of compute resources directly from gpu instead of PSU

* using big decimal to avoid floating point in-precision

* rolls back to pass-through version of PSU, before GPU implementation

* places flowdistributor between PSU and compute resources

* adds check to avoid null exception if supply is pushed without demand

* fixing task id type

* Adds memorizing GPU scheduler

* adds boundary for negative remaining work

* implemented tests for GPU scheduler filter

* Revert "Updated output format to reduce size"

This reverts commit 7171de8e0512a863df4962f64560ac7bad1fb48d.

* spotless aply

---------

Co-authored-by: DanteNiewenhuis &lt;d.niewenhuis@hotmail.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>Updated workload schema (#360)</title>
<updated>2025-07-22T13:47:44+00:00</updated>
<author>
<name>Dante Niewenhuis</name>
<email>d.niewenhuis@hotmail.com</email>
</author>
<published>2025-07-22T13:47:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.denounce.ai/sunfish.git/commit/?id=e22c97dcca7478d6941b78bdf7cd873bc0d23cdc'/>
<id>e22c97dcca7478d6941b78bdf7cd873bc0d23cdc</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Implemented Single GPU Support &amp; outline of host-level allocation policies (#342)</title>
<updated>2025-06-22T10:31:21+00:00</updated>
<author>
<name>Niels Thiele</name>
<email>noleu66@posteo.net</email>
</author>
<published>2025-06-22T10:31:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.denounce.ai/sunfish.git/commit/?id=0203254b709614fa732c114aa25916f61b8b3275'/>
<id>0203254b709614fa732c114aa25916f61b8b3275</id>
<content type='text'>
* renamed performance counter to distinguish different resource types

* added GPU, modelled similar to CPU

* added GPUs to machine model

* list of GPUs instead of single instance

* renamed memory speed to bandwidth

* enabled parsing of GPU resources

* split powermodel into cpu and GPU powermodel

* added gpu parsing tests

* added idea of host level scheduling

* added tests for multi gpu parsing

* renamed powermodel to cpupowermodel

* clarified naming of cpu and gpu components

* added resource type to flow suplier and edge

* added resourcetype

* added GPU components and resource type to fragments

* added GPU to workload and updated resource usage retrieval

* implemented first version of multi resource

* added name to workload

* renamed perfomance counters

* removed commented out code

* removed deprecated comments

* included demand and supply into calculations

* resolving rebase mismatches

* moved resource type from flowedge class to common package

* added available resources to machinees

* cleaner separation if workload is started of simmachine or vm

* Replaced exception with dedicated enum

* Only looping over resources that are actually used

* using hashmaps to handle resourcetype instead of arrays for readability

* fixed condition

* tracking finished workloads per resource type

* removed resource type from flowedge

* made supply and demand distribution resource specific

* added power model for GPU

* removed unused test setup

* removed depracated comments

* removed unused parameter

* added ID for GPU

* added GPUs and GPU performance counters (naively)

* implemented capturing of GPU statistics

* added reminders for future implementations

* renamed properties for better identification

* added capturing GPU statistics

* implemented first tests for GPUs

* unified access to performance counters

* added interface for general compute resource handling

* implemented multi resource support in simmachine

* added individual edge to VM per resource

* extended compute resource interface

* implemented multi-resource support in PSU

* implemented generic retrieval of computeresources

* implemented mult-resource suppport in vm

* made method use more resource specific

* implemented simple GPU tests

* rolled back frquency and demand use

* made naming independent of used resource

* using workloads resources instead of VMs to determine available resource

* implemented determination of used resources in workload

* removed logging statements

* implemented reading from workload

* fixed naming for host-level allocation

* fixed next deadline calculation

* fixed forwarding supply

* reduced memory footprint

* made GPU powermodel nullable

* maded Gpu powermodel configurable in topology

* implemented tests for basic gpu scheduler

* added gpu properties

* implemented weights, filter and simple cpu-gpu scheduler

* spotless apply

* spotless apply pt. 2

* fixed capitalization

* spotless kotlin run

* implemented coloumn export

* todo update

* removed code comments

* Merged PerformanceCounter classes into one &amp; removed interface

* removed GPU  specific powermodel

* Rebase master: kept both versions of TopologyFactories

* renamed CpuPowermodel to resource independent Powermodel

Moved it from Cpu package to power package

* implementated default of getResourceType &amp; removed overrides if possible

* split getResourceType into Consumer and Supplier

* added power as resource type

* reduced supply demand from arrayList to single value

* combining GPUs into one large GPU, until full multi-gpu support

* merged distribution policy enum with corresponding factory

* added comment

* post-rebase fixes

* aligned naming

* Added GPU metrics to task output

* Updates power resource type to uppercase.

Standardizes the `ResourceType.Power` enum to `ResourceType.POWER`
for consistency with other resource types and improved readability.

* Removes deprecated test assertions

Removes commented-out assertions in GPU tests.

These assertions are no longer needed and clutter the test code.

* Renames MaxMinFairnessStrategy to Policy

Renames MaxMinFairnessStrategy to MaxMinFairnessPolicy for
clarity and consistency with naming conventions. This change
affects the factory and distributor to use the updated name.

* applies spotless

* nulls GPUs as it is not used</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* renamed performance counter to distinguish different resource types

* added GPU, modelled similar to CPU

* added GPUs to machine model

* list of GPUs instead of single instance

* renamed memory speed to bandwidth

* enabled parsing of GPU resources

* split powermodel into cpu and GPU powermodel

* added gpu parsing tests

* added idea of host level scheduling

* added tests for multi gpu parsing

* renamed powermodel to cpupowermodel

* clarified naming of cpu and gpu components

* added resource type to flow suplier and edge

* added resourcetype

* added GPU components and resource type to fragments

* added GPU to workload and updated resource usage retrieval

* implemented first version of multi resource

* added name to workload

* renamed perfomance counters

* removed commented out code

* removed deprecated comments

* included demand and supply into calculations

* resolving rebase mismatches

* moved resource type from flowedge class to common package

* added available resources to machinees

* cleaner separation if workload is started of simmachine or vm

* Replaced exception with dedicated enum

* Only looping over resources that are actually used

* using hashmaps to handle resourcetype instead of arrays for readability

* fixed condition

* tracking finished workloads per resource type

* removed resource type from flowedge

* made supply and demand distribution resource specific

* added power model for GPU

* removed unused test setup

* removed depracated comments

* removed unused parameter

* added ID for GPU

* added GPUs and GPU performance counters (naively)

* implemented capturing of GPU statistics

* added reminders for future implementations

* renamed properties for better identification

* added capturing GPU statistics

* implemented first tests for GPUs

* unified access to performance counters

* added interface for general compute resource handling

* implemented multi resource support in simmachine

* added individual edge to VM per resource

* extended compute resource interface

* implemented multi-resource support in PSU

* implemented generic retrieval of computeresources

* implemented mult-resource suppport in vm

* made method use more resource specific

* implemented simple GPU tests

* rolled back frquency and demand use

* made naming independent of used resource

* using workloads resources instead of VMs to determine available resource

* implemented determination of used resources in workload

* removed logging statements

* implemented reading from workload

* fixed naming for host-level allocation

* fixed next deadline calculation

* fixed forwarding supply

* reduced memory footprint

* made GPU powermodel nullable

* maded Gpu powermodel configurable in topology

* implemented tests for basic gpu scheduler

* added gpu properties

* implemented weights, filter and simple cpu-gpu scheduler

* spotless apply

* spotless apply pt. 2

* fixed capitalization

* spotless kotlin run

* implemented coloumn export

* todo update

* removed code comments

* Merged PerformanceCounter classes into one &amp; removed interface

* removed GPU  specific powermodel

* Rebase master: kept both versions of TopologyFactories

* renamed CpuPowermodel to resource independent Powermodel

Moved it from Cpu package to power package

* implementated default of getResourceType &amp; removed overrides if possible

* split getResourceType into Consumer and Supplier

* added power as resource type

* reduced supply demand from arrayList to single value

* combining GPUs into one large GPU, until full multi-gpu support

* merged distribution policy enum with corresponding factory

* added comment

* post-rebase fixes

* aligned naming

* Added GPU metrics to task output

* Updates power resource type to uppercase.

Standardizes the `ResourceType.Power` enum to `ResourceType.POWER`
for consistency with other resource types and improved readability.

* Removes deprecated test assertions

Removes commented-out assertions in GPU tests.

These assertions are no longer needed and clutter the test code.

* Renames MaxMinFairnessStrategy to Policy

Renames MaxMinFairnessStrategy to MaxMinFairnessPolicy for
clarity and consistency with naming conventions. This change
affects the factory and distributor to use the updated name.

* applies spotless

* nulls GPUs as it is not used</pre>
</div>
</content>
</entry>
<entry>
<title>Separate timeshift into an interface and add it to memorizing (#329)</title>
<updated>2025-04-02T15:54:53+00:00</updated>
<author>
<name>Sacheendra Talluri</name>
<email>sacheendra.t@gmail.com</email>
</author>
<published>2025-04-02T15:54:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.denounce.ai/sunfish.git/commit/?id=3a370ece860b0eba25cd1c7a366d767ae458192b'/>
<id>3a370ece860b0eba25cd1c7a366d767ae458192b</id>
<content type='text'>
* Separate timeshift into an interface and add it to memorizing

* Run spotless apply

* Remove random from memorizing sched test

* Record time on task termination

* spotless apply</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Separate timeshift into an interface and add it to memorizing

* Run spotless apply

* Remove random from memorizing sched test

* Record time on task termination

* spotless apply</pre>
</div>
</content>
</entry>
</feed>
