Windows系统配置CUDA编程环境

news2025/2/27 14:12:17

像配置一个简单的可以进行CUDA编程的Windows系统环境,分别需要CUDA以及Visual stdio。
注意,如果是新配置的电脑,一定要先安装visual stdio再安装CUDA,否则后面在VS中创建.cu文件时容易出现找不到模块的情况。

一、安装Visual stdio

下载安装包,网上很多,我是公司主机,直接软件助手下载,傻瓜安装,一般不需要环境配置。

二、安装CUDA

命令行查看自己的系统支持的CUDA最高版本:

nvidia-smi

例如我的电脑显示如下:
在这里插入图片描述
CUDA Version显示11.2说明支持的最高版本的CUDA为11.2。
一般我的习惯是安装低一版本的CYUDA,太高版本的容易有很多小的无法解决的兼容问题。
下面安装CUDA10.2,安装包可以在官网下载,下载后解压双击开始安装。
这里有两种情况:
1、之前安装过CUDA或者已存在CUDA和Visual stdio,出现问题正在重新安装整套系统,这里建议将CUDA卸载重新安装,修改太麻烦了,而且我没有找到自己遇到问题的解决方案,所以,如果是这种情况,首先卸载CUDA:
搜索打开控制面板-选择程序-程序和功能,开始卸载,开头为NVIDIA的程序,除了图中框里的三个程序,其他全部卸载。
在这里插入图片描述
2、第二种情况就是第一次安装CUDA,这种情况就比较简单了,直接安装,不用进行上面的卸载步骤了。
下面开始安装,推荐教程,从步骤四开始看即可,如果卸载干净了或者第一次安装CUDA,不用选自定义安装,直接选第一个推荐安装就好了。
环境变量一般不用配置,CUDA安装的时候会自己加进去,很Nice。利用nvcc -V查看是否安装成功。

三、针对Visual stdio的一些CUDA配置

正常安装完后,打开VS建立新项目就会看到有CUDA模块,但我的没有,查了一圈,最后解决了,发现安装完还需要进行一些配置,如果没遇到问题的后边就不用看了。
1、关闭所有的Visual Studio程序。
2、进入VS的这个安装目录下(视自己的安装目录而定,找到这个目录就行),我的是C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\IDE\Extensions,在这个文件夹下创建一系列文件夹NVIDIA->CUDA 10.2 Wizards->10.2(如果你的电脑中已经有NVIDIA文件夹,则进入NVIDIA文件夹,再创建CUDA 10.2 Wizards->10.2即可)
在这里插入图片描述
3、随便找个文件夹解压下载的CUDA可执行文件,再解压后的文件中找到下面两个文件,

D:\新建文件夹\cuda_10.2.89_441.22_win10\CUDAVisualStudioIntegration\extras\visual_studio_integration\CudaProjectVsWizards\2019\extension.vsixmanifest
D:\新建文件夹\cuda_10.2.89_441.22_win10\CUDAVisualStudioIntegration\extras\visual_studio_integration\CudaProjectVsWizards\Nvda.Vsip.CudaWizards.dll.pkgdef

右键创建快捷方式:
在这里插入图片描述
在这里插入图片描述
复制两个快捷方式到前面建立的10.2目录中:
在这里插入图片描述
4、完成后,打开Visual Studio 2019 的开发者命令控制台,然后右键以管理员权限运行:
在这里插入图片描述
在打开的界面中,首先进入VS安装目录下的C:\Program Files\Microsoft Visual Studio\2022目录中,再运行命令:

devenv.com /setup /nosetupvstemplates

在这里插入图片描述
现在重启VS就可以看到CUDA模块了,但如果还是没有,就继续下面的配置。
5、在文件夹下,找到下面四个文件并复制:
在这里插入图片描述
复制到文件夹C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Microsoft\VC\v160中:
在这里插入图片描述
完成后应该就OK了。
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/9687.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

动态规划--(回文子串,最长回文子序列)

代码随想录day 57 动态规划模块 回文子串,最长回文子序列 文章目录1.leetcode 647. 回文子串1.1 详细思路及解题步骤1.2 Java版代码示例2.leetcode 516. 最长回文子序列2.1 详细思路及解题步骤2.2 Java版代码示例1.leetcode 647. 回文子串 1.1 详细思路及解题步骤 该题用动态规…

2023最新SSM计算机毕业设计选题大全(附源码+LW)之java杨佑川音乐播放器908v6

大部分步骤是 1.确定选题 选题的确定需要查阅大量的资料,要搞清楚自己大概想要研究的方向是什么。可以选择自己感兴趣的学科或者强势的学科进行研究,同时要多和毕业指导老师多交流,征求老师的意见和建议,最后确立选题。计算机专…

【K8S系列】第九讲:Kubernetes 之探针

目录 一、探针是什么 二、探针类型 2.1 livenessProbe 2.1.1 容器重启策略 2.2 readinessProbe 2.3 startupProbe 2.4 总结 2.5 探针示例 2.6 配置字段介绍 三、探测机制 3.1 HTTP GET探针 3.2 TCP套接字探针 3.3 Exec探针 Tips 一、探针是什么 探针:是由 kub…

OpenCV众筹了一款ROS2机器人rae,开源、功能强、上手简单。来瞅瞅~

编辑:OAK中国 首发:oakchina.cn 喜欢的话,请多多👍⭐️✍ ▌前言 Hello,大家好,这里是OAK中国,我是助手君。 在2020年、2021年OpenCV分别在Kickstarter上众筹了两款OAK产品,均筹集…

设计模式——桥接模式

