1. 13 Jul, 2011 15 commits
  2. 01 Jul, 2011 1 commit
    • Iustin Pop's avatar
      One Haskell and integer sizes fix · 7034694d
      Iustin Pop authored
      
      
      Haskell has two main integer types:
      
      - Int, which is a native-type, and is guaranteed to have at least
        [-2²⁹, 2²⁹-1] range; on 64-bit platforms, it has much higher range
      - Integer, which is a software type (implemented using libgmp), and
        thus unbounded
      
      For performance reasons, the node/instance properties use Int for
      their attributes (and Double for some, but that's another story). This
      is all fine and doesn't cause problems. However, the CStats type which
      holds the overall cluster resources starts to fail when we analyse
      clusters with more than around 400 nodes and big memory/disk sizes on
      32 bit platforms.
      
      The simple fix would be to restrict cluster sizes, but that's no
      nice. I've benchmarked and changing to Integer doesn't show a visible
      slowdown on 64-bit platforms (as far as I can read on the internets,
      GHC knows to optimise Integer and only use software types when the
      values are large enough), and it also fixes the 32-bit problem. So
      this patch changes the CStats types to Integer, except for the
      instance count (which I don't expect to overflow 2²⁹ anytime soon).
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarGuido Trotter <ultrotter@google.com>
      7034694d
  3. 28 Jun, 2011 11 commits
  4. 17 Jun, 2011 5 commits
  5. 01 Jun, 2011 4 commits
  6. 31 May, 2011 2 commits
  7. 24 May, 2011 2 commits