nvcc编译器选项及配置
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编译器选项及配置的更多相关文章
- C# 编译器选项 /platform(指定输出平台)32位程序运行到x64平台的问题
如果说你编译的exe运行时报错: “尝试读取或写入受保护的内存.这通常指示其他内存已损坏” 这很有可能是你是以非托管的方式错误地引用了64位的API中去. 为什么会这样? 那你就要考虑VS的编译器选项 ...
- makefile中一些编译器选项
Libraries Static Libraries a collection of ordinary object files (目标文件的集合) loaded at program link ti ...
- eclipse中没有server选项无法配置Tomcat
eclipse集成Tomcat: 打开eclipse - 窗口 - 首选项 - 服务器 - 运行时环境 找到Tomcat然后添加. eclipse添加插件: 开发WEB项目时要集成Tomcat可以并不 ...
- Visual Studio C/C++ 编译器选项
优化- /O1 最小化空间 /O2 最大化速度/Ob<n> 内联扩展(默认 n=0) /Od 禁用优化(默认) ...
- VC++ 19 (VS2015) 编译器系统环境变量配置
Visual C++的cl.exe编译器是微软推出的编译器,干什么的怎么用也不赘述了.大多数情况都是直接在Visual Studio里写代码然后点击"播放"按钮让Visual St ...
- Windows 编译器选项 Runtime Library
https://msdn.microsoft.com/library/2kzt1wy3%28v=vs.100%29.aspx http://blog.csdn.net/ybxuwei/article/ ...
- NVCC编译器
http://blog.csdn.net/bendanban/article/details/8518382 mark一下 几个方案可以用: 方案1: 将所有文件分别编译,最后统一合并! 对于C程序 ...
- Linux中安装C++编译器codeBlock,并配置opencv链接库
1.Linux中安装codeBlock https://blog.csdn.net/xinyunyishui/article/details/50967395 2.CodeBlock中的中文显示不完全 ...
- BT5 set_config各个选项的配置
最近研究了一下bt5的社会工程学工具SET,本来国内的bt5的资料就很少了,详细分析SET的资料就更少了,在各大网站找了找,都不靠谱,还是得自力更生啊,我在这里就把自己的过程写下来,希望对大家有点帮助 ...
随机推荐
- 用Spark学习矩阵分解推荐算法
在矩阵分解在协同过滤推荐算法中的应用中,我们对矩阵分解在推荐算法中的应用原理做了总结,这里我们就从实践的角度来用Spark学习矩阵分解推荐算法. 1. Spark推荐算法概述 在Spark MLlib ...
- Ionic start 创建项目报错 Error with start undefined
转自:http://blog.csdn.net/wenzigui_qy/article/details/52874542 在Installing npm packages的时候报错,如下: Insta ...
- Swift 2.2 多态和强制转换
写在前面: 写点东西,就是想告诉自己,有时间其实你也在前进着,快慢不说,至少没停下吧!该有的都会有的.不瞎BB了,说主题,3.0 的多态和继承. 总觉得继承好像也没什么太多的可说的了,在项目中用到的还 ...
- matlab和C语言的break及continue测试
break和continue语句 有两个附加语句可以控制while和for循环:break和continue语句.break语句可以中止循环的执行和跳到end后面的第一句执行,而continue只中止 ...
- jquery与ajax的XMLHttpRequest对象介绍
首先 认识一个对象 这个对象叫XMLHttpRequest XMLHttpRequest对象可以提供在不刷新页面的情况下向服务器发送异步请求,并且接受服务器端返回的结果.从而实现局部更新当前页面的功 ...
- C#基础笔记1
1>>数据类型: Int double:小数 char:字符型,只能存储一个字符,并且存储的这个字符要用单引号引起来.如:'a'; string:字符串,可以储存多个字符,用双引号引起来( ...
- DevExpress 控件使用之GridControl基本属性设置
DEV控件:gridControl常用属性设置 1.隐藏最上面的GroupPanel(实现方法两种) ①代码实现:gridView1.OptionsView.ShowGroupPane ...
- c++ 调用dl里的导出类
来源:http://blog.csdn.net/yysdsyl/article/details/2626033 动态dll的类导出:CPPDll2->test.h #pragma once // ...
- javascipt : reduce
$scope.totalPrice = function () { return $scope.addcartProduct.reduce(function (money, product) { re ...
- 每天一个linux命令(26)--用SecureCRT来上传和下载文件
用SSH管理Linux 服务器时经常需要远程与本地之间交互文件,而直接使用 SecureCRT 自带的上传下载功能无疑是最方便的,SecureCRT下的文件传输协议有ASCII.Xmodem.Zmod ...