我正在编写分子动力学模拟,一些内核将使用 CUDA 计算。我使用一些 c++11 特性从一个普通的 CPU 实现开始我的代码。现在我必须添加一些 CUDA 代码,我必须使用不支持 c++11 功能的编译器(gcc <= 4.6)。
在我的 makefile 中,我分别从所有 cpp 文件创建对象,最后将它们全部链接在一起。此外,我的代码以这样一种方式进行拆分,即可以使用“现代”编译器编译没有 CUDA 的部分,而使用较旧的编译器编译其余部分(使用 CUDA)。
我现在的问题是,这是否可以,或者我是否会/可能会遇到这种方式的问题?