admin管理员组

文章数量:1663034

最近在学习CUDA,看着CUDA C教程 使用nvcc进行编译文件出现这个问题。

运行代码:

nvcc -arch sm_20 cudatest.cu -o hello

错误:

nvcc fatal   : Value 'sm_20' is not defined for option 'gpu-architecture'

解决:

教程使用的架构较老。我使用的是4090,计算能力最高可以写89就行了
具体看这,自己查一下:https://developer.nvidia/cuda-gpus

改为:

nvcc -arch sm_86 cudatest.cu -o hello

或者 不写:

nvcc cudatest.cu -o hello

补充:

这行代码是用来编译一个名为 cudatest.cu 的 CUDA 源文件的命令。

nvcc 是 NVIDIA CUDA 编译器的名称,它负责将 CUDA 代码编译成可在 GPU 上运行的程序。

-arch sm_86 参数指定了目标架构,即代码将在支持 sm_86 计算能力的 GPU 上运行。

-o hello 参数指定了输出文件的名称,即编译后生成的可执行文件将被命名为 hello。

本文标签: 错误FATALnvccdefinedArchitecture