我的思考:
1.核函数的运算量较大,有创建的对象,占用空间很大,有些核函数有if条件语句,需要将核函数的计算量减少。因为一个线程块使用的共享存储器和计算器数量变小,就可以分配更多的线程块(当前程序中每个线程块包含128个线程)
2.更换更好的显卡,就会有更多的cuda core和寄存器等资源,可以计算更多的线程(目前使用的显卡为Geforce RTX3060),若需要更换,可以选择哪些显卡呢?
单卡的话也可以尝试对数据进行分割,多次传入GPU计算。
GeForce RTX 3060 有 3,584 CUDA core,要是追求CUDA core的数量的话可以考虑RTX A40, RTX A6000, GeForce RTX 3080 Ti, GeForce RTX 3090, GeForce RTX 3090 Ti 这5款都有10000+的CUDA core。