C++与CUDA混合编程

1 篇文章 0 订阅

  最近在移植一个结构光三维重建的项目,中间呢,就用到了C++和CUDA的混合编程,中间也遇上了一些问题,就稍微总结整理了一下。

  关于如何进行CUDA环境的搭建,网上有很多教程,这里也就不在多说了。

  首先我们新建一个的工程,然后运行一下,得到如下的一个效果。

在这里插入图片描述
  然后我们通过点击解决方案中的「头文件」和「源文件」添加新建项,分别添加.cuh.cu,这两个文件就相当于是C++中的.h.cpp文件。

添加.cuh和.cu两个文件
  在新建的.cuh文件中添加如下代码:

#ifndef CUDA_COMMON_H
#define CUDA_COMMON_H

extern "C" void CUDA_Printf();

#endif

  在新建的.cu文件中添加如下代码:

#include "cuda_common.cuh"
#include "cuda_runtime.h"
#include "stdio.h"

void CUDA_Printf()
{
  printf("This is CUDA Printf");
}

  右键单击解决方案,选择「生成自定义」,选择CUDA。

  右键点击.cu文件,将「属性」->「常规」->「项类型」更改为CUDA C/C++。
之后编译运行,即可得到正确的结果。

  这里面有两个输出语句,其中前一句是分别是C++和CUDA的输出。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值