视觉IMAX的第45篇文章

前言

在上一篇文章中:CUDA8.0+VS2015+Win10开发环境搭建教程中已经介绍了CUDA工程的配置与安装。本篇文章是对CUDA工程的配置作进一步介绍与补充说明。

CUDA工程的建立(两种方法)

第一种方法:

这种方法在上一篇文章​中作了简单介绍,但是尚有不足,此处补全。按照常规方式,新建一个win32控制台程序,新建一个main.cpp源文件。
右键点击工程——>「生成依赖项」——>「生成自定义」(选择cuda生成)。

GPU高性能编程CUDA实战(二)_3d

GPU高性能编程CUDA实战(二)_公众号_02

接下来实施「三步走战略」配置「附加包含目录」、「附加库目录」以及「附加依赖项」。
第一步:配置「附加包含目录」。

GPU高性能编程CUDA实战(二)_公众号_03


注:对于CUDA Samples,有的电脑安装后的路径会隐藏,我们可以在「开始」按钮处查找,见下图。

GPU高性能编程CUDA实战(二)_#include_04



第二步:配置「附加库目录」。

GPU高性能编程CUDA实战(二)_公众号_05



第三步:配置「附加依赖项」

GPU高性能编程CUDA实战(二)_#include_06



最后,验证一下配置是否成功。
在新建的工程main.cpp中输入下述测试代码:


​​#include "stdafx.h"​​
​​#include<iostream>​​
​​#include<stdio.h>​​
​​#include​​"cuda_runtime.h"
​​#include​​"device_launch_parameters.h"
bool InitCUDA(){
int count;

cudaGetDeviceCount(&count);
if (count == 0)

{
fprintf(stderr, "There is no device.\n");
return false;

}
int i;
for (i = 0; i < count; i++)

{
cudaDeviceProp prop;
if(cudaGetDeviceProperties(&prop,i)== cudaSuccess) {
if (prop.major >= 1)

{
break;

}

}
}
if (i == count)

{
fprintf(stderr, "There is no device supporting CUDA 1.x.\n");
return false;

}
cudaSetDevice(i);
return true;
}
int main(){
if (!InitCUDA())

{
return 0;
}
printf("HelloWorld,CUDA has beeninitialized.\n");
system("pause");
return 0;
}

运行结果如图所示。

GPU高性能编程CUDA实战(二)_公众号_07


第二种方法

这种方法,与第一种方法仅在创建工程时存在差异,其他配置方式皆一致。如图:

GPU高性能编程CUDA实战(二)_3d_08


经过上述步骤,便完成了CUDA项目工程的搭建,只要在这个框架下实现你的项目需求即可。

在公众号【视觉IMAX】后台回复「GPU高性能编程CUDA实战」,即可领取该书籍的中文版pdf。

上述内容,如有侵犯版权,请联系作者,会自行删文。


GPU高性能编程CUDA实战(二)_3d_09