Defines a fused Conjugate Gradient method for accelerators.
|
subroutine | device_fusedcg_cpld_part1 (a1_d, a2_d, a3_d, b1_d, b2_d, b3_d, tmp_d, n) |
|
subroutine | device_fusedcg_cpld_update_p (p1_d, p2_d, p3_d, z1_d, z2_d, z3_d, po1_d, po2_d, po3_d, beta, n) |
|
subroutine | device_fusedcg_cpld_update_x (x1_d, x2_d, x3_d, p1_d, p2_d, p3_d, alpha, p_cur, n) |
|
real(kind=rp) function | device_fusedcg_cpld_part2 (a1_d, a2_d, a3_d, b_d, c1_d, c2_d, c3_d, alpha_d, alpha, p_cur, n) |
|
subroutine | fusedcg_cpld_device_init (this, n, max_iter, M, rel_tol, abs_tol, monitor) |
| Initialise a fused PCG solver. More...
|
|
subroutine | fusedcg_cpld_device_free (this) |
| Deallocate a pipelined PCG solver. More...
|
|
type(ksp_monitor_t) function, dimension(3) | fusedcg_cpld_device_solve_coupled (this, Ax, x, y, z, fx, fy, fz, n, coef, blstx, blsty, blstz, gs_h, niter) |
| Pipelined PCG solve coupled solve. More...
|
|
type(ksp_monitor_t) function | fusedcg_cpld_device_solve (this, Ax, x, f, n, coef, blst, gs_h, niter) |
| Pipelined PCG solve. More...
|
|