On Mon, Dec 08, 2014 at 09:43:41PM +0100, Klaus Aehlig wrote:
> On Mon, Dec 01, 2014 at 02:52:43PM +0100, 'Aaron Karper' via ganeti-devel 
> wrote:
> > Specifically it gives a better high-level overview of what is happening
> > and what functions are the core.
> > 
> > Signed-off-by: Aaron Karper <[email protected]>
> > ---
> >  src/Ganeti/HTools/Cluster.hs | 6 ++++++
> >  1 file changed, 6 insertions(+)
> > 
> > diff --git a/src/Ganeti/HTools/Cluster.hs b/src/Ganeti/HTools/Cluster.hs
> > index 368c43f..310400a 100644
> > --- a/src/Ganeti/HTools/Cluster.hs
> > +++ b/src/Ganeti/HTools/Cluster.hs
> > @@ -3,6 +3,12 @@
> >  This module holds all pure cluster-logic; I\/O related functionality
> >  goes into the /Main/ module for the individual binaries.
> >  
> > +The purpose is to minimize the Score of a cluster, which is a measure of 
> > the
> > +imbalance of the nodes (see 'compDetailedCV' and 'compClusterStatistics'). 
> > The
> > +optimization searches the space of possible moves and requires each move to
> > +improve the score. Since the function optimized is convex, we use
> 
> Which notion of convex are you using? Or, more precisely, over which domain 
> are
> you considering convexnes? We're trying to find an optimal assignment from 
> instances
> to (pairs of) nodes which is a discrete set of mappings where I don't see an 
> obvious
> vector space structure over the rationals.
> 

We're moving in a subset of R^n and in the space the function is convex
(or not, see next section).  In this context it is to justify the greedy
algorithm, that while it doesn't guarantee an optimal solution, it gives
a good one (local minimum).

> Note that you cannot take the space of node resources as a high-dimensional 
> vector
> space over the reals, as the cluster metrics has various counting aspects to 
> it
> (like "number of N+1 violations") that are not a function of the free and used
> resources (as it also depends on peer-relation induced by the instances.
> 
> 

At least the extension wouldn't be convex anymore. What would be a good
description of the function be and would they be useful? I figure
super-modular in the nodes and optimizing the function value over the
partition would be a good description, but wouldn't help at all. So just
drop this sentence? Or replace it with the actual criteria?

> > +hill-climbing (downhill). This doesn't necessarily give the optimal 
> > solution,
> > +but it is reasonably good.
> >  -}
> >  
> >  {-
> > -- 
> > 2.2.0.rc0.207.ga3a616c
> > 
> 
> -- 
> Klaus Aehlig
> Google Germany GmbH, Dienerstr. 12, 80331 Muenchen
> Registergericht und -nummer: Hamburg, HRB 86891
> Sitz der Gesellschaft: Hamburg
> Geschaeftsfuehrer: Graham Law, Christine Elizabeth Flores

-- 
Google Germany GmbH
Dienerstr. 12
80331 München

Registergericht und -nummer: Hamburg, HRB 86891
Sitz der Gesellschaft: Hamburg
Geschäftsführer: Graham Law, Christine Elizabeth Flores

Reply via email to