以下基于“WIN7(64位)+Visual Studio 2010+CUDA7.5”

  语法高亮除了看起来舒服之外,还可以使用F11寻找函数、变量定义,输入函数的时候也会有相应的提示。下面就是关于CUDA代码的高亮设置。

  在搭建好CUDA开发环境后,当打开.cu文件时会发现,其中的CUDA C/C++关键字并没有高亮显示,如__global__、__device__等,而且还有下划曲线。这是因为编译器并没有将它们识别为关键字。以下就逐一介绍CUDA C/C++关键字和函数的语法高亮显示、配置Visual AssistX函数高亮、代码提示等,涉及三部分设置:

1、.cu文件中C/C++关键字高亮

  这个设置是为了当编辑.cu文件时,让Visual Studio 2010把.cu文件里的C/C++语法高亮。其他的Visual Studio 2012、Visual Studio 2013也与此类似。
  设置方法:

在Visual Studio 2010的菜单栏中,依次点击Tools > Options… > Text Editor > File Extension,在这个界面里的“Editor”下拉菜单中选“Microsoft Visual C++”,在“Extension”文本框里输入.cu,然后点击“Add”。相同的操作,把.cuh添加为“Microsoft Visual C++”。把全部.cu文件关闭,再打开,.cu文件中的C/C++关键字就高亮了。如果不行就重启Visual Studio 2010。但是CUDA的关键字还是黑色的,下一步把CUDA关键字高亮显示。

2、CUDA关键字高亮

  为了让CUDA中的关键字,如__global__、__device__、dim3等之类的文字高亮,需要如下操作:

  把“SDK_PATH\C\doc\syntax_highlighting\usertype.dat”该文件复制到“X:\Program Files (X86)\Microsoft Visual Studio 10.0\Common7\IDE\”目录下

这里“X:”指的是安装Visual Studio 2010的盘符。注意,这是针对WIN7 64位的情况。注意区别,在WIN7 64位系统下,不要复制到“X:\Program Files \Microsoft Visual Studio 10.0\Common7\IDE\”这个目录里,复制到这里CUDA关键字是不会高亮的。而如果你的WIN7是32位的,则可能正好是“X:\Program Files \Microsoft Visual Studio 10.0\Common7\IDE\”这个目录(因为32位下也只有这个目录),复制到这个目录下应该会高亮的(我没试过)。

  再次强调:SDK_PATH要换成你安装SDK的实际路径,不要直接使用这个字符串。

  还有种情况是,6.0版本的CUDA安装完成后貌似没有“usertype.dat”这个文件(我的CUDA7.5就是这种情况),这样便无法用上面的方法来操作了。看到网上有人提到,usertype.dat文件里面就是一堆CUDA扩展的关键字,如__global__、__host__、__device__、__constant__、__shared__、gridDim、blockIdx、blockDim、threadIdx、char1、char2等等。这样的话,一个解决方案就是,直接用低版本里的usertype.dat文件,而另外一个解决办法,就是自己直接写一个usertype.dat文件,这样可以随意添加遇到的关键字,方法就是:新建一个txt文档,按一个关键字一行的方式,把所有自己想高亮的关键字手动敲进去,完了把后缀.txt改为.dat即可。

  按上述方法将usertype.dat放到指定目录下后,重启Visual Studio 2010,重新打开.cu文件,CUDA的关键字应该就高亮成蓝色的了。

3、CUDA 函数高亮及CUDA函数输入代码提示

  实现这个功能就要使用VAssistX了。首先安装支持Visual Studio 2010的VAssistX。这个可以在CUDA安装前、后安装都行。然后,有两种设置方法:

方法1:让VAssistX支持.cu文件,也就是当编辑.cu文件时,VAssistX帮我们实现高亮和代码完成功能

  这个需要编辑注册表了。

  首先关闭Visual Studio 2010,然后使用regedit打开注册表,找到如下位置:

  HKEY_CURRENT_USER\Software\Whole Tomato\Visual Assist X\VANet10

  在右边找到“ExtSource”项目,鼠标右键选修改,在原有文字后添加如下文字:.cu;.cuh;,确定后关闭注册表,重新打开Visual Studio 2010,VAssistX开始支持.cu及.cuh文件的语法高亮及代码完成。此时.cu文件了的CUDA函数是高亮的,使用函数名符号就会自动提示函数全称、参数类型等信息了。

  但是红色波浪线也有可能是ASSIST X的UNDERLINE设置错误造成的,解决方法如下:

  在VAssistX菜单栏 > Visual Assist X Options > 展开Advanced > Underlines > 把underlines spelling errors in comments and strings using的勾去掉就行

  另外,我设置完之后仍然发现__global__有波浪线,不过相应的包含这两个头文件就行了:

  #include "cuda_runtime.h"

  #include "device_launch_parameters.h"

方法2:让VAssistX支持CUDA函数高亮和代码完成

  这个在VAssistX的菜单里设置完成:在Visual Studio 2010菜单里依次点击VassistX > Visual assist X Options > Projects > C/C++Directories,在这个界面的 “Platform”下拉菜单中选“Custom”,在“Show Directories for...”下拉菜单中选“Other include files”,然后在下面的输入框里,新建、添加三个路径,点击确定,三个路径分别如下:
