Win7(32位)+VS2010+CUDA4.2配置

CUDA4.2+VS2010+Win7 (32)安装配置

一、         CUDA基本配置

 . 首先下载最新的显卡驱动、cuda toolkit4.2cuda sdk4.2

 2. 我的电脑已经安装了VS2010,所以只需分别安装显卡驱动、cuda toolkitcuda sdk

它们默认的安装路径分别为:

VS2010:             C:\ProgramFiles\Microsoft Visual Studio 10.0

CUDA toolkit: C:\Program Files\NVIDIA GPU ComputingToolkit\CUDA\v4.2

CUDA SDK:  C:\ProgramData\NVIDIACorporation\NVIDIA GPU Computing SDK 4.2

3.ToolKit安装目录下(NVIDIA GPUComputing Toolkit\CUDA\v4.2\extras\visual_studio_integration)中包含有

MSBuildExtensionsCUDA4.2.propsCUDA4.2.targetsCUDA4.2.xmlNvda.Build.CudaTasks.v4.2.dll

拷贝这该目录下的所有文件到

C:\ProgramFiles\MSBuild\Microsoft.Cpp\v4.0\BuildCustomizations(C:\Program Files(x86)\MSBuild\Microsoft.Cpp\v4.0\BuildCustomizations on 64 bit)文件夹(4.2版已默认安装好

4.拷贝Toolkit\CUDA\v4.2\extras\visual_studio_integration\rules下的(NvCudaRuntimeApi.v4.2.rulesNvCudaDriverApi.rulesNvCudaDriverApi.v4.2.rulesNvCudaRuntimeApi.rules文件到

C:\Program Files\MicrosoftVisual Studio 10.0\VC\VCProjectDefaults文件夹下。

5.双击 D:\Program Files\MicrosoftVisual Studio 10.0\VC\VCProjectDefaults文件夹下的gpucomputing_intellisense.reg文件(在我的安装目录下没找到)

6.工具库的生成:

    (1)使用VS2010打开SDK_PATH \ c\common\cutil vs2010.sln VS2010 生成->”,生成所有配置需要的lib目的:生成各配置需要的cutilxx[D].libXX:32 [D]debug模式。 lib存放的位置:SDK_PATH \ c\common\lib\(win32);将cutil32.dllcutil32.libcutil32D.dll cutil32D.lib分别复制到SDK_PATH\C\bin\win32\ReleaseDK_PATH\C\bin\win32\Debug (这里4.2已经自动添加了dll,所以我没有修改)。

    (2)打开SDK_PATH\share\ shrUtils_vs2010.sln生成;目的:生成各配置需要的shrUtilxx.lib XX:32 [D]debug模式;lib存放的位置:SDK_PATH\share\lib\(Win32);生成的库文件为shrUtils32.libshrUtils32D.lib,一起的文件还有freeglut.libglew32.lib

二、测试SDK例子:

VS2010 打开SDK例子:deviceQuery, matrixMul各种配置均可编译执行成功。

二、         扩展VS高亮及规则

1.打开注册表在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\10.0\Languages\FileExtensions\中添加子键 .cu然后copy .cpp的键值到.cu,这样才能表示cu也是VS下的VC的工程文件。

2. cu文件高亮这个设置是让VS2010编辑.cu文件时,把.cu文件里的C/C++语法高亮。 设置方法:

VS2010的菜单依次点击:工具->选项->文本编辑器->文件扩展名,在这个界面里:编辑器(I下拉框选microsoft visual ++,在扩展名文本框输入.cu点击添加按钮,重复工作把.cuh添加为vc++类型,点击确定按钮。把全部.cu文件关闭,再打开,.cu文件C++关键字就高亮了。如果不行就重新启动VS2010

3. CUDA关键字高亮

为了让CUDA的关键字,象 __device__dim3之类的文字高亮,需要如下步骤:把SDK_PATH\C\doc\syntax_highlighting\usertype.dat复制到X:\ProgramFiles\Microsoft Visual Studio 10.0\Common7\IDE\目录下。里面只有VS7VS8的,我直接把VS8copy过来了。

下面的我没有实验

13. CUDA 函数高亮,及CUDA函数输入代码提示。实现这个功能就要使用VAssistX了。首先安装支持VS2010VAssistX。这个可以在CUDA安装前、后安装都行。

 需要两步实现需要的功能:

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

 b)VAssistX支持.cu文件,也就是编辑.cu文件是VAssistX帮我们实现高亮和代码完成功能。这个需要编辑注册表了。 首先关闭VS2010,使用regedit打开注册表,找到如下位置:HKEY_CURRENT_USER\Software\Whole Tomato\Visual AssistX\VANet10在右边找到ExtSource项目,鼠标右键选修改,在原有文字后添加如下文字:.cu;.cuh;确定后关闭注册表,重新打开vs2010VAssistX开始支持.cu.cuh文件的语法高亮及代码完成。 此时.cu文件了的CUDA函数是高亮的,使用函数名符号就会自动提示函数全称,参数类型等信息了。

三、新建CUDA项目

环境搭建好之后,最应该掌握的就是CUDA项目的创建过程了。

1) 新建一个Win32控制台项目demo

2) 注意在向导中选择空项目,然后点击完成;

3) 然后在项目中添加文件:

选择的文件类型是CPP文件,在写名称的时候可以直接写为.cu文件,也可以写成.cpp文件之后再进行重命名。

4) 右键项目名称生成自定义:选择CUDA 4.2.(targets,.props)

5) 右键.cu文件属性:

 

6下面右键项目名称属性:检查一下,保持默认

7)选择“连接器|常规”属性页,在“Additional Libraries Directories”下添加

$(CUDA_PATH_V4_2)\lib\$(Platform);

8)打开连接器|输入属性页,“AdditionalDependencies”中添加“cudart.lib;”(注:直接写进去就可以啦 !!)

9)以上项目就基本配置完成了,在demo.cu中加入以下代码:

#include<stdio.h>

#include<stdlib.h>

#include<cuda_runtime.h>

 

bool InitCUDA()

{

       int count;

       cudaGetDeviceCount(&count);

       if(count==0)

       {

              fprintf(stderr,"There is no device.\n");

              return false;

       }

       int i;

       for(i=0;i<count;i++)

       {

              cudaDevicePropprop;

              if(cudaGetDeviceProperties(&prop,i)==cudaSuccess)

              {

                     if(prop.major>=1)

                     {

                            break;

                     }

              }

       }

 

       if(i==count)

       {

              fprintf(stderr,"There is no device supporting CUDA1.x.\n");

              return false;

       }

       if(i==count)

       {

              fprintf(stderr,"There is no device supporting CUDA1.x.\n");

              return false;

       }

 

       cudaSetDevice(i);

       return true;

}

 

int main()

{

       if(!InitCUDA())

       {

              return 0;

       }

       printf("CUDA initialized.\n");

       system("pause");

       return 0;

}

程序运行通过,配置完成。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值