josin/cloud_gunther — Issue #7: models/tasks.rb re-write
Author: vondrt4
Created: 2012-01-19 10:02:51+00:00
State: open
Labels: Improvement

Currently, we are launching exactly as many instances as instances_count, which would be good for parallel computing, but if some don't start, nothing is done about it.

In version 2, we need a machine_count variable, which will be the number of launched instances, while instances_count will be the number of _problem_ instances. This will enable pseudoparallel computations.
The scheduler could also periodically check if there are free resources, as to maximize the number of running instances.
(task.maximize attribute, or machine_count=0)

A true parallel mode will be added where instances_count = machine_count, system will wait until exactly that many instances are running (with the possibility of re-launching failed instances) before starting algorithm.
(task.parallel attribute, or default if machine_count>0)

Version 3 will add better scheduling methods and multi-user load balancing. It will track estimated queue length and offer transfer to other cloud engines if it is too long.