SDK_PATH的\c\common\inc
SDK_PATH的\shared\inc
X:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v4.0\include
这样,分别在这三个目录里面的.h文件定义的函数和类型VAssistX会帮我们在编辑文件时实现高亮和完成代码。注意,如果少包含一个路径,这个目录里的.h文件定义的函数和类型就不会高亮和提示了。

References

http://blog.csdn.net/a2112233445566/article/details/50503980

CUDA代码的高亮设置的更多相关文章

  1. SecureCRT窗口输出代码关键字高亮设置

    设置方法: 下载配置文件:本站下载:Highlights.css  (下载重命名为 Highlights.ini )   原站下载:http://download.feralpacket.org/La ...

  2. VS2015 安装mvc4安装包以及vs2010 sp1后导致Razor语法失效代码不高亮(能正常运行)/视图页面无法智能提示(.cshtml)解决办法

    VS2015默认asp.net mvc 版本为5.0以上,默认不支持创建5.0以下的版本.所以想要使用mvc 4.0只能单独安装.在网上搜了几篇教程后在微软官网下载了Visual Studio 201 ...

  3. Clang调试CUDA代码

    Clang调试CUDA代码全过程 有空再进行编辑,最近有点忙,抱歉 使用的llvm4.0+Clang4.0的版本,依据的是上次发的llvm4.0和clang4.0源码安装的教程https://www. ...

  4. xmake新增对Cuda代码编译支持

    最近研究了下NVIDIA Cuda Toolkit的编译环境,并且在xmake 2.1.10开发版中,新增了对cuda编译环境的支持,可以直接编译*.cu代码. 关于Cuda Toolkit相关说明以 ...

  5. 使用代码为textview设置drawableLeft

    xml中的textView中设置android:drawableLeft: <TextView android:id="@+id/bookTitle" android:lay ...

  6. [转]Haroopad Markdown 编辑器代码语法高亮支持

    代码语法高亮 书写格式为: ` ` ` language_key if (condition){ return true } ` ` ` 在 ` ` ` (三个反引号)之间的是代码,其中languag ...

  7. phpBB论坛 代码 语法高亮 模块 Codebox Plus

    phpBB代码语法高亮模块 Codebox Plus Code-By.Org (https://www.phpbb.com/customise/db/mod/codebox_plus/) (https ...

  8. Linux Eclipse代码提示功能设置(Java & C/C++)

    最近在Linux下开发,由于长期使用Visual Studio 2010,对代码提示功能情有独钟,现在在Linux下,使用Eclipse做开发,当然免不了怀念Visual Studio强悍的代码提示, ...

  9. Android 代码编辑器中实现代码语法高亮

    想写一款Android手机上的代码编辑器,实现类似c4droid中代码语法高亮 通过Android中的控件WebView中嵌入html网页,html引入CodeMirror这个第三方库就可以了,其实就 ...

随机推荐

  1. Linux中fork的秘密

    linux中fork()函数详解         一.fork入门知识 一个进程,包括代码.数据和分配给进程的资源.fork()函数通过系统调用创建一个与原来进程几乎完全相同的进程,也就是两个进程可以 ...

  2. Delegate, Method as Parameter.

    代理, 将方法作为另一方法的参数. 类似C里面的函数指针. using System; using System.Windows.Forms; using System.Threading; name ...

  3. urlparse

    urlparse模块 urlparse主要是URL的分解和拼接,分析出URL中的各项参数,可以被其他的URL使用,而且只在python2.7中存在,python3中是在urllib包下的urllib. ...

  4. 《疯狂Java讲义》(三) ---- JDK&JRE&JVM&CLASSPATH

    JDK: Java SE Development Kit, Java标准版开发包.包括Java编译器,JRE,以及常用的Java类库等. JRE: Java Runtime Environment,运 ...

  5. 二模12day1解题报告

    T1.笨笨与电影票(ticket) 有n个1和m个0,求每个数前1的个数都大于等于0的个数的排列数. 非常坑的一道题,推导过程很烦.首先求出所有排列数是 C(n+m,m),然后算不合法的个数. 假设存 ...

  6. wordpress woodstock主题导入demo xml文件 execution time out

    1.已设置php.ini max_execution_time = 240 导入显示设置60 2.wp-config.php 添加 set_time_limit(600); 无效 3. .htacce ...

  7. selenium+phantomjs爬取动态页面数据

    1.安装selenium pip/pip3 install selenium 注意依赖关系 2.phantomjs for windows 下载地址:http://phantomjs.org/down ...

  8. MS - 2 - 设计包含 min 函数的栈

    定义栈的数据结构,要求添加一个 min 函数,能够得到栈的最小元素. 要求函数 min.push 以及 pop 的时间复杂度都是 O(1). template<typename T> st ...

  9. MacBook下如何安装mysql-python

    解决方法: 先把之前装的卸载干净:pip uninstall mysql-pythonbrew uninstall mysql-connector-c 现在设置下mysql_config路径:首先修改 ...

  10. XML.01-语法简介

    body,td { font-family: calibri; font-size: 10pt }   XML.01-语法简介 文档声明 元素(标签) 属性 注释 特殊字符 CDATA区域 处理指令 ...