Releases: kecskemeti/dissect-cf
Releases · kecskemeti/dissect-cf
0.9.6 - More elaborate IaaSService, VMSchedulers, DeferredEvents and ResourceConstraints
0.9.6 - More elaborate IaaSService, VMSchedulers, DeferredEvents and ResourceConstraints
Pre-release
Pre-release
The third github release of the DISSECT-CF simulator
List of changes since 0.9.5:
Major changes:
- IaaSService improvements:
- Initial implementation of IaaS energy meter as an aggregation of PM meters.
- VM request termination possibility (allows a VM without a resource allocation to be dropped from the VM scheduler's queue)
- VM listing now includes VMs that are only queued but not yet deployed on the system
- Major overhaul of VM schedulers
- Introduction of PM Iterators
- Allowing simplified implementations (by allowing to take more code from FirstFit)
- Minimally improving scheduling performance
- Introduction of RandomScheduler
- When a schedule is done one can now report how much resources need to be freed up in order to fulfill the next queued item
- In some heavily queued situations this approach improves performance significantly
- The first fit scheduler implementation now calculates this value to demonstrate this behavior
- Introduction of the direct consumer in Physical Machines
- Allows the simulation of VMM related operations
- Provides better simulation of boot and shutdown procedures
- Resource constraints are not constant anymore
- introduction of Alterable/Constant and Constraint propagators
- It is now more apparent if a constraint cannot change
- DeferredEvents are now handled in batches
- Improves performance for unrelated but simultaneous deferred events
- Improves performance of serial unsubscrptions done by releasing resource allocations by the VM Schedulers
- Introduction of the StateDependentEventHandler
- A new (time-independent) event handling mechanism
- useful for PM/VM state change monitoring etc.
Minor changes:
- Repositories now allow storing from/to memory instead of only from/to other repositories
- Allows better simulation of initial data deposits
- Introduction of the MultiPMController
- if the VM queue suddenly becomes crowded, then this controller switches on many machines
- Bug fixes:
- In some cases influence groups were created improperly causing exceptions in Timed (see the ResourceSpreadingTest.groupManagement() test case).
- Class cast exception was thrown during resource consumption registration if the consumer was not a VirtualMachine but the producer was a PhysicalMachine. (see the more elaborate PhysicalMachine.isAcceptableConsumption function)
- PM Switchoff handling (removing unnecessary delays caused by not yet dropped but finished resource consumptions)
- The skipEventsTill function works correctly for 0 frequency events as well as for time jumps that would lead to the past
- Floating point handling issues could lead the MaxMinFairSpreader to raise an IllegalStateException in the ResourceConsumption's realLimit handling procedures.
- During the dependency group management references to some no longer used resource spreaders were unnecessarily held (causing some memory leakage)
- Resource Allocations are now released even if the VM implementation does not do the release.
- Several unnecessary references were kept to all VMs, these were dropped to reduce the memory pressure of the system.
- The base VM scheduler was calling its subclasses for scheduling on every PM's addition despite there was no queued VM.
- Improved readme for new users
- Improved test coverage
New dependencies:
- trove (for efficient arrays and maps with primitive types)
- apache-commons-lang (for simple Array management)
0.9.5: focused on under provisioning and energy metering
The second github release of the DISSECT-CF simulator.
List of changes since 0.9.4:
Major changes:
- Improved EnergyMetering behaviour (better handling of metering start stop events, aggregated and indirect metering possibilities)
- Allowing the user of the simulator to use arbitrary length of time for time base (we are no longer using ms as the fixed base)
- Support for under provisioned VMs by introducing processing power independent resource constraints
Minor changes:
- Improved VM request queueing mechanisms to allow better VM schedulers
- Improved VM-PM scheduler interfacing
- New RoundRobin VM scheduler
- Performance optimizations
- Including optimizations from @scsaba01
- Now includes minimal documentation. More to come.
The first github release - somewhat stable
Features:
- Basic IaaS functionalities
- VM and PM scheduling constructs and minimal working examples
- Resource sharing modeling (for network, disk and CPU with Max Min fairshare)
- Modelling of Physical and Virtual Machine interactions
- Complex VM state modelling
- Resource level power metering capabilities to allow complex consumption analysis
- Multi cloud simulation