let size_compare ?(fuzzy=false) sz1 sz2 = 
  let sz2p = size_to_same_unit sz1 sz2
  in
  match sz1,sz2p with
    TB f1, TB f2
  | GB f1, GB f2 
  | MB f1, MB f2 
  | KB f1, KB f2 
  | B  f1, B  f2 -> 
      if fuzzy then 
        Pervasives.compare (floor f1) (floor f2)
      else
        Pervasives.compare f1 f2
  |     _ ,    _ -> raise SizeInvalid