CUDA 6.0在 VS 2010下的安装和配置

2023-10-31

CUDA 6.0在 VS 2010下的安装和配置

安装前准备:

CUDA 6.0 安装包,下载地址:https://developer.nvidia.com/cuda-downloads ;

VS 2010 安装,这个直接下个免费的就行;

Visual assist,这个可有可无,但是有了编程比较方便,CSDN上有很多破解的http://blog.csdn.net/piggyxp/article/details/36222683 ;

 

默认你上述的软件都有,且VS 2010 已经安装到了系统上。

注:我的系统是win7 sp1 32位系统,VS是 vs 2010 Ultimate x86,visual assist就是上面网址上的。

安装步骤

-1直接打开安装包如下图,这个位置是CUDA文件的暂存位置,不用管它,不过貌似程序安装完成之后这个还存在,安装完了直接删了就行;

-2 解压完之后,它会进入安装界面,同意条款后,然后进入如下界面:

这个可以选择精简,也可以自定义,我比较喜欢everything incontrol,所以选择了自定义;

-3 接下来到如下的界面,直接全选就可以

-4 CUDA安装路径问题,这个可以默认,也可以自定义,自定义的好处是你可以把所有的CUDA有关的内容都放在一个文件夹内,这样方便查找;如下图,这样关于CUDA 的所有东西都在CUDA文件夹下了:

-5 直接点下一步就等着安装完成就可以了;

CUDA 环境变量设置 

-6 安装完成之后就是CUDA的路径问题了,这时可以用控制台查看,直接输入set cuda可以查看现在的环境变量;安装完成之后可以看到CUDA_PATH和CUDA_PATH_V6_0两个环境变量已经设置好了;

那么这时要在系统环境变量上添加如下的变量,具体为什么不太清楚,但是所有的安装教程都这样做,这样做至少是没没坏处的;

CUDA_BIN_PATH  %CUDA_PATH%\bin

CUDA_LIB_PATH  %CUDA_PATH%\lib\Win32 

CUDA_SDK_BIN  %CUDA_SDK_PATH%\bin\Win32 

CUDA_SDK_LIB  %CUDA_SDK_PATH%\common\lib\Win32 

 

CUDA_SDK_PATH  C:\CUDA\CUDA Samples\ (注:这个路径一定要根据自己的SDK位置进行调整,不要随便copy网上的)

这时可以再次用set cuda 看看,如下图

-7 这样之后环境便配置好了,可以运行一个例子来试试,或者直接在控制台来运行C:\NVIDA CUDA\CUDA Samples\Bin\win32\Release下的bandwidthTest.exe和deviceQuery.exe来检测;

高亮设置

-8. 环境配置好了之后就可以进行开发了,但是我们不仅要能用,还要好用,所以呢,还要对其进行关键字高亮设置;

-8.1 .cu .cuh文件里的C/C++关键字高亮:

 在Visual Studio 2010 的菜单依次选“Tools|Options|Text Editor|File Extension(工具|选项|文本编辑器|文件扩展名)”,在该窗口中将“Editor(编辑器)”下拉框选择“MicrosoftVisual C++”,在“Extension(扩展名)”文本框中输入cu 点击“Add(添加)”按钮,重复工作把cuh 添加为Visual C++类型,添加完成后点击“OK(确定)”按钮,如下图:

这样,重启VS后.cu和.cuh文件里的C和C++的关键字就是高亮的了。

-8.2 CUDA 的关键字,如__device__、dim3 等的文字高亮设置

这个在6.0 安装时费了好大一番功夫,一般对于低版本(5.5或者以下)安装文件来说来说直接将下面

C:\ProgramData\NVIDIA Corporation\CUDASamples\v5.5\doc\syntax_highlighting\visual_studio_8

目录下的usertype.dat 文件复制到C:\Program Files\Microsoft Visual Studio10.0\Common7\IDE\ 目录下( 对x64 位Win7 系统为X:\ProgramFiles(X86)\Microsoft Visual Studio 10.0\Common7\IDE\)就行了;但是6.0的版本安装完成后貌似没有了这个文件(一开始以为是安装错了,重新下载了一个重新安装后还是没有),这样便无法高亮了,在网上查了很多之后,发现usertype.dat 文件里面就是一堆CUDA扩展的关键字,如:__global__、__host__、__device__、__constant__、__shared__、gridDim、blockIdx、blockDim、threadIdx、char1、char2等,这样一个解决方案便是直接用低版本里的usertype.dat文件,或者自己直接写一个存成该名称,这样可以随意添加遇到的关键字;

这样采用了5.5的usertype.dat文件后,重启VS,cuda的关键字就是高亮的了;

