- 1、本文档共11页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
MFC环境中CUDA程序的配置与调试
MFC 环境中CUDA 程序的配置与调试
基本功能:CUDA程序在MFC环境中的运行和调试。
编程环境:Windows XP、Visual Studio 2008、CUDA2.3。
内容说明:本示例介绍了如何在MFC 中配置CUDA编程环境,该方法不依赖于其它软件,如
CUDA_VS_Wizard,为独立开发高性能并行运算的MFC应用程序提供了良好的基础,具有
很强的灵活性;示例以Dialog对话框工程为平台,详细介绍了流程设置;希望本文对经常在
MFC环境中工作的CUDA初学者有所帮助。(本文大部分内容来源于作者在工作中的总结,
同时也包含部分网络中查询的资料,在此对所有给予帮助的网友表示感谢!)
Step 0
前期工作:依次安装Driver 、ToolKit 和SDK;
示例安装路径:C:\CUDA\Toolkit、C:\CUDA\SDK;
Step 1
添加头文件和库文件目录:选择(Tools )工具、(Options)选项、(Projects and Solutions)
项目和解决方案、(VC++ Directories)VC++ 目录;
Executable Files (可执行文件): C:\CUDA\Toolkit\bin
Include Files (包含文件): C:\CUDA\Toolkit\include、C:\CUDA\SDK\C\common\inc
Library Files (库文件): C:\CUDA\Toolkit\lib、C:\CUDA\SDK\C\common\lib
Source Files (源文件): C:\CUDA\SDK\C\common\src
选择(Tools )工具、(Options)选项、(Text Editor)文本编辑器、(File Extension)文
件扩展名:编辑器选择Microsoft Visual C++,添加CUDA 文件扩展名 *.cu 和 *.cuh;
Step 2
创建一个MFC 对话框工程,示例名称为CUDAMFC
Step 3
右键点击工程名CUDAMFC,选择 (Custom Build Rules )自定义生成规则、(Find Existing )
查找现有的:添加 C:\CUDA\SDK\C\common\ Cuda.Rules ,完成后勾选 CUDA Build Rule
v2.3.0 ;
Step 4
右键点击工程名CUDAMFC,选择(Property )属性、(Configuration Properties )配置属性、
(Linker )连接器、(General )常规、(Enable Incremental Linking )启用增量连接:设置为
No ;(Additional Library Directories )附加库目录:添加$(CUDA_LIB_PATH);
右键点击工程名CUDAMFC,选择(Property )属性、(Configuration Properties )配置属性、
(Linker )连接器、(Input )输入、(Additional Dependencies )附加依赖项:添加:cudart.lib
和cutil32D.lib ;
Step 5
创建一个存放 CUDA 代码的筛选器,示例名称为CUDAScr,右键点击CUDAScr,并新建
两个源代码文件CUDA_Host.cu 和CUDA_Guest.cu;
//CUDA_Host.cu包含CPU 中运行的代码
#include CUDA_Guest.cu
extern C
void SumOfSquares(int *pNum, int *pResult, int nDataSize)
{
Sum1, 1, 0(pNum, pResult, nDataSize);
}
//CUDA_Guest.cu包含GPU 中运行的代码:
#include math.h
__global__ void Sum(int *pNum, int *pResult, int nDataSize)
{
int i, sum = 0;
for(i = 0; inDataSize; i++)
{
sum += pow(pNum[i], 2.0);
}
*pResult = sum;
}
右键点击CUDA_Guest.cu,选择 (Property )属性、(General )常
您可能关注的文档
最近下载
- 2025年郑州铁路职业技术学院单招职业适应性测试题库【word】.docx VIP
- 2024年部编(统编)人教版初中九年级初三下册道德与法治教学计划及进度表.docx
- 【行业标准】QBT 4586-2013 高尔夫球包.pdf
- 降低不落轮车床的故障停机率徐州机务段.doc
- ASQ Z1.4 2003(R2018)抽样计划必威体育精装版版.pdf
- 理学几何元素的投影.pptx VIP
- 2023年贵州贵州贵安发展集团有限公司招聘考试真题.docx VIP
- 2023年贵州贵州贵安发展集团有限公司招聘笔试真题.docx VIP
- 苏教版四年级下册美术全册教案.pdf VIP
- 2025年郑州铁路职业技术学院单招职业技能测试题库(名校卷).docx VIP
文档评论(0)