You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
psblas3/openacc/impl/psb_c_oacc_ell_mv_from_fmt.F90

27 lines
765 B
Fortran

submodule (psb_c_oacc_ell_mat_mod) psb_c_oacc_ell_mv_from_fmt_impl
use psb_base_mod
contains
module subroutine psb_c_oacc_ell_mv_from_fmt(a, b, info)
implicit none
class(psb_c_oacc_ell_sparse_mat), intent(inout) :: a
class(psb_c_base_sparse_mat), intent(inout) :: b
integer(psb_ipk_), intent(out) :: info
info = psb_success_
select type(b)
type is (psb_c_coo_sparse_mat)
call a%mv_from_coo(b, info)
class default
call a%free_dev_space()
call a%psb_c_ell_sparse_mat%mv_from_fmt(b, info)
if (info /= 0) return
call a%sync_dev_space()
call a%set_host()
call a%sync()
end select
end subroutine psb_c_oacc_ell_mv_from_fmt
end submodule psb_c_oacc_ell_mv_from_fmt_impl