Visual Assist 设置

-9 使visual assist 支持CUDA函数

-9.1使Visual Assist X 支持CUDA 函数高亮和代码完成

在Visual Studio 2010 的菜单里依次选择:“ VAssistX|Visual assistX Options|Projects|C/C++Directories”,在该界面的“Platform”下拉框中选择Custom,在“Show Directories for”下拉框中选择Other include files, 然后在下面的输入框里,新建、添加如下路径,如图:

-9.2使VisualAssist X实现.cu文件高亮和代码完成功能

这个需要编辑注册表,在修改注册表时,为避免带来不必要的错误请先关闭VisualStudio 2010。使用Win+R组合键打开运行窗口,键入入regedit命令(registeredit的缩写)打开注册表,找到如下位置:HKEY_CURRENT_USER\Software\WholeTomato\Visual Assist X\VANet10。在右边找到ExtSource项目,鼠标右键选修改,在原有文字后添加如下文字:.cu;.cuh;确定后关闭注册表。重新打开VisualStudio 2010VisualAssist X便开始支持.cu.cuh文件的语法高亮及代码完成。此时.cu文件的CUDA函数是高亮的,使用函数名符号就会自动提示函数全称,参数类型等信息。

修改注册表时,请把vs关闭,否则修改不成功。

-10 至此,CUDA 6.0在vs2010下就可以运行了。

Bingo !!!

参考文件:

CUDA 6.0 安装及配置( WIN7 64位 / 英伟达G卡 / VS2010 )

VS2010中配置CUDA5.0

手把手教你CUDA6.0如何在VS2010配置


本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

