|
|
|
@ -613,7 +613,6 @@ program pdegenmm
|
|
|
|
|
type(psb_d_cuda_hybg_sparse_mat), target :: ahybg
|
|
|
|
|
#endif
|
|
|
|
|
type(psb_d_cuda_hlg_sparse_mat), target :: ahlg
|
|
|
|
|
! TODO HDIAG E DNSG non hanno nemmeno CSMM
|
|
|
|
|
type(psb_d_cuda_hdiag_sparse_mat), target :: ahdiag
|
|
|
|
|
type(psb_d_cuda_dnsg_sparse_mat), target :: adnsg
|
|
|
|
|
#endif
|
|
|
|
@ -804,43 +803,6 @@ program pdegenmm
|
|
|
|
|
x1 = b_mv%get_vect()
|
|
|
|
|
x2 = b_mv_g%get_vect()
|
|
|
|
|
|
|
|
|
|
! TODO test AXPBY
|
|
|
|
|
call psb_geall(xg,desc_a,info)
|
|
|
|
|
call psb_geasb(xg,desc_a,info,mold=tmold)
|
|
|
|
|
call xg%set(done)
|
|
|
|
|
!call xg%sync()
|
|
|
|
|
call psb_geall(bg,desc_a,info)
|
|
|
|
|
call psb_geasb(bg,desc_a,info,mold=tmold)
|
|
|
|
|
!call bg%set(done+done)
|
|
|
|
|
do i=1,8
|
|
|
|
|
write(*,*) xg%v%v(i)
|
|
|
|
|
end do
|
|
|
|
|
|
|
|
|
|
! ! TODO: Non funziona spgpuDaxpby (axpbyMultiVecDeviceDouble)
|
|
|
|
|
call psb_geaxpby(done,xg,dzero,bg,desc_a,info)
|
|
|
|
|
call psb_cuda_DeviceSync()
|
|
|
|
|
|
|
|
|
|
write(*,*) 'BG ', bg%is_dev(), bg%is_host(), bg%is_sync()
|
|
|
|
|
call bg%sync()
|
|
|
|
|
write(*,*) 'BG ', bg%is_dev(), bg%is_host(), bg%is_sync()
|
|
|
|
|
do i=1,8
|
|
|
|
|
write(*,*) bg%v%v(i)
|
|
|
|
|
end do
|
|
|
|
|
|
|
|
|
|
return
|
|
|
|
|
|
|
|
|
|
! call x_mv_g%set(done)
|
|
|
|
|
! call x_mv_g%sync()
|
|
|
|
|
|
|
|
|
|
! call psb_geaxpby(done,x_mv_g,dzero,b_mv_g,desc_a,info)
|
|
|
|
|
|
|
|
|
|
! call b_mv_g%sync()
|
|
|
|
|
! do i=1,size(b_mv_g%v%v,1)
|
|
|
|
|
! write(*,*) b_mv_g%v%v(i,:)
|
|
|
|
|
! end do
|
|
|
|
|
|
|
|
|
|
! return
|
|
|
|
|
|
|
|
|
|
call psb_barrier(ctxt)
|
|
|
|
|
tt1 = psb_wtime()
|
|
|
|
|
do i=1,ntests
|
|
|
|
|