关于cuda拷贝的速度测试
2024-09-28 16:08:17
由于没有使用profiler,仅仅通过简单的传输函数测试,如下测试了10000个点,1000000个点,100000000个点的速度:
均按时钟周期来计时,通过MAX调整数据
int main(){
clock_t start,finish; int *d_data,*h_data;
h_data = (int *)calloc(MAX, sizeof(int));
memset(h_data,,MAX*sizeof(int));
cudaMalloc((void **) &d_data,MAX*sizeof(int)); start = clock();
cudaMemcpy(d_data,h_data,MAX*sizeof(int),cudaMemcpyHostToDevice);
cudaMemcpy(h_data,d_data,MAX*sizeof(int),cudaMemcpyDeviceToHost);
finish = clock(); cudaFree(d_data);
free(h_data);
cout<<"time is "<<finish-start<<endl;
getchar();
return ;
}
测试结果
测试结果 | 10,000个节点 | 1,000,000个节点 | 100,000,000个节点 |
第一次测试 | 0 | 7 | 822 |
第二次测试 | 0 | 8 | 715 |
第三次测试 | 1 | 7 | 696 |
测试图表如下:
所以在小批量数组的情况下,完全可以在cpu中完成数据操作,然后device上面做简单的加和或者乘积运算。
最新文章
- Business Unit Lookup in Form
- Firemonkey 使用 TImage 显示动画图片
- CAD字体显示问号的解决办法
- Java:String和Date、Timestamp之间的转换
- Java Hour 55 Spring Framework 2
- 判断i在字符串中出现的次数(2016.1.12P141-1)
- mongo快速翻页方法(转载)
- iOS UIWebView 捕获403 、404错误
- java工具类--数据库操作封装类
- JAVA中,字符串STRING与STRINGBUILDER的效率差异
- Struts2学习笔记①
- 使用 Proxy + Promise 实现 依赖收集
- UOJ#370. 【UR #17】滑稽树上滑稽果 动态规划
- ambiguous
- [转]Laravel 数据库实例教程 —— 使用查询构建器实现对数据库的高级查询
- [转帖]UEFI和BIOS
- mysql 时间类型精确到毫秒、微秒及其处理
- tensorflow 的tf.split函数的用法
- 运行vue项目--安装vue脚手架vue cli
- E3-1260L (8M Cache, 2.40 GHz) E3-1265L v2 (8M Cache, 2.50 GHz)