CUDA 6.0在 VS 2010下的安装和配置 的相关文章

  • Golang调用CUDA库

    我正在尝试从 Go 代码中调用 CUDA 函数 我有以下三个文件 test h int test add void test cu global void add int a int b int c c a b int test add v
  • CUDA:如何在设备上填充动态大小的向量并将其内容返回到另一个设备函数?

    我想知道哪种技术可以填充设备上的动态大小数组 int row 在下面的代码中 然后返回其内容 以供另一个设备函数使用 为了将问题置于上下文中 下面的代码尝试使用在 GPU 上运行的高斯 勒让德求积来跨越勒让德多项式基组中的任意函数 incl
  • libstdc++.so.6 与 cuda 相关的链接器问题

    今天我在链接我编译的 cuda 内容时遇到了问题 我有一个最新的 debian 测试 w 2 6 32 3 amd64 我整天都在写我的代码 不时编译 没有问题 但在进行了较小的代码更改后 我收到以下错误 gcc o pa CUDA o h
  • Cuda Bayer/CFA 去马赛克示例

    我编写了一个 CUDA4 Bayer 去马赛克例程 但它比在 16 核 GTS250 上运行的单线程 CPU 代码慢 块大小是 16 16 图像暗淡是 16 的倍数 但更改此值并不会改善它 我做了什么明显愚蠢的事情吗 calling rou
  • cudaMallocManaged() 返回“不支持的操作”

    在 CUDA 6 0 中尝试托管内存给了我operation not supported打电话时cudaMallocManaged include cuda runtime h include
  • CUDA素数生成

    当数据大小增加超过 260k 时 我的 CUDA 程序停止工作 它不打印任何内容 有人能告诉我为什么会发生这种情况吗 这是我的第一个 CUDA 程序 如果我想要更大的素数 如何在 CUDA 上使用大于 long long int 的数据类型
  • MPI+CUDA 与纯 MPI 相比有何优势?

    加速应用程序的常用方法是使用 MPI 或更高级别的库 例如在幕后使用 MPI 的 PETSc 并行化应用程序 然而 现在每个人似乎都对使用 CUDA 来并行化他们的应用程序或使用 MPI 和 CUDA 的混合来解决更雄心勃勃 更大的问题感兴
  • 如何优化这个 CUDA 内核

    我已经分析了我的模型 似乎该内核约占我总运行时间的 2 3 我一直在寻找优化它的建议 代码如下 global void calcFlux double concs double fluxes double dt int idx blockI
  • 如何并行从数组中删除零值

    如何使用 CUDA 并行有效地从数组中删除零值 有关零值数量的信息是预先可用的 这应该可以简化这项任务 重要的是数字必须保持源数组中的顺序 当被复制到结果数组时 Example 该数组将例如包含以下值 0 0 19 7 0 3 5 0 0
  • CUDA线程执行顺序

    我有一个 CUDA 程序的以下代码 include
  • CUDA 估计 2D 网格数据的每块线程数和块数

    首先我要说的是 我已经仔细阅读了所有类似的问题 确定每个块的线程和每个网格的块 https stackoverflow com questions 4391162 cuda determining threads per block blo
  • 设置最大 CUDA 资源

    我想知道是否可以设置 CUDA 应用程序的最大 GPU 资源 例如 如果我有一个 4GB GPU 但希望给定的应用程序只能访问 2GB 如果它尝试分配更多 就会失败 理想情况下 这可以在进程级别或 CUDA 上下文级别上设置 不 目前没有允
  • CUDA 常量内存是否应该被均匀地访问?

    我的 CUDA 应用程序的恒定内存小于 8KB 既然它都会被缓存 我是否需要担心每个线程访问相同的地址以进行优化 如果是 如何确保所有线程同时访问同一地址 既然它都会被缓存 我是否需要担心每个线程访问相同的地址以进行优化 是的 这缓存本身每
  • CUDA 矩阵加法时序,按行与按行比较按栏目

    我目前正在学习 CUDA 并正在做一些练习 其中之一是实现以 3 种不同方式添加矩阵的内核 每个元素 1 个线程 每行 1 个线程和每列 1 个线程 矩阵是方阵 并被实现为一维向量 我只需用以下命令对其进行索引 A N row col 直觉
  • cuda中内核的并行执行

    可以说我有三个全局数组 它们已使用 cudaMemcpy 复制到 GPU 中 但 c 中的这些全局数组尚未使用 cudaHostAlloc 分配 以便分配页面锁定的内存 而不是简单的全局分配 int a 100 b 100 c 100 cu
  • 从 CUDA 设备写入输出文件

    我是 CUDA 编程的新手 正在将 C 代码重写为并行 CUDA 新代码 有没有一种方法可以直接从设备写入输出数据文件 而无需将数组从设备复制到主机 我假设如果cuPrintf存在 一定有地方可以写一个cuFprintf 抱歉 如果答案已经
  • 超出 CreateConstantBufferView 处虚拟地址的末尾

    我正在遵循 使用 DirectX12 进行游戏编程 ch 6 代码 但在 ID3DDevice CreateConstantBufferView 中 我发现 D3D12 错误 D3D12 错误 ID3D12Device CreateCons
  • cudaMemcpy() 与 cudaMemcpyFromSymbol()

    我试图找出原因cudaMemcpyFromSymbol 存在 似乎 symbol func 可以做的所有事情 nonSymbol cmd 也可以做 symbol func 似乎可以轻松移动数组或索引的一部分 但这也可以使用 nonSymbo
  • 如何为 CUDA 内核选择网格和块尺寸?

    这是一个关于如何确定CUDA网格 块和线程大小的问题 这是对已发布问题的附加问题here https stackoverflow com a 5643838 1292251 通过此链接 talonmies 的答案包含一个代码片段 见下文 我
  • 无法在内存位置找到异常源:cudaError_enum

    我正在尝试确定 Microsoft C 异常的来源 test fft exe 中 0x770ab9bc 处的第一次机会异常 Microsoft C 异常 内存位置 0x016cf234 处的 cudaError enum 我的构建环境是 I

