zoukankan      html  css  js  c++  java
  • 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

  • 相关阅读:
    学习Extjs4 (21) 简单窗口
    C#启动外部程序的几种方法以及等待外部程序关闭的方法
    linux驱动学习(3)同步、信号量和自旋锁
    andoird webiew使用有道辞典实例
    Linux程序设计——用getopt处理命令行参数(转)
    git,github在windows上的搭建
    sparc芯片验证
    睡了一下午
    UNIX/Linux里统计文件里某个字符出现的次数(转)
    linux和单片机的串口通信
  • 原文地址:https://www.cnblogs.com/shrimp-can/p/5567518.html
Copyright © 2011-2022 走看看