Scalable Lattice Boltzmann Solvers for CUDA GPU Clusters