随机推荐

  • HTML5 Web Worker深入浅出教程

    HTML5 Web Worker简介 至 2008 年 W3C 制定出第一个 HTML5 草案开始 HTML5 承载了越来越多崭新的特性和功能 它不但强化了 Web 系统或网页的表现性能 而且还增加了对本地数据库等 Web 应用功能的支持
  • 机器学习评估方法——P值校验

    目标 假设在 0 05的情况下 根据舆情监测项目需求 查看召回率和准确率的置信区间 均值 过程 1 输入数据 三列分别是precision recall f1 score 每一列分别计算 以此为例 一共四十行 即样本容量为40 2 计算标准
  • linux下登陆mysql失败

    一 提示由于没有密码 拒绝登陆 ERROR 1045 28000 Access denied for user root localhost using password NO 1 关闭mysql service mysqld stop2
  • mysql索引之B+树

    1 概述 提到B 树就不得不提及二叉树 平衡二叉树和B树这三种数据结构了 B 树就是从他们三个演化来的 众所周知B 树是一种常见的数据结构 被广泛应用于数据库和文件系统等领域 B 树的设计目标是保持树的平衡性 以提供稳定的性能 并且适用于大
  • 链表插入详解

    单链表速成 增与删 众所周知 链表是数据结构的重中之重 但有许多朋友对此并不感冒 甚至想骂 本文主要介绍小编对于链表的喜与悲 乐于忧 先上图 添加结点 单链表结点类型声明 typedef int ElemType 假设ElemType为自定
  • python捕获异常时,打印异常的类型、报错文件、与报错所在的行

    捕获异常 异常的完整代码是 try raise Exception wa except print 报错 else print 没有报错 finally print 程序关闭 得到结果 报错 程序关闭 一般程序里的 try与except是一
  • 如何优化一个肽预测模型

    要优化一个肽预测模型 首先需要考虑的是输入数据的质量 确保输入的数据是完整的 正确的 而不是噪声数据 此外 还需要考虑模型的训练方式 比如是否使用正则化和提前停止来确保不会过拟合训练数据 最后 应该尝试在模型中使用不同的参数来改善模型的性能
  • 02 Java基本数据结构之队列实现

    系列文章目录 01 Java基本数据结构之栈实现 02 Java基本数据结构之队列实现 03 Java基本数据结构之优先级队列 04 Java基本数据结构之链表 如有错误 还请指出 文章目录 系列文章目录 前言 一 队列 简述 二 栈 数组
  • 【Hyperledger Fabric】学习笔记1—— 区块链介绍

    目录 1 区块链介绍 1 1 区块链技术起源 1 1 1 区块链技术 1 1 2 区块链技术发展 1 2 区块链核心技术 1 2 1 定义 1 2 2 区块链技术原理 1 2 3 区块链工作过程 1 3 区块链开发平台 1 3 1 公有链平
  • GIT使用教程(十五步吃透,全网最详细)

    一 安装GIT 到官网下载GIT https git scm com downloads 二 创建仓库 在要创建仓库的文件夹空白地方点击右键 在弹出的菜单中点击 GIT Bash Here 然后初始化仓库 git init 成功后该文件夹中
  • MySQL配置和设置问题小结

    问题1 root Tony ts tian bin mysqladmin uroot password kaka123 mysqladmin connect to server at localhost failed ERROR 1045
  • [4G+5G专题-144]: 测试-频谱分析仪工作原理与测试结果分析

    作者主页 文火冰糖的硅基工坊 文火冰糖 王文兵 的博客 文火冰糖的硅基工坊 CSDN博客 本文网址 https blog csdn net HiWangWenBing article details 123222945 目录 前言 第1章
  • RSA/数字证书/签名原理详解

    文中首先解释了加密解密的一些基础知识和概念 然后通过一个加密通信过程的例子说明了加密算法的作用 以及数字证书的出现所起的作用 接着对数字证书做一个详细的解释 并讨论一下windows中数字证书的管理 最后演示使用makecert生成数字证书
  • 优惠卷测试案例

    提示 过期优惠卷 不同等级的用户 叠加使用 退款 支付失败 取消支付 退款中 订单信息 网络问题 退货 兼容性 优惠券是否可以正常使用 外观是否与UI保持一致 部分商品是否能正常使用 购买商品的时候会不会提示使用优惠券 优惠券是否能分享 分
  • git锁住如何解决GitLab: Your account has been blocked.

    今天用gitpush和pull的时候出现了一个问题 报了一个错误 GitLab Your account has been blocked 然后我怀疑是账号错误 然后发现账号密码对 后来发现是两个git账号同时占用了一个目录 强制删除目录下
  • 数据结构【堆】的认识及建立

    目录 一 堆 1 什么是堆 2 堆的存储方式 二 堆的建立与存储 三 堆的应用 1 堆排序 2 对顶堆 一 堆 1 什么是堆 堆 Heap 是一种特殊的完全二叉树结构 其中最大堆 Max Heap 或最小堆 Min Heap 的每个节点的键
  • Maven-Failed to parse POMs

    Maven Failed to parse POMs 错误描述信息 产生错误的原因 解决办法 依赖关系 错误描述信息 ERROR Failed to parse POMs hudson remoting ProxyException hud
  • mmdetection学习&训练测试自己的数据集

    一 本机使用环境 商汤科技和香港中文大学联合开源的深度学习目标检测工具箱mmdetection源码地址 Ubuntu16 04 Cuda9 0 cudnn7 5 Python3 6 GCC 7 2 Anaconda3 二 环境配置 官方配置
  • 无法连接 SQL Server 不可用或不存在 无法连接, SQL Server 不存在或拒绝网络访问..请问这是怎么回事?...

    远程连接sql server 2000服务器的解决方案 一 看ping 服务器IP能否ping通 这个实际上是看和远程sql server 2000服务器的物理连接是否存在 如果不行 请检查网络 查看配置 当然得确保远程sql server
  • CUDA 6.0在 VS 2010下的安装和配置

    CUDA 6 0在 VS 2010下的安装和配置 安装前准备 CUDA 6 0 安装包 下载地址 https developer nvidia com cuda downloads VS 2010 安装 这个直接下个免费的就行 Visual