我安装了: cuda sdk 4.2 64, cuda toolkit 4.2 64, cuda devdriver 4.2 64,
我检查了\ windows中的每个nvcuda.dll - 所有这些都是4.2版本,但是当我用驱动程序api创建一个上下文并用cuCtxGetApiVersion检查它时 - 它显示我“3010”
我真的不关心那个版本,但是当我尝试使用带有该上下文的运行时api(需要混合它们)时 - 它显示错误49(cudaErrorIncompatibleDriverContext)
任何想法,正在发生的事情以及如何使它协同工作?
似乎不是Windows的一些问题 - 在linux下运行相同的项目导致相同的3010 api版本
答案 0 :(得分:0)
我解决了这个问题 - 我在执行过程中直接导出了“cuCtxCreate”函数(这是其他语言 - 没有cuda.h)。在查看原始cuda.h之后,我发现它根据某种smartass定义定义了该函数的其他名称。 而新功能“cuCtxCreate_v2”创造了一个良好的背景。
/捂脸