cuPrintf cuda函数

cuPrintf cuda函数,cuda,printf,Cuda,Printf,我想使用cuPrintf函数,我从SDK获得它。在自述文件中,他们写了以下内容 使用cuPrintf软件包包括两个设备功能(即调用 来自CUDA内核)和三个主机函数(即从 在主机应用程序中)。这些都打包在一个单独的 cuPrintf.cu文件,以及包含在单独 cuPrintf.cuh头文件。要在应用程序中使用cuPrintf,请 必须执行以下操作之一: a) 或者:将头文件cuPrintf.cuh包含在 设备代码,并将cuPrintf.cu添加到makefile或build中 命令行,以便文件包

我想使用cuPrintf函数,我从SDK获得它。在自述文件中,他们写了以下内容

使用cuPrintf软件包包括两个设备功能(即调用 来自CUDA内核)和三个主机函数(即从 在主机应用程序中)。这些都打包在一个单独的 cuPrintf.cu文件,以及包含在单独 cuPrintf.cuh头文件。要在应用程序中使用cuPrintf,请 必须执行以下操作之一:

a) 或者:将头文件cuPrintf.cuh包含在 设备代码,并将cuPrintf.cu添加到makefile或build中 命令行,以便文件包含在程序中

b) 或者:直接在设备顶部显示“#include cuPrintf.cu” 代码。在这种情况下,不应将此文件添加到 makefile/build命令,您应该注意只包含它 在你的整个项目中

我尝试了一些方法,但都出现了错误,(致命错误C1083:无法打开include文件:“cuPrintf.cuh”:没有这样的文件或目录)

  • 我将“cuPrintf.cu”放在VB2008的标题文件夹中,然后 包含但给我错误,并将其更改为 但是也不起作用
  • 我将这两个文件都放在项目的扩展名中,并包含它们 在代码中,也给我错误

关于如何修复它的任何建议,我需要将此函数用于我的代码。

我通过以下方式解决了我的错误:

将两个文件“.cu和.cuh”放在项目的同一路径中,并在代码顶部包含“cuPrintf.cu”,并从标题中删除.cu文件


希望这能帮助那些面临同样错误的人

你能编辑你的问题,更具体地说明你在编译过程中收到的错误信息吗?@Talonmes谢谢你的建议,我编辑了它并写下了错误。所以你的问题真的与cuPrintf无关,这基本上是如何配置CUDA VS2008项目以从非标准路径导入头文件?另外,如果可以使用SM 2.0或更高版本,则不需要cuPrintf函数:在SM 2.0或更高版本的设备代码中可以使用内置的printfprintf。NVIDIA内置了它的硬件版本,以便内核可以使用它进行调试等。请参阅C编程指南的B.14节