第一个cuda例子
来源:互联网 发布:中国瓷器品牌知乎 编辑:程序博客网 时间:2024/05/01 07:50
首先安装CUDA Driver,CUDA Toolkit 以及SDK,大家可以在Nvidia的官方网站上面下载。
我用的编译环境是windows, vs 2005
文本编辑
由于CUDA使用的源文件是.cu文件,因此默认情况下VS不会识别它里面的语法,会把它当成普通的txt文件。
Tools->options,左侧树形图展开Text Editor,在File Extension子项中:
Extension:cu Editor:Microsoft Visual C++
点击Add,这样cu文件就会被当做cpp文件显示了。由于VS不会立即更新,需要重新启动VS。
这样我们在vs中打开cu后缀的文件,c语言的语法就会高亮显示了。
这里以 Visual Studio 2005 为例:
- 首先,建立一个 Win32 Console 模式的 project(在 Application Settings 中记得勾选 Empty project),并新增一个档案,例如 main.cu。
- 在 main.cu 上右键单击,并选择 Properties。点选 General,确定 Tool 的部份是选择 Custom Build Tool。
- 选择 Custom Build Step,在 Command Line 使用以下设定:
- Release 模式:"$(CUDA_BIN_PATH)/nvcc.exe" -ccbin "$(VCInstallDir)bin" -c -DWIN32 -D_CONSOLE -D_MBCS -Xcompiler /EHsc,/W3,/nologo,/Wp64,/O2,/Zi,/MT -I"$(CUDA_INC_PATH)" -o $(ConfigurationName)/$(InputName).obj $(InputFileName)
- Debug 模式:"$(CUDA_BIN_PATH)/nvcc.exe" -ccbin "$(VCInstallDir)bin" -c -D_DEBUG -DWIN32 -D_CONSOLE -D_MBCS -Xcompiler /EHsc,/W3,/nologo,/Wp64,/Od,/Zi,/RTC1,/MTd -I"$(CUDA_INC_PATH)" -o $(ConfigurationName)/$(InputName).obj $(InputFileName)
- 如果想要使用软件仿真的模式,可以新增两个额外的设定:
- EmuRelease 模式:"$(CUDA_BIN_PATH)/nvcc.exe" -ccbin "$(VCInstallDir)bin" -deviceemu -c -DWIN32 -D_CONSOLE -D_MBCS -Xcompiler /EHsc,/W3,/nologo,/Wp64,/O2,/Zi,/MT -I"$(CUDA_INC_PATH)" -o $(ConfigurationName)/$(InputName).obj $(InputFileName)
- EmuDebug 模式:"$(CUDA_BIN_PATH)/nvcc.exe" -ccbin "$(VCInstallDir)bin" -deviceemu -c -D_DEBUG -DWIN32 -D_CONSOLE -D_MBCS -Xcompiler /EHsc,/W3,/nologo,/Wp64,/Od,/Zi,/RTC1,/MTd -I"$(CUDA_INC_PATH)" -o $(ConfigurationName)/$(InputName).obj $(InputFileName)
- 对所有的配置文件,在 Custom Build Step 的 Outputs 中加入 $(ConfigurationName)/$(InputName).obj。
- 选择 project,右键单击选择 Properties,再点选 Linker。对所有的配置文件修改以下设定:
- General/Enable Incremental Linking:No
- General/Additional Library Directories:$(CUDA_LIB_PATH)
- Input/Additional Dependencies:cudart.lib
这里是每个cu的文件的配置。
简单的例子,vs 2005那例
1.创建一个空的Win32 Console 模式的 project(在 Application Settings 中记得勾选 Empty project).
2.创建一个文本文档命名为main.cu,不会插图,就不截图了
3.按上面的方式配置cu文件
4. 在cu文件中编写如下代码
5.编译运行。
- 第一个cuda例子
- 第一个cuda程序
- cuda第一个程序
- 第一个CUDA程序
- 第一个CUDA程序
- 【CUDA】第一个CUDA程序-addVector
- cuda编程---第一个cuda程序
- 第一个CUDA程序-addVector
- 第一个Authorware例子
- 第一个spring例子
- 第一个jstl例子
- 第一个jboss例子
- 第一个lucene例子
- 第一个dwr例子
- 第一个jquery例子
- 第一个freemarker例子
- 第一个JavaSrcipt例子
- 第一个mongoDB例子
- 我的MiniGUI移植之路
- 相对路径与绝对路径
- 设计一个单链表的类模板,使其能够完成单链表的创建和显示
- HTK 语音识别 ASK
- QT编程国际化的点点滴滴
- 第一个cuda例子
- 发几张图
- 循环队列
- 高效FIFO串口双机通信在ARM7上的实现
- ~/.rhosts文件和/etc/hosts.equiv的关系
- myeclipse+axis2
- 每天淘汰自己
- __asm__ __volatile__ GCC的内嵌汇编语法
- Cairngorm 3 libraries 简介 是通过google翻译加上自己的理解得来的