CUDA学习笔记03:封装CUDA函数给Qt使用

本文介绍了如何在Qt项目中利用CUDA进行GPU加速图像处理,包括建立VSDLL工程、编写接口并将其集成到Qt项目,以及在Qt中调用CUDA函数进行测试。
摘要由CSDN通过智能技术生成

参考资料

QT 调用 CUDA实现GPU加速图像处理(chapter1)_qt 如何使用cuda加速-CSDN博客

平时工作用Qt多一些,需要将封装的CUDA函数在Qt里调用,这里举一个简单的例子。

1. 建立vs dll工程

在vs2019中建立一个dll工程,代码的例子和之前博客里的一致:

CUDA学习笔记02:测试程序hello world-CSDN博客

新建dll工程:

代码结构如下:

里边的cuda_utils.cu和之前博客里的一样,项目的配置过程也是完全一样的。framework.h和pch.h是系统建立的,具体含义可以查询其他资料,我们建一个头文件utils_gpu.h,用来告诉外部调用的接口:

只要在固定写法后边写上我们函数的定义即可。记得在cuda_utils.cu中添加头文件引用utils_gpu.h,否则无法顺利生产.lib。对项目重新生成,没有问题去目录下查看:

ok,成功生成dll。

2. 在Qt中调用

打开Qt新建一个界面项目(控制台项目也可以),记得项目的目录修改一下:

把shadow build那个选项换掉,选择源文件下的目录进行库生成。

一般做项目都会将第三方库放到一个单独的文件夹中,比如叫3rdparty,我们假如封装了一个CUDA库叫utils_gpu,就可以放在3rdparty中,我们的目录树结构大概是这样:

|--<your_path>
        |--<your_project>
        |--3rdparty
               |--utils_gpu
                     |--include
                     |--lib

        

<your_project>就用来放你自己的Qt项目,然后你建立自己的3rdparty,建立好utils_gpu以及对应目录,将你在vs中的utils_gpu.h放入include目录中,然后将你构建的dll以及lib文件放入lib文件夹中:

include目录:

lib目录:

建立好Qr项目后,在项目中添加外部库:

添加好后,我的构建文件pro是这样的:

这样就可以了。在主线程中使用我们的CUDA函数:

在控制台看结果:

芜湖,hello cuda。成功调用~

  • 9
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值