1. 10 Apr, 2015 2 commits
  2. 26 Mar, 2015 1 commit
  3. 04 Mar, 2015 2 commits
  4. 03 Mar, 2015 3 commits
  5. 16 Feb, 2015 1 commit
  6. 12 Feb, 2015 2 commits
  7. 06 Feb, 2015 1 commit
  8. 22 Jan, 2015 1 commit
  9. 01 Dec, 2014 1 commit
  10. 05 Oct, 2014 1 commit
  11. 25 Sep, 2014 1 commit
  12. 12 Sep, 2014 1 commit
  13. 10 Jul, 2014 1 commit
  14. 07 Jul, 2014 2 commits
  15. 04 Jul, 2014 1 commit
  16. 26 Jun, 2014 1 commit
  17. 25 Jun, 2014 6 commits
  18. 16 Jun, 2014 2 commits
  19. 26 May, 2014 4 commits
    • Klaus Aehlig's avatar
      Use more efficient statistics for the standard deviation · b3aa93a2
      Klaus Aehlig authored
      Instead of using the full sample as statistics providing
      enough information to compute the standard deviation, use
      a slightly more elaborate one. It contains the standard
      statistics count, sum, and sum of squares, which can also
      very easily be updated. However, computing the standard
      deviation from these values unfortunately is not precise
      enough for our purpose (small difference of large values).
      Therefore, we also carry the naively computed variance in
      the statistics. The latter can also be updated using the
      standard statistics and, moreover, this can be done in a
      way that does not introduce too large inaccuracies for a
      small number of updates.
      Signed-off-by: default avatarKlaus Aehlig <aehlig@google.com>
      Reviewed-by: default avatarPetr Pudlak <pudlak@google.com>
    • Klaus Aehlig's avatar
      Use statistics updates when allocating on pairs · c5da4cf1
      Klaus Aehlig authored
      When considering the various ways of positioning an instance
      on a pair of nodes, make use of the fact that the statistics
      are extremely similar (only two nodes changed) and obtain the
      new statistics by updating the old one, rather than by recomputing
      it from scratch.
      Signed-off-by: default avatarKlaus Aehlig <aehlig@google.com>
      Reviewed-by: default avatarPetr Pudlak <pudlak@google.com>
    • Klaus Aehlig's avatar
      Factor score computation through abstract statistics · f66ae90a
      Klaus Aehlig authored
      Logically separate the computation of the cluster score into
      two steps: the computation of the abstract statistics and its
      evaluation. In this way, we obtain an abstract value which we
      can update instead of recomputing it when considering different
      instance placements.
      Signed-off-by: default avatarKlaus Aehlig <aehlig@google.com>
      Reviewed-by: default avatarPetr Pudlak <pudlak@google.com>
    • Klaus Aehlig's avatar
      Add data type for abstract statistics · 394a5cb9
      Klaus Aehlig authored
      Our cluster score is a weighted sum of certain sums and
      standard deviations of node characteristics. When placing
      a single instance, the cluster score of a big number of
      quite similar clusters are computed: that of the original
      cluster with one instance added, for each possible placement.
      To speed up these computations, add an abstract type of
      statistics that allows a potentially more efficient update
      of a single value.
      Signed-off-by: default avatarKlaus Aehlig <aehlig@google.com>
      Reviewed-by: default avatarPetr Pudlak <pudlak@google.com>
  20. 23 May, 2014 1 commit
    • Dimitris Aragiorgis's avatar
      Fix QueryNetworks wrt instances · 96092119
      Dimitris Aragiorgis authored
      QueryNetworks tries to find which instances are connected to which
      networks. The query mechanism in Haskell was written back when NICs
      referred to a network via its name and not its UUID. Fix luxi to
      comply with the current implementation (network slot of NIC object
      is a UUID).
      Fix old style query mechanism to return a list of names instead of
      UUIDs for the instances that are connected to a network.
      Signed-off-by: default avatarDimitris Aragiorgis <dimara@grnet.gr>
      Reviewed-by: default avatarHelga Velroyen <helgav@google.com>
  21. 22 May, 2014 1 commit
    • Klaus Aehlig's avatar
      tiered allocation: try canonical search path first · a37549ea
      Klaus Aehlig authored
      In tiered allocation, instances are put on the cluster, while they
      fit---and once no more instances of the given size can be fit, smaller
      instances are tried next. There is obviously some heuristics involved
      in how to shrink the instance to get a smaller one of suitable
      size. The standard heuristics is to shrink on the resource that
      prevents to most placements. This, however, can lead into missing out
      possible smaller instances, as noted in issue 483. The way to avoid
      this trap was to consider all shrinkings of a single resource to see
      if this leads to new solutions. This patch now changes the order of
      the search: use this single resource look-ahead only if the standard
      heuristics does not yield any progress. While this does not change the
      complexity of the underlying algorithm, it improves search time
      significantly for those cases where the standard heuristics works,
      which should cover a good part of the practically relevant cases.
      Signed-off-by: default avatarKlaus Aehlig <aehlig@google.com>
      Reviewed-by: default avatarHelga Velroyen <helgav@google.com>
  22. 20 May, 2014 2 commits
  23. 19 May, 2014 1 commit
  24. 16 May, 2014 1 commit