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尽量做同样的事情。

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

  • 相关阅读:
    html优化
    HTML练习(网页计算器)
    hdu--4574 Bombs(dfs)
    Robots at Warehouse(搜索+vector的使用)
    poj 2111 Millenium Leapcow(记忆化搜索)
    Codeforces Round #408 (Div. 2) C. Bank Hacking(暴力啊!暴力)
    Gym
    Gym
    浙江省赛--D
    浙江省赛--C
  • 原文地址:https://www.cnblogs.com/tandychao/p/2064943.html
Copyright © 2011-2022 走看看