Limitations:

1) All CPUs should have the same number of cores.
   Other configurations will not adapt properly.
2) LSB methods can run for up to 8 sockets
   due to implementing up to 8-way range partition.
3) MSB methods must use exactly 64 threads
   due to implementing only 64-way range partition.
4) MSB methods need a large fudge factor or a small
   block, otherwise the algorithm will be unable to
   distribute blocks across NUMA regions correctly.
5) MSB methods are implemented to run on full
   32-bit data while LSB methods can skip bits.
6) Zipfian distributions are implemented for
   32 bit data only and not for 64-bit data.
