Halo2018
V2EX  ›  算法

迫于性能需求,寻 cuda 大神

  •  
  •   Halo2018 · Dec 22, 2018 · 4717 views
    This topic created in 2874 days ago, the information mentioned may be changed or developed.

    目前有一段 BCH 码的编码程序,用 openmp 粗力度并行译码速度一般,正在学习 cuda,请问有 cuda 大佬帮忙改一段程序吗?

    14 replies  •  2019-01-02 00:59:05 +08:00
    lwh0328
    lwh0328
    Dec 22, 2018 via iPhone
    1
    大神不敢说,帮忙可以看一下
    Halo2018
    Halo2018
    OP
    Dec 22, 2018
    2
    @lwh0328
    for (i = 1; i <= t2; i++) {
    s[i] = 0;
    for (j = 0; j < length; j++)
    if (cx[j] != 0)
    s[i] ^= alpha_to[(i * j) % n];
    if (s[i] != 0)
    syn_error = 1;
    s[i] = index_of[s[i]];
    }
    主要是这段代码的改写
    其中的 t2 大概在 3000 length 的长度大概在 16383 返回 s
    Halo2018
    Halo2018
    OP
    Dec 22, 2018
    3
    @lwh0328 谢谢 请问我要怎么并行化比较好
    lwh0328
    lwh0328
    Dec 22, 2018 via iPhone
    4
    你 s[i]每次都先置零,后面的操作和判断就没有意义了呀,是不是我理解错了?
    pwrliang
    pwrliang
    Dec 22, 2018 via Android
    5
    改成 CUDA 的话直接把外侧循环并行展开,保证结果正确了再调优。
    Halo2018
    Halo2018
    OP
    Dec 22, 2018 via iPhone
    6
    @lwh0328 s[i]置 0 类似初始化。
    Halo2018
    Halo2018
    OP
    Dec 22, 2018 via iPhone
    7
    @pwrliang 外侧循环并行展开 判断怎么做
    dongyx
    dongyx
    Dec 23, 2018
    8
    length 和 n 相等吗?
    Halo2018
    Halo2018
    OP
    Dec 23, 2018 via iPhone
    9
    @dongyx length 和 n 是相等的
    Halo2018
    Halo2018
    OP
    Dec 24, 2018
    10
    @dongyx 老哥 有方法吗
    dongyx
    dongyx
    Dec 25, 2018
    11
    @Halo2018 cx[]中 0 的密度低吗?
    Halo2018
    Halo2018
    OP
    Dec 25, 2018 via iPhone
    12
    @dongyx 大概一半吧。
    Halo2018
    Halo2018
    OP
    Dec 25, 2018 via iPhone
    13
    @dongyx 老哥 可以给我把这段程序改下吗
    hackpro
    hackpro
    Jan 2, 2019
    14
    你的 spec 要求是多少 感觉 openmp 应该也能做 要注意变量是否共享
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1388 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 20:18 · PVG 04:18 · LAX 12:18 · JFK 15:18
    ♥ Do have faith in what you're doing.