Skip to content

Releases: kecskemeti/dissect-cf

0.9.6 - More elaborate IaaSService, VMSchedulers, DeferredEvents and ResourceConstraints

17 Aug 08:39
Compare
Choose a tag to compare

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

20 Jan 11:34
Compare
Choose a tag to compare

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
  • Now includes minimal documentation. More to come.

The first github release - somewhat stable

14 Mar 08:54
Compare
Choose a tag to compare

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