桥接(Bridge)模式 一、基本思想 当一个类内部具备两种或多种变化维度时,使用桥接模式可以解耦这些变化的维度,使高层代码架构稳定。 将抽象与实现分离,使它们可以独立变化。 用组合关系代替继承关系来实现&#xff0…

运维面试必问的中间件高频面试题

1. redis是单线程还是多线程? 这个问题已经被问过很多次了,从redis4.0开始引入多线程,redis 6.0 中,多线程主要用于网络 I/O 阶段,也就是接收命令和写回结果阶段,而在执行命令阶段,还是由单线程…

综述类论文_Machine Learning for Encrypted Malicious Traffic Detection(重要)

文章目录Machine Learning for Encrypted Malicious Traffic Detection: Approaches, Datasets and Comparative Study摘要存在的问题论文贡献1. 基于机器学习的加密流量检测模型的总体框架1.1 Research Target(研究目标)1.2 Traffic Dataset Collection…

Allegro给各种形式的板框导弧操作指导

Allegro给各种形式的板框导弧操作指导 Allegro可以给板框导弧,让加工出来的板框更加圆滑,具体操作步骤如下 板框是line形式的 选择Manufacture-Drafting-Fillet命令 在Options里面Radius输出导弧的半径,比如78.74 框选两个线段的部分 完成后的效果如下图 框选4个角落,…

Python基础学习

一、Python基础 1.Python介绍 2.发展史 3.Python 2 or 3? 4.安装 5.Hello World程序 6.变量 7.用户输入 8.模块初识 9. .pyc是个什么鬼? 10.数据类型初识 11.数据运算 12.表达式if ...else语句 13.表达式for 循环 14.break and continue 15.表达式while 循环…

最好的Python入门教材是哪本?这本书当之无愧

1.门槛低 适合编程零基础上手 《Python编程 从入门到实践(第二版)》的作者埃里克马瑟斯(Eric Matthes)是一名高中科学和数学老师,现居住在阿拉斯加,在当地讲授 Python 入门课程。他从 5 岁开始就一直在编写…

带你深度解析虚幻引擎4的照明和阴影知识

照明是渲染的重要组成部分。有静态光和动态光,它们往往很重并且需要大量计算。今天就让赞奇云工作站带领小伙伴们来学习一下虚幻引擎4中的光照和阴影的知识。 静态照明 静态光在编辑器中预先计算并保存在光照贴图中。 〇:良好的性能和质量&#xff08…

[go学习笔记.第十五章.反射,常量] 1.反射的基本介绍以及实践

一.反射的引入以及基本介绍 1.看两个问题 (1).对于结构体的序列化和反序列化,看一段代码 package mainimport("fmt" "encoding/josn" )type Monster struct {Name string json:"monsterName"Age int json:"monsterAge&quo…

Android商城开发----点击左侧分类列表右侧更新对应列表内容

Android商城开发----点击左侧分类列表右侧更新对应列表内容 目录Android商城开发----点击左侧分类列表右侧更新对应列表内容一、首先说布局:二、主要说一下,布局完成后实现点击左侧类别时,右侧展现对应类的商品列表。主要思想:源代…

Vue3响应系统的实现(二)

前言 继上一篇文章,我们已经能够实现一个简单的响应系统了,但是仍然存在很多缺陷,本篇文章将具体叙述一下存在的缺陷以及如何解决,最后实现一个较为完善的响应式系统 解决副作用函数硬编码问题 从上一篇文章中我们不难发现响应…

概率 | 【提神醒脑】重难点专题突破 自用笔记

本文总结参考于 kira 2023概率提神醒脑技巧班 中 —— 重难点专题。 笔记均为自用整理。加油!ヾ(◍∇◍)ノ゙ 一研为定! 一、条件均匀 / 指数 / 二项…分布 -------------------------------------------------------------------------------------------------------------…

基于inquirer实现一个控制台多级选择交互功能

说在前面 🎈在前端脚手架工具中经常会看到控制台输入参数等操作。例如Vue-cli中初始化项目会提示选择一些参数等。所以在开发脚手架工具或者node控制台程序,就需要用到inquirer工具或者类似的工具。但是使用过inquirer工具的同学应该知道,目前…

SpringSecurity整合SSM和SpringBoot完成方法级权限控制

初识权限管理 权限管理,一般指根据系统设置的安全规则或者安全策略,用户可以访问而且只能访问自己被授权的资源。权限管理几乎出现在任何系统里面,前提是需要有用户和密码认证的系统。 在权限管理的概念中,有两个非常重要的名词&…

SpringBoot SpringBoot 开发实用篇 1 热部署 1.4 关闭热部署功能

SpringBoot 【黑马程序员SpringBoot2全套视频教程,springboot零基础到项目实战(spring boot2完整版)】 SpringBoot 开发实用篇 文章目录SpringBootSpringBoot 开发实用篇1 热部署1.4 关闭热部署功能1.4.1 关闭热部署1.4.2 小结1.4.3 总结1 …

大佬神作!Spring Security从应用到源码,这份手册都讲全了,已三刷

简介 平时我们写 Web 项目,都需要用户登录时验证,以及权限管理之类的操作,以前使用过滤器,拦截器等进行管理,原生代码较多。 所以出现了安全框架以供我们使用,安全框架在 Web 应用的主要功能是&#xff1a…

金九失足,10月喜提“Java高分指南”,11月冲击大厂

蓦然回首自己做开发已经十年了,这十年中我获得了很多,技术能力、培训、出国、大公司的经历,还有很多很好的朋友。但再仔细一想,这十年中我至少浪费了五年时间,这五年可以足够让自己成长为一个优秀的程序员,…