面向多尺度拓扑优化的渐进均匀化GPU并行算法研究
夏兆辉,刘健力,高百川,聂涛,余琛,陈龙,余金桂

Efficient GPU parallel strategy for multi-scale topology optimization via asymptotic homogenization
Zhaohui XIA,Jianli LIU,Baichuan GAO,Tao NIE,Chen YU,Long CHEN,Jingui YU
表4 并行共轭梯度算法
Table 4 Parallel conjugate gradient algorithm
Segment 1-CG,共轭梯度算法

1: a=1

2: r0=0

3: d_Ax ⇐ matA*d_x----cusparseSpMV ( )

4: d_r-a*d_Ax+d_r----cublasSaxpy ( )

5: r1←d_r.*d_r----cublasSdot ( )

6: k=1

7: while r1>tol*tol && k<=max_iter // 条件判断

8: if k>1

9: beta=r1/r0;

10: d_p ⇐ beta*d_p----cublasSscal ( )

11: d_pa*d_r+d_p----cublasSaxpy ( )

12: end

13: else

14: d_pd_r----cublasScopy ( )

15: end

16: d_Ax ⇐ mat A*d_p----cusparseSpMV ( )

17: dot←d_p.*d_Ax----cublasSdot ( )

18: alpha=r1/dot

19: alpha←numerator / denominator

20: d_x ⇐ alpha*d_p+d_x----cublasSaxpy ( )

21: d_r-alpha*d_p+d_r---cublasSaxpy ( )

22: r0=r1;

23: r1←d_r.*d_r----cublasSdot ( )

24: k++

25: end