我的开发工作站目前有NVIDIA K2200和K620。两者都有数据自动化系统的计算能力5.0。然而,最终的生产系统有一个特斯拉K80,它的计算能力为3.7。
是否有可能在我的象限图形处理器上安装和开发用于计算能力3.7的数据自动化系统程序,然后将它们转移到K80,而不必进行重大更改?
发布于 2016-05-19 14:10:36
是的,有可能。确保代码中不使用任何计算功能 5.0+特定特性,并且您应该能够在cc3.7设备或cc5.0设备上正确运行代码。
在编译您的代码时,两种计算功能的specify target architectures。
-gencode arch=compute_50,code=sm_50 -gencode arch=compute_37,code=sm_37这样的编译方法在任何一个平台上都应该是可用的,以创建一个可用的二进制文件。此外,以这种方式编译将导致编译器标记可能无意中使用了cc5.0+特定特性的任何情况。
我认为您不太可能无意中使用特定于cc5.0+的特性;它们不会成为通用CUDA用法的一部分。例如,如果您使用 instruction in inline PTX,它将不能在cc3.7设备上工作(使用上面的编译开关,编译器将为您标记这一点)。
https://stackoverflow.com/questions/37325630
复制相似问题