为大家推荐一篇文章,关于GPGPU OpenCL/CUDA 高性能编程的10大注意事项的。
我把10个注意事项的每个部分的标题发在这里了,具体的内容大家可以访问以下链接:
http://hc.csdn.net/contents/content_details?type=1&id=341
1.展开循环
2.避免处理非标准化数字
3.通过编译器选项传输常量基本类型数据到kernel,而不是使用private memory
4.如果共享不重要的话,保存一部分变量在private memory而不是local memory
5.访问local memory应避免bank conflicts
6.避免使用”%“操作
7.kernel中重用(Reuse) private memory,为同一变量定义不同的宏
8.对于(a*b+c)操作,尽量使用 fma function
9.在program file 文件中对非kernel的函数使用inline
10.避免分支预测惩罚,应该尽量使得条件判断为真的可能性大
更多精彩内容,尽在
异构开发技术社区。欢迎访问并一起讨论!