| Age | Commit message (Collapse) | Author |
|
during runtime. (#386)
|
|
* Fixed a small bug in the reading of workflows
* small update
* Pushing workload files needed for ExperimentCliTest 3
|
|
|
|
* Updated the memory usage of Tasks. Still in Progress.
* Merged Task and ServiceTask -> 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
|
|
|
|
* Updated the UpDatedConsumer to boolean array
* Updated SimTraceWorkload to not invalidate when the next fragment is started.
* Removed as much invalidates as possible
|
|
* Small update to the FLowDistributor
|
|
faster. (#375)
|
|
Updated FilterScheduler.kt for performance using a constantly sorted Array
|
|
* Updated the flowDistributor to use arrays instead of maps to improve performance.
* Small cleanup
|
|
FilterScheduler.kt (#372)
|
|
* Updated FilterScheduler for performance
|
|
* Updated the multi-resource system from maps to arrays for performance.
|
|
* Updated the workflow system for performance. Added workflow specific tests.
|
|
* 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 <d.niewenhuis@hotmail.com>
|
|
|
|
|
|
* Implemented Workflows for OpenDC
|
|
|
|
|
|
|
|
(#342)
* 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 & 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 & 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
|
|
(#347)
|
|
|
|
|
|
* Removing site from master branch
* Updated README.md
|
|
* Updated website documentation
* Updated some documentation and fixed links
* small updates
* small updates
|
|
|
|
|
|
* 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
|
|
* Fixed a small problem with carbon forecasts that would cause problems when the simulation would leave the coverage of the carbon Trace
* Fixed a small problem with carbon forecasts that would cause problems when the simulation would leave the coverage of the carbon Trace
* Fixed a bug
* spotless applied
|
|
* Remove task from scheduler bookkeeping after failure
* Support carbon forecasting in timeshift
* Register scheduler and carbonmodel in context
* Preliminary working task stopping; carbon intensity bug
* Working carbon based stop. Two timeshift thresholds
* Add a pause state task and guest
* Move task stopper to allocation spec
* Start tracking num pauses
|
|
|
|
|
|
* Move shifted task execution to the valley of carbon emissions
* Remove error from compute service
* spotless apply
* Run scheduling cycle everytime carbon intensity updates
|
|
|
|
|
|
* Renamed SimChainWorkload.java to VirtualMachine.java
* Renamed SimChainWorkload.java to VirtualMachine.java
* Renamed SimChainWorkload.java to VirtualMachine.java
* Renamed SimChainWorkload.java to VirtualMachine.java
* Renamed SimChainWorkload.java to VirtualMachine.java
|
|
* Start time shifting
* Existing experiments work with new columns
* Remove unused traces dir
* Update java to 21 LTS and jacoco to be compatible
* Minimal working timeshifting
* Timeshift scheduler linked as carbon receiver
* Add basic tests for timeshift scheduler
* Run spotless apply
* Modify tarce format tests to support new fields
* Change all mentions of java 19 to 21
* Add a deferAll option to workload to make all tasks deferrable
* Run spotless apply
* Copy traces from resources in web dockerfile
|
|
|
|
|
|
* Separated `Time` unit into `TimeDelta` and `TimeStamp` + small fixes
Addition and subtruction between `Timestamp`s is not allowed, but any
other `Unit` operation/comparison is. `TimeDelta`s can be
added/subtructed to/form `Timestamp`s.
Deserialization of `Timestamp`:
- `Number` -> interpreted as millis from Epoch
- `Instant` (string representation) -> converted to Timestamp
- `Duration` (string representation) -> interpreted as duration since
Epoch (warn msg is logged)
Deserialization of `TimeDelta` is the same as `Time` was before, with the
diference that when an `Instant` is converted to an timedelta since Epoch
a warning message is logged.
* Unit System v2
- Merged `BoundedPercentage` and `UnboundedPercentage`
- Overrided all operation defined in `Unit` in all subclasses to avoid
as much as possible value classes being boxed in bytecode. If units are used as generics
(hence also functions defined in Unit<T>) they are boxed (as double would if used as generic).
- All units companions now subclass `UnitId`, and can be used as keys
(e.g `Map<UnitId, idk>`), while offering `max` `min` and `zero`
methods.
- Division between the same unit now returns `Percentage`
- Added `Iterable<T>.averageOfUnitOrNull(selector (T) -> <specific unit>)`
- `ifNeg0ThenPos0()` now is optional and not invoked on every
constructor
- Now methods in `Unit<T>` are all abstract, forcing override and avoid
boxing in some cases
- Added `@UnintendedOperation` and `UnitOperationException` for methods
that must be defined but are not intended for use (e.g. `Timestamp` +
`Timestamp`)
|
|
* Fixed memorizing scheduler with correct last elem check
* Fix spotless complaints
|
|
|
|
* some updates
* Updates
* Added comments and renamed variables
* Ran Spotless
|
|
|
|
* Added the option to select which files to export.
* Updated documentation
|
|
|
|
|
|
github (#302)
|