zoukankan      html  css  js  c++  java
  • CUDA程序优化策略

    最近一直在做CUDA程序,优化了CT重建中的FDK算法,又开始结合FDK和volume rendering做点工作。CUDA程序的优化至关重要,常见的优化策略,可以总结为:

    1. 将串行代码并行化。这里说简单也简单,说难也难,比如,对比for循环,就可以很简单的直接拆开,并行。但是,如果是迭代算法,比如Gauss-Seidel迭代求解,那么,就需要整理Gauss-Seidel算法,提起共同项,然后并行。 

    2. 尽量减少Host和Device之间的数据拷贝。拷贝一次,尽量多用。

    3. 在配置kernel的时候,分配合理的thread个数和block个数,使得device的使用达到最大化,充分利用硬件资源。切记:thread不是越多越好。

    4. 保证global memory在访问的时候,memory coalesced。

    5. 尽可能的用share memory取代用global memory对数据进行访问。这个道理,你懂的。

    6. 同一个wrap中,注意尽量减少分支。同一wrap内的thread尽量做同样的事情。

    好啦,先总结到这里。谢谢。 

  • 相关阅读:
    暴躁游戏

    时间记录表格
    好好生活
    JAVA环境的配置
    Java简介
    markdown学习

    Arduino
    Arduino
  • 原文地址:https://www.cnblogs.com/tandychao/p/2064943.html
Copyright © 2011-2022 走看看