我了解了CUDA中块和网格的概念,想知道是否有写得很好的帮助函数可以帮助我确定任何给定2D图像的最佳块和网格大小。例如,在this thread中提到的512x512图像中,网格为64x64,块为8x8。然而,有时我的输入图像可能不是2的幂,可能是317x217或类似的尺寸。在这种情况下,网格应该是317x1,块应该是1x217。因此,如果我有一个接受用户图像并使用CUDA处理它的应用程序,如何自动确定块和网格的大小和维度,其中用户可以输入任何大小的图像。是否存在任何已经存在的帮助函数或类来处理这个问题?