CUDA学习笔记02:测试程序hello world
参考资料
Win10下在VS2019中配置使用CUDA进行加速的C++项目 (配置.h文件,.dll以及.lib文件等)_vs2019 cuda-CSDN博客
配置流程
1. 新建一个一般的项目
2. 项目建好后,在项目里添加.cu测试文件
测试的.cu文件命名为cuda_utils.cu,结构如下:
3. 配置环境
配置环境主要是配include路径,lib路径以及链接的库名称。
(1)打开项目属性,在VC/C++目录中,寻找“包含目录”,在里边编辑添加你电脑的CUDA include路径,我的是:C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.7\include
默认安装一般好像都是这个路径.
然后配置 "库目录" 路径,我的是: C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.7\lib\x64
配置好选择应用并确定。最后需要告诉链接器你需要链接什么动态库到你的项目中,在你添加的lib路径下,将所有的动态链接库添加链接进来,库名称很多,用权限打开cmd执行:
DIR *.lib /B > res.txt
然后复制所有ddl到链接库中:"属性" -> "链接器" -> "输入" -> "附加依赖项"
在最上边编辑添加:
这样你的项目中就可以找到CUDA头文件和动态链接库了。
(2) 配置cuda_utils.cu属性以及项目其他属性
用鼠标右键.cu文件,项类型选择CUDA C/C++。
右键勾选项目,找到 "生成依赖项" -> "自定义生成",勾选CUDA
环境配置就OK了。
4. 测试代码
cuda_utils.cu代码:
#include <stdio.h>
#include <cuda_runtime.h>
#include <device_launch_parameters.h>__global__ void print_cuda()
{printf("hello cuda. \n");
}void test_cuda()
{print_cuda << <1, 1 >> > ();cudaDeviceSynchronize();
}
主函数代码:
#include <iostream>void test_cuda();int main()
{test_cuda();std::cout << "Finished! \n";
}
测试运行结果如下:
OK,测试完毕!
配置vs项目环境和写CMake挺像的,多看看就好了。
相关文章:

CUDA学习笔记02:测试程序hello world
参考资料 Win10下在VS2019中配置使用CUDA进行加速的C项目 (配置.h文件,.dll以及.lib文件等)_vs2019 cuda-CSDN博客 配置流程 1. 新建一个一般的项目 2. 项目建好后,在项目里添加.cu测试文件 测试的.cu文件命名为cuda_utils.cu&…...

2023年第十四届蓝桥杯大赛软件类省赛C/C++大学A组真题
2023年第十四届蓝桥杯大赛软件类省赛C/C大学A组部分真题和题解分享 文章目录 蓝桥杯2023年第十四届省赛真题-平方差思路题解 蓝桥杯2023年第十四届省赛真题-更小的数思路题解 蓝桥杯2023年第十四届省赛真题-颜色平衡树思路题解 蓝桥杯2023年第十四届省赛真题-买瓜思路题解 蓝桥…...

项目部署发布
目录 上传数据库 修改代码中的数据源配置 修改配置文件中的日志级别和日志目录 打包程序 编辑编辑 上传程序 查看进程是否在运行 以及端口 云服务器开放端口(项目所需要的端口) 上传数据库 通过xshell控制服务器 创建目录 mkdir bit_forum 然后进入该目录 查看路…...

MATLAB环境下基于离散小波变换的心电信号伪影去除及PQRST波检测
可穿戴个人健康监护系统被广泛认为是下一代健康监护技术的核心解决方案。监护设备不断地感知、获取、分析和存储大量人体在日常活动中的生理数据,为人体的健康状况提供必要的、准确的、集成的和长期的评估和反馈。在心电监测领域,可穿戴传感器具有以下应…...

SwiftUI 在 App 中弹出全局消息横幅(下)
功能需求 在 SwiftUI 开发的 App 界面中,有时我们需要在全局层面向用户展示一些消息: 如上图所示:我们弹出的全局消息横幅位于所有视图之上,这意味这它不会被任何东西所遮挡;而且用户可以点击该横幅关闭它。这是怎么做到的呢? 在本篇博文中,您将学到以下内容 功能需求…...

