CUDA静态库的生成调用的简单例子

adagio_chen 2014-08-17 05:49:35
加精
以Windows和VS2008为例:

静态库的生成:

1. 建立一个名为 TestLib 的项目,配置CUDA环境。加入 cudart_static.lib

2.新建文件 test.cu,包含一个简单的Kernel函数以及测试函数。


#include <stdio.h>
__global__
void Kernel()
{
printf("%d ", threadIdx.x);
}

void Test(int n)
{
Kernel<<<1, n>>>();
}


3. 在项目属性中设置输出类型为Static Library (.lib)

4. Build。在Release文件下会生成一个 TestLib.lib 文件。

静态库的调用:

1. 新建一个名为 Test 的项目。注意,这里可以不需要配置CUDA环境。

2. 建立 Test.h 和 main.cpp

// Test.h
#ifndef TEST_H
#define TEST_H

void Test(int n);

#endif



// main.cpp
#include "Test.h"

void main()
{
Test(10);
}


3. 加入 cudart_static.lib 和 TestLib.lb, 加入 TestLib.lib的路径

4. 生成exe.

运行结果:0 1 2 3 4 5 6 7 8 9
...全文
1871 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
fnger 2015-08-20
  • 打赏
  • 举报
回复
为什么要加cudart_static.lib
majian1309 2014-08-22
  • 打赏
  • 举报
回复
学习了!!!!
xusir98 2014-08-20
  • 打赏
  • 举报
回复
Jackery_Shh 2014-08-20
  • 打赏
  • 举报
回复
Kernel<<<1, n>>>();这句话是什么意思呢?
austin9972 2014-08-18
  • 打赏
  • 举报
回复
hugh_z 2014-08-18
  • 打赏
  • 举报
回复
learning
CodeC 2014-08-18
  • 打赏
  • 举报
回复
值得学习,虽然看不懂
uddyss 2014-08-18
  • 打赏
  • 举报
回复
引用 2 楼 gefieder 的回复:
learning
测试
GW786228836 2014-08-18
  • 打赏
  • 举报
回复
hugh_z 2014-08-17
  • 打赏
  • 举报
回复
learning

580

社区成员

发帖
与我相关
我的任务
社区描述
CUDA™是一种由NVIDIA推出的通用并行计算架构,该架构使GPU能够解决复杂的计算问题。 它包含了CUDA指令集架构(ISA)以及GPU内部的并行计算引擎。
社区管理员
  • CUDA编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