Skip to content
Snippets Groups Projects
  1. Jul 14, 2009
    • Iustin Pop's avatar
      Add support for luxi backend in CLI/hspace/hbal · 8e445e6d
      Iustin Pop authored
      This patch changes the backend selection method in CLI to prefer, in order:
        - a RAPI specification
        - a Luxi specification
        - and finally the node/instance files
      
      It also modifies hspace and hbal to provide a ‘-L’ command line option
      for enabling Luxi.
      8e445e6d
  2. Jul 09, 2009
    • Iustin Pop's avatar
      hspace: fix failure handling of tryAlloc results · 31e7ac17
      Iustin Pop authored
      Currently hspace doesn't handle failures from tryAlloc correctly; this
      patch changes the iterateDepth function in hspace to return a Result (…)
      so that errors can be propagated correctly.
      
      The patch also changes one output key to be more clear and a typo in
      Cluster.hs
      31e7ac17
    • Iustin Pop's avatar
      Change the tryAlloc/tryReloc workflow · 478df686
      Iustin Pop authored
      Currently, the tryAlloc and tryReloc function return a list with all the
      results, both failures and successes. This is fine for hail, which does
      one round of allocations, but is not so good for hspace, which does
      iterative rounds; since at each (successful) step we only take the best
      solution, it means that we're using lots of heap space to compute and
      store node lists which are thrown away at the end of the step.
      
      This patch changes these two functions and their callers in hail/hspace
      to only return the best solution, and error/success counters. This
      allows hspace to run in a much smaller space, and reduces GC cost
      greatly.
      
      Overall, it is a cleanup, as hail/hspace did a lot of work to chose this
      best solution, whereas now it's automatically promoted within
      Cluster.concatAllocs.
      478df686
  3. Jul 08, 2009
    • Iustin Pop's avatar
      Slight change to the internal allocation results · 8880d889
      Iustin Pop authored
      Currently the Cluster.AllocSolution type is defined as a list of
      ‘(OpResult Node.list, …)’ and the results for applyMove are defined as
      ‘(OpResult Node.List, …)’. Both these means that the failure/success
      indication is hidden in the first elements of this tuple, which makes is
      harder to add other elements depending on the success/failure (like the
      score for the new node list).
      
      This patch moves the OpResult to outside of the tuple, in effect making
      all these ‘OpResult (…)’ which makes the internal tuple elements
      consistent. The patch is affecting the applyMove, tryAlloc and
      tryRealloc functions, and only briefly the hail and hspace programs.
      8880d889
    • Iustin Pop's avatar
      hspace: switch output to shell-script format · 2bbf77cc
      Iustin Pop authored
      This (big) patch changes the output of hspace from text-format
      (separated by ‘: ’) to a shell-snippet, in ‘key=value’ format.
      
      This will allow sourcing the output or parsing it via awk/sed/etc.
      2bbf77cc
    • Iustin Pop's avatar
      hspace: move instance count and score into CStats · de4ac2c2
      Iustin Pop authored
      Currently the instance count and cluster score are separated from the
      other initial/final phase stats, even though they are very similar. This
      patch moves computation of these two into totalResources/CStats and
      removes special printing in hspace.
      de4ac2c2
  4. Jul 07, 2009
  5. Jul 06, 2009
    • Iustin Pop's avatar
      Fix hlint-generated warnings · 9f6dcdea
      Iustin Pop authored
      This big patch cleans up the code per hlint indications. Many removals
      of extra parentheses, replacements of concat . map with concabtMap,
      extra dollar signs, eta reductions, etc. were performed.
      
      The code still compiles and passes a couple of manual tests on sample
      files. The individual changes are also small enough as to be visually
      easy to confirm.
      9f6dcdea
  6. Jul 05, 2009
    • Iustin Pop's avatar
      Add computation of the failure reason in hspace · 44763b51
      Iustin Pop authored
      This patch enhances hspace to report why the allocation sequence
      stopped, both in absolute error count and for the top reason.
      44763b51
    • Iustin Pop's avatar
      Introduce a new type for allocation results · f2280553
      Iustin Pop authored
      Currently the allocation/move operations workflow return ‘Maybe a’,
      which is very convenient but loses all details about the failure mode.
      
      This patch introduces a new data type which encodes the specific failure
      mode. It is not yet used correctly (e.g. all node operations result in
      FailN1), but the workflow is updated. Most of the changes are in the
      hail/hspace tools, the library code required only trivial adjustments.
      f2280553
  7. Jul 03, 2009
  8. Jul 02, 2009
    • Iustin Pop's avatar
      Add a new type for cluster statistics · 1a7eff0e
      Iustin Pop authored
      Currently totalResources returns a 5-tuple of integers. This is not easy
      to handle, as each change on the return type means that each caller must
      be updated.
      
      This patch adds a new type for cluster stats and uses that instead as
      its return type. This simplifies its callers while complicating only a
      little the computation of the stats.
      1a7eff0e
    • Iustin Pop's avatar
      Enhance hspace resource display · 621de5b7
      Iustin Pop authored
      The display of cluster resources is extracted into a separate function
      and enhanced to display more stats.
      621de5b7
    • Iustin Pop's avatar
      Add display of more stats in hspace · e2af3156
      Iustin Pop authored
      This patch changes Cluster.totalResources to compute more details about
      the cluster status, and enhances hspace to display more of these.
      e2af3156
  9. Jun 12, 2009
  10. Jun 11, 2009
    • Iustin Pop's avatar
      Fix 'unused X' warnings · c6484f0b
      Iustin Pop authored
      This removes some unused functions and imports to cleanup the warnings.
      c6484f0b
    • Iustin Pop's avatar
      Fix the various monomorphism warning · 78694255
      Iustin Pop authored
      In a few places (e.g. tryRead or any printf call) it's a little bit hard
      to add the correct type signatures, but in the it is possible to fix
      these warnings (which can bite one in subtle cases).
      78694255
  11. Jun 10, 2009
  12. Jun 01, 2009
    • Iustin Pop's avatar
      Fix hspace with plain type instances · 9abe9caf
      Iustin Pop authored
      This also fixes other required node numbers.
      9abe9caf
    • Iustin Pop's avatar
      Rework the tryAlloc/tryReloc functions · 9dcec001
      Iustin Pop authored
      Currently tryAlloc/tryReloc do not return the new instance, as this is
      not needed for IAllocator alloc/reloc requests. However, for computing
      the space, the new instance is useful, so we modify these functions to
      return this information too.
      
      The patch also improves hspace to have (with default parameters) a
      parseable output.
      9dcec001
    • Iustin Pop's avatar
      Initial add of the hspace tool · e10be8f2
      Iustin Pop authored
      This is a tool that checks how many instances (of same size, specified
      by command line arguments) can be added to a cluster while remaining N+1
      compliant.
      e10be8f2
Loading