2023年06月CCF-GESP编程能力等级认证Scratch图形化编程三级真题解析
本文收录于专栏《Scratch等级认证CCF-GESP真题解析》,专栏总目录・点这里 一、单选题(共15题,共30分) 第1题 高级语言编写的程序需要经过以下( )操作,可以生成在计算机上运行的可执行代码。 A:编辑 B:保存 C:调试 D:编译 答案:D 第2题 小球角色,执行以下程序…...
升级openssl
openssl版本一键升级(需要修改tar包名称和路径) --- - name: Install OpenSSLhosts: openssltasks:- name: Copy OpenSSL tar.gz to /tmpcopy:src: /root/shl/soft/openssl-1.1.1v.tar.gzdest: /tmp # remote_src: yes # 如果源文件在控制主机上…...

软考基础知识2
1.DMA控制方式:直接内存存取。数据在内存与I/O设备间直接成块传送,不需要CPU的任何干涉,由DMA硬件直接执行完成。 例题: 2.程序计数器总是存下一个指令的地址。 例题: 3.可靠度的计算: 例题:…...
Python基本数据类型介绍
Python 解释 Python是一种高级编程语言,以其简洁、易读和易用而闻名。它是一种通用的、解释型的编程语言,适用于广泛的应用领域,包括软件开发、数据分析、人工智能等。python是一种解释型,面向对象、动态数据类型的高级程序设计…...
边缘计算网关:连接物理世界与数字世界的桥梁-天拓四方
边缘计算网关是一种硬件设备,通常部署在网络边缘,即物联网设备的接入点。它具备数据采集、处理、存储和传输等功能,能够实现对物联网设备的实时监控和控制。边缘计算网关将原本需要在云端处理的数据在本地进行计算和分析,从而降低…...
NTP网络校时服务器(GPS北斗卫星校时系统)应用场景
NTP网络校时服务器(GPS北斗卫星校时系统)应用场景 NTP网络校时服务器(GPS北斗卫星校时系统)应用场景 随着大数据、云计算时代的到来,各行业信息化建设的不断提升,信息化下的各个系统不再单独处理各自业务,而是趋于协同工作,因此,各…...

Intel 芯片 Mac 如何重新安装系统
使用可引导安装器重新安装(可用于安装非最新的 Mac OS,系统降级,需要清除所有数据,过程确保连接上网络,虽然这种方式不会下载 Mac OS,但是需要下载固件等信息) 插入制作好的可引导安装器&#x…...

【uni-app】condition 启动模式配置,生产环境无效,仅开发期间生效
在小程序开发过程中,每次代码修改后,都会启动到首页,有时非常不方便,为了更高效的开发,有时需要模拟直接跳转到指定的页面, 操作方法如下: 在pages.joson里面配置下列代码: "…...

sql单表运用11.3
一、进入数据库操作界面 1、mysql -u root -p 敲回车 ,输入密码 ,进入数据库操作界面 2、show databases 查看所有的数据(如果没有数据库:创建数据库 create database 库名称) 3、use 数据库名 使…...

YOLOv5目标检测学习(1):yolo系列算法的基础概念
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、基于深度学习的目标检测需要哪些步骤?二、数据准备(即准备数据集)1.目标检测的数据集如何获取?2.数据集包括…...

【大数据】通过 docker-compose 快速部署 MinIO 保姆级教程
文章目录 一、概述二、MinIO 与 Ceph 对比1)架构设计对比2)数据一致性对比3)部署和管理对比4)生态系统和兼容性对比 三、前期准备1)部署 docker2)部署 docker-compose 四、创建网络五、MinIO 编排部署1&…...

VMware 虚拟机安装windows 10操作系统
先提前准备好镜像文件 1.创建新的虚拟机 2.选择自定义,然后下一步 v Windows 建议选择2G以上,下一步 选择网络地址转换(NAT),下一步 这里可按自己的需求来分区,也可以安装好后再分区 选择立即重启ÿ…...
Mysql实战(2)之MySQL执行流程
-- 查看mysql当前有多少连接 show global status like Thread%; /* Threads_cached:缓存中的线程连接数 Threads_connected:当前打开的连接数 Threads_created:为处理连接创建的线程数 Threads_running:非睡眠状态的连接数&…...

ES6 | (二)ES6 新特性(下) | 尚硅谷Web前端ES6教程
文章目录 📚迭代器🐇定义🐇工作原理🐇自定义遍历数据 📚生成器函数🐇声明和调用🐇生成器函数的参数传递🐇生成器函数案例 📚Promise📚Set🐇Set的定…...

客户案例|用友NC财务系统上云
本文分享一次成功将用友NC财务系统上云的经验,主要涉及阿里云上Oracle ASM存储扩容,阿里云ESC RAC服务器扩容,阿里云上Oracle RAC数据库迁移等相关技术,一起来看看吧! 1 客户数据库上云背景 本次项目我司主要负责客户…...
线程同步:确保多线程程序的安全与高效!
全文目录: 开篇语前序前言第一部分:线程同步的概念与问题1.1 线程同步的概念1.2 线程同步的问题1.3 线程同步的解决方案 第二部分:synchronized关键字的使用2.1 使用 synchronized修饰方法2.2 使用 synchronized修饰代码块 第三部分ÿ…...
OkHttp 中实现断点续传 demo
在 OkHttp 中实现断点续传主要通过以下步骤完成,核心是利用 HTTP 协议的 Range 请求头指定下载范围: 实现原理 Range 请求头:向服务器请求文件的特定字节范围(如 Range: bytes1024-) 本地文件记录:保存已…...

ServerTrust 并非唯一
NSURLAuthenticationMethodServerTrust 只是 authenticationMethod 的冰山一角 要理解 NSURLAuthenticationMethodServerTrust, 首先要明白它只是 authenticationMethod 的选项之一, 并非唯一 1 先厘清概念 点说明authenticationMethodURLAuthenticationChallenge.protectionS…...

ElasticSearch搜索引擎之倒排索引及其底层算法
文章目录 一、搜索引擎1、什么是搜索引擎?2、搜索引擎的分类3、常用的搜索引擎4、搜索引擎的特点二、倒排索引1、简介2、为什么倒排索引不用B+树1.创建时间长,文件大。2.其次,树深,IO次数可怕。3.索引可能会失效。4.精准度差。三. 倒排索引四、算法1、Term Index的算法2、 …...
相机Camera日志分析之三十一:高通Camx HAL十种流程基础分析关键字汇总(后续持续更新中)
【关注我,后续持续新增专题博文,谢谢!!!】 上一篇我们讲了:有对最普通的场景进行各个日志注释讲解,但相机场景太多,日志差异也巨大。后面将展示各种场景下的日志。 通过notepad++打开场景下的日志,通过下列分类关键字搜索,即可清晰的分析不同场景的相机运行流程差异…...

Reasoning over Uncertain Text by Generative Large Language Models
https://ojs.aaai.org/index.php/AAAI/article/view/34674/36829https://ojs.aaai.org/index.php/AAAI/article/view/34674/36829 1. 概述 文本中的不确定性在许多语境中传达,从日常对话到特定领域的文档(例如医学文档)(Heritage 2013;Landmark、Gulbrandsen 和 Svenevei…...
Hive 存储格式深度解析:从 TextFile 到 ORC,如何选对数据存储方案?
在大数据处理领域,Hive 作为 Hadoop 生态中重要的数据仓库工具,其存储格式的选择直接影响数据存储成本、查询效率和计算资源消耗。面对 TextFile、SequenceFile、Parquet、RCFile、ORC 等多种存储格式,很多开发者常常陷入选择困境。本文将从底…...

【7色560页】职场可视化逻辑图高级数据分析PPT模版
7种色调职场工作汇报PPT,橙蓝、黑红、红蓝、蓝橙灰、浅蓝、浅绿、深蓝七种色调模版 【7色560页】职场可视化逻辑图高级数据分析PPT模版:职场可视化逻辑图分析PPT模版https://pan.quark.cn/s/78aeabbd92d1...
Webpack性能优化:构建速度与体积优化策略
一、构建速度优化 1、升级Webpack和Node.js 优化效果:Webpack 4比Webpack 3构建时间降低60%-98%。原因: V8引擎优化(for of替代forEach、Map/Set替代Object)。默认使用更快的md4哈希算法。AST直接从Loa…...

Ubuntu Cursor升级成v1.0
0. 当前版本低 使用当前 Cursor v0.50时 GitHub Copilot Chat 打不开,快捷键也不好用,当看到 Cursor 升级后,还是蛮高兴的 1. 下载 Cursor 下载地址:https://www.cursor.com/cn/downloads 点击下载 Linux (x64) ,…...