【发布时间】:2021-11-01 08:26:29
【问题描述】:
我想在没有 GPU 的笔记本电脑上使用 vscode (Ubuntu 21.04) 编写 cuda 内核。是否可以在某处下载所有头文件和源文件,而无需安装完整的 CUDA 工具包?
这样我仍然可以享受一些自动完成功能,但不必安装整个工具包,因为我没有 GPU。
【问题讨论】:
标签: cuda
我想在没有 GPU 的笔记本电脑上使用 vscode (Ubuntu 21.04) 编写 cuda 内核。是否可以在某处下载所有头文件和源文件,而无需安装完整的 CUDA 工具包?
这样我仍然可以享受一些自动完成功能,但不必安装整个工具包,因为我没有 GPU。
【问题讨论】:
标签: cuda
是的,这是可能的。您可以从Nvidia's GitLab repo 下载标头并将路径添加到VSCode project C/C++ settings 中的includePath,方法与添加CUDA Toolkit 安装目录include 的方式相同。
下面是.vscode/c_cpp_properties.json 的Linux 示例,您可以将/usr/local/cuda-11.3/include 替换为您下载的头文件的路径。如果您针对特定设备或架构,则定义例如__CUDA_ARCH__=750(用于 CUDA 计算能力 7.5)将帮助 Intellisense 选择正确的 CUDA 内在函数集,这些函数将在这些设备上可用。
{
"configurations": [
{
"name": "Linux",
"includePath": [
"${workspaceFolder}/**",
"/usr/local/cuda-11.3/include"
],
"defines": ["__CUDA_ARCH__=750"],
"compilerPath": "/usr/bin/g++",
"cStandard": "gnu17",
"cppStandard": "gnu++14",
"intelliSenseMode": "gcc-x64"
}
],
"version": 4
}
使用上面的设置,NVIDIA Nsight extension 应该可以在没有安装 CUDA Toolkit(未测试)的情况下使用 .vscode/settings.json 进行语法突出显示:
{
"files.associations": {
"*.cu": "cuda-cpp",
"*.cuh": "cuda-cpp"
}
}
或者,将您的 CUDA 内核源文件与 .vscode/settings.json 中的 C++ 语法高亮相关联:
{
"files.associations": {
"*.cu": "cpp",
"*.cuh": "cpp"
}
}
【讨论】: