You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用NVCC的arch=native选项时,code参数应如何设置?

解决NVCC中arch=native的使用问题

你的问题出在对native参数的用法理解有误,CUDA 12.6的NVCC里,native不能直接用在-gencode的arch字段,正确的使用方式有两种:

方式一:使用简化的-arch=native选项

这是最便捷的写法,直接指定该选项后,NVCC会自动检测当前机器GPU的算力,生成适配的可执行代码:

nvcc -o myapp -arch=native myapp.cu

方式二:结合-gencode使用code=native

如果一定要用-gencode参数,需将code设为native,同时arch对应使用compute_native(这种写法不如第一种简洁):

nvcc \
    -o myapp \
    -gencode arch=compute_native,code=native \
    myapp.cu

你的命令报错原因

  • 第一个命令-gencode arch=native:-gencode要求同时指定arch和code两个参数,仅写arch=native缺少code字段,因此触发"missing code"错误。
  • 第二个命令-gencode arch=native,code=sm_89:arch字段仅支持compute_XX格式的算力代号,不允许使用native,所以报错"Unsupported gpu architecture 'native'"。

内容的提问来源于stack exchange,提问作者einpoklum

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.16 07:19:53