针对不同体系结构的不同内核

Dan*_*iel 7 cuda

我想知道是否有一些简单的方法可以为不同的架构提供不同版本的内核.他们是一个简单的方法吗?或唯一的可能性是在独立文件中定义独立内核并要求nvcc编译为每个文件的不同架构?

Jac*_*ern 8

你可以通过编译器指令来做到这一点.就像是

__global__ void kernel(...) {

# if __CUDA_ARCH__ >= 350

    do something

# else

    do something else

# endif

}    
Run Code Online (Sandbox Code Playgroud)