CUDA(21)之优化之Reducing
2016-10-25 10:33
162 查看
摘要
本文主要目的是通俗地一针见血地告诉读者CUDA Reducing的概念。
1. 概念
Reducing是一种CUDA内存优化策略,目的是使得CUDA的内存访问连续无间隔。Reducing这一个方法里面体现出了整个CUDA内存优化的思路——通俗地讲:几乎都一个套路,说多就错,维特根斯坦式沉默。
2. 用例子说明问题
一个包含有N个元素的数组求和
求解模型1
求解模型2
分析总结
模型二就比模型一来的好,因为内存访问无间隔且连续。宏观地将,这就是CUDA所有内存优化问题的基本思路。更细地将,这就是所谓的CUDA reducing。
本文主要目的是通俗地一针见血地告诉读者CUDA Reducing的概念。
1. 概念
Reducing是一种CUDA内存优化策略,目的是使得CUDA的内存访问连续无间隔。Reducing这一个方法里面体现出了整个CUDA内存优化的思路——通俗地讲:几乎都一个套路,说多就错,维特根斯坦式沉默。
2. 用例子说明问题
一个包含有N个元素的数组求和
int sum = 0; for (int i = 0; i < N; i++) sum += array[i];
求解模型1
求解模型2
分析总结
模型二就比模型一来的好,因为内存访问无间隔且连续。宏观地将,这就是CUDA所有内存优化问题的基本思路。更细地将,这就是所谓的CUDA reducing。
相关文章推荐
- CUDA: 程序优化的15个策略
- 双边滤波CUDA优化——BilateralFilter CUDA
- CUDA中并行规约(Parallel Reduction)的优化
- MySQL管理与优化(21):MySQL权限与安全
- CUDA优化--核函数--浮点数类型转换
- Cocos2dx游戏开发笔记21:动手学习《Flappy Bird》之继续优化(付源码)
- 推荐CUDA程序优化的15个策略
- CUDA优化实例(五)纹理内存与常量内存
- CUDA 学习(二十二)、优化策略7: 自调优应用程序
- YUV转RGB--使用MMX和CUDA优化
- CUDA程序优化技巧
- NvidiaCUDA通用计算简介及优化方法概述
- UOJ 21 [UR #1]缩进优化
- CUDA性能优化----warp深度解析
- CUDA优化
- android面试(21)-冷启动优化
- CUDA程序优化技巧
- cuda编程优化小技巧之分支优化
- MySQL数据库的21中优化方法,(以供学习)
- 21 视图合并(view merge) --优化主题系列