nvcc命令选项:

选项命令有长名和短名,通常我们使用是用短名,长名主要用于描述。

1.指定编译阶段

主要指定编译的阶段以及要编译的输入文件。

-cuda  -cubin  -fatbin  -ptx  -gpu  -E

-c :最常使用,编译每个.c/.cc/.cpp/.cxx/.cu输入文件为object文件

-dc  -dw  -dlink  -link

-lib :编译所有的输入文件为object文件,并且把结果添加到指定的library输出文件

-run

2.文件和路径配置

-o :指定输出文件的位置和名称

-include  :指定预处理和编译时预先需要包含的头文件

-l  :指定链接时需要的库文件

-D :指定预处理和编译时需要的宏

-U  :取消宏定义

-I :指定包含文件的搜索路径

-isystem :指定系统包含的引用文件的搜索路径

-L :指定库文件的搜索路径

-odir :指定输出文件的目录

-ccbin :指定host编译器所在路径

-cudart :指定CUDA runtime library使用类型(none,shared,static),默认为static

-ldir  :指定包含libdevice库文件目录

3.指定编译器、连接器的行为

-pg

-g  :产生可调式代码,调试模式下必须的

-G  :产生可调式的设备代码

-lineinfo :为设备代码产生行number信息

-O  :产生优化代码 ,包括O0,O1,O2,O3,用于产生不同的指令集

-ftemplate-backtrace-limit  -shared  -x  -std  -nohdinitlist  -nohdmoveforward  -expt-relaxed-constexpr

-m  :指定平台结构32 vs 64

4.编译工具内部选项

-Xcompiler  -Xlinker  -Xarchive  -Xptxas  -Xnvlink

-Xptxas -v:显示代码生成的统计结果

-Xptxas -dlcm=cg:关闭L1cache

-Xptxas -dlcm=ca:将L1cache增加到48KB(默认为16KB,和shared memory一共64KB)

5.编译驱动引导选项

-noprof  -dryrun

-v  :列出nvcc产生的编译命令,不影响其执行

-keep  :保留各步骤产生的中间文件,用于调试

-keep-dir  -save-temps

-clean  :逆转nvcc的行为

-run-args  -idp  -ddp  -dp  -MT  -nodlink

6.CUDA编译方式选项

-default-stream

7.驾驭GPU代码生成选项

-arch :指定GPU架构

-code  -gencode  -rdc  -e

-maxrregcount  :指定GPU函数可使用的最大寄存器数量

-use_fast_math  -ftz  -prec-div  -prec-sqrt  -fmad

8.ptxas选项

-allow-expensive-optimizations  -c  -dlcm  -dscm  -g  -disable-optimizer-consts  -e  -fmad  -flcm  -fscm  -lineinfo  -arch  -h  -m  -maxrregcount  -O  -optf  -o  -preserve-relocs  -sp-bound-check  -v  -V  -Werror  -warn-double-usage  -warn-spills

nvcc编译器选项及配置的更多相关文章

  1. C# 编译器选项 /platform(指定输出平台)32位程序运行到x64平台的问题

    如果说你编译的exe运行时报错: “尝试读取或写入受保护的内存.这通常指示其他内存已损坏” 这很有可能是你是以非托管的方式错误地引用了64位的API中去. 为什么会这样? 那你就要考虑VS的编译器选项 ...

  2. makefile中一些编译器选项

    Libraries Static Libraries a collection of ordinary object files (目标文件的集合) loaded at program link ti ...

  3. eclipse中没有server选项无法配置Tomcat

    eclipse集成Tomcat: 打开eclipse - 窗口 - 首选项 - 服务器 - 运行时环境 找到Tomcat然后添加. eclipse添加插件: 开发WEB项目时要集成Tomcat可以并不 ...

  4. Visual Studio C/C++ 编译器选项

    优化- /O1 最小化空间                          /O2 最大化速度/Ob<n> 内联扩展(默认 n=0)               /Od 禁用优化(默认) ...

  5. VC++ 19 (VS2015) 编译器系统环境变量配置

    Visual C++的cl.exe编译器是微软推出的编译器,干什么的怎么用也不赘述了.大多数情况都是直接在Visual Studio里写代码然后点击"播放"按钮让Visual St ...

  6. Windows 编译器选项 Runtime Library

    https://msdn.microsoft.com/library/2kzt1wy3%28v=vs.100%29.aspx http://blog.csdn.net/ybxuwei/article/ ...

  7. NVCC编译器

    http://blog.csdn.net/bendanban/article/details/8518382 mark一下 几个方案可以用: 方案1: 将所有文件分别编译,最后统一合并! 对于C程序 ...

  8. Linux中安装C++编译器codeBlock,并配置opencv链接库

    1.Linux中安装codeBlock https://blog.csdn.net/xinyunyishui/article/details/50967395 2.CodeBlock中的中文显示不完全 ...

  9. BT5 set_config各个选项的配置

    最近研究了一下bt5的社会工程学工具SET,本来国内的bt5的资料就很少了,详细分析SET的资料就更少了,在各大网站找了找,都不靠谱,还是得自力更生啊,我在这里就把自己的过程写下来,希望对大家有点帮助 ...

随机推荐

  1. Dubbo源码学习文章目录

    目录 Dubbo源码学习--服务是如何发布的 Dubbo源码学习--服务是如何引用的 Dubbo源码学习--注册中心分析 Dubbo源码学习--集群负载均衡算法的实现

  2. Array数组常用的5个方法

    es6 时代来临了,不知道es5 你熟知了吗? 在此介绍一个我常用到的5个方法,万恶的ie9一下并不支持,需要做兼容慎用 indexOf indexOf()方法返回在该数组中第一个找到的元素位置,如果 ...

  3. (@WhiteTaken)设计模式学习——工厂方法模式

    这个工厂方法模式,是简单工厂的延伸,不同点在于,将某个具体的类继续细分,将核心部分抽象成一个接口.而简单工厂,把核心写在了一个类上,不利于拓展. 举个例子,简单工厂中有苹果类,香蕉类,我们创建了一个F ...

  4. Tooltip浮动提示框效果(掌握里面的小知识)

    使用原生JavaScript设计和实现Tooltip浮动提示框特效,了解代码简化.事件绑定.事件冒泡等技巧和知识. 特效四个关键点:显示:鼠标移到ToolTip超链接上时,ToolTip提示框可以显示 ...

  5. OVS VxLAN Flow 分析 - 每天5分钟玩转 OpenStack(149)

    OVS 的数据流向都是由 Flow 规则控制的,今天我们就来分析 VxLAN 的 Flow 规则.提个醒:这可能是本教程最烧脑的一节,let's rock it ! 下面分析控制节点上的 flow r ...

  6. Tried to obtain the web lock from a thread other than the main thread or the web thread. This may be

    有些操作只能回到主线程操作 比如: mbprogresshud只能在主线程中使用 而且注意凡是关于布局的代码也只能下载主线程

  7. salesforce 零基础学习(六十六)VF页面应善于使用变量和函数(二)常用函数的使用

    上一篇介绍VF中常用的变量,此篇主要内容为VF页面可以直接使用的函数,主要包括Date相关函数,Text相关函数,Information相关函数以及logic相关函数,其他相关函数,比如math相关函 ...

  8. iOS中的三大定时器

    iOS开发中定时器经常会用到,iOS中常用的定时器有三种,分别是NSTime,CADisplayLink和GCD. NSTimer 方式1 // 创建定时器 NSTimer *timer = [NST ...

  9. Codeforces Round #396.D

    D. Mahmoud and a Dictionary time limit per test 4 seconds memory limit per test 256 megabytes input ...

  10. flex控件总结

    Flex基本控件总结 一.flex控件的分类:文本控件(text controls).数据源控件(data provider controls).菜单控件       (menu  controls) ...