Fixes for CTXT usage, new GELP templated source.

This commit is contained in:
Salvatore Filippone
2020-11-20 13:10:16 +01:00
parent 7eb653b39d
commit 025a4b5512
41 changed files with 348 additions and 422 deletions
+8 -8
View File
@@ -56,10 +56,10 @@ module psi_c_comm_v_mod
type(psb_desc_type), target :: desc_a
integer(psb_ipk_), optional :: data
end subroutine psi_cswapdata_multivect
subroutine psi_cswap_vidx_vect(ictxt,iicomm,flag,beta,y,idx,&
subroutine psi_cswap_vidx_vect(ctxt,iicomm,flag,beta,y,idx,&
& totxch,totsnd,totrcv,work,info)
import
type(psb_ctxt_type), intent(in) :: ictxt
type(psb_ctxt_type), intent(in) :: ctxt
integer(psb_mpk_), intent(in) :: iicomm
integer(psb_ipk_), intent(in) :: flag
integer(psb_ipk_), intent(out) :: info
@@ -69,10 +69,10 @@ module psi_c_comm_v_mod
class(psb_i_base_vect_type), intent(inout) :: idx
integer(psb_ipk_), intent(in) :: totxch,totsnd, totrcv
end subroutine psi_cswap_vidx_vect
subroutine psi_cswap_vidx_multivect(ictxt,iicomm,flag,beta,y,idx,&
subroutine psi_cswap_vidx_multivect(ctxt,iicomm,flag,beta,y,idx,&
& totxch,totsnd,totrcv,work,info)
import
type(psb_ctxt_type), intent(in) :: ictxt
type(psb_ctxt_type), intent(in) :: ctxt
integer(psb_mpk_), intent(in) :: iicomm
integer(psb_ipk_), intent(in) :: flag
integer(psb_ipk_), intent(out) :: info
@@ -106,10 +106,10 @@ module psi_c_comm_v_mod
type(psb_desc_type), target :: desc_a
integer(psb_ipk_), optional :: data
end subroutine psi_cswaptran_multivect
subroutine psi_ctran_vidx_vect(ictxt,iicomm,flag,beta,y,idx,&
subroutine psi_ctran_vidx_vect(ctxt,iicomm,flag,beta,y,idx,&
& totxch,totsnd,totrcv,work,info)
import
type(psb_ctxt_type), intent(in) :: ictxt
type(psb_ctxt_type), intent(in) :: ctxt
integer(psb_mpk_), intent(in) :: iicomm
integer(psb_ipk_), intent(in) :: flag
integer(psb_ipk_), intent(out) :: info
@@ -119,10 +119,10 @@ module psi_c_comm_v_mod
class(psb_i_base_vect_type), intent(inout) :: idx
integer(psb_ipk_), intent(in) :: totxch,totsnd, totrcv
end subroutine psi_ctran_vidx_vect
subroutine psi_ctran_vidx_multivect(ictxt,iicomm,flag,beta,y,idx,&
subroutine psi_ctran_vidx_multivect(ctxt,iicomm,flag,beta,y,idx,&
& totxch,totsnd,totrcv,work,info)
import
type(psb_ctxt_type), intent(in) :: ictxt
type(psb_ctxt_type), intent(in) :: ctxt
integer(psb_mpk_), intent(in) :: iicomm
integer(psb_ipk_), intent(in) :: flag
integer(psb_ipk_), intent(out) :: info
+8 -8
View File
@@ -56,10 +56,10 @@ module psi_d_comm_v_mod
type(psb_desc_type), target :: desc_a
integer(psb_ipk_), optional :: data
end subroutine psi_dswapdata_multivect
subroutine psi_dswap_vidx_vect(ictxt,iicomm,flag,beta,y,idx,&
subroutine psi_dswap_vidx_vect(ctxt,iicomm,flag,beta,y,idx,&
& totxch,totsnd,totrcv,work,info)
import
type(psb_ctxt_type), intent(in) :: ictxt
type(psb_ctxt_type), intent(in) :: ctxt
integer(psb_mpk_), intent(in) :: iicomm
integer(psb_ipk_), intent(in) :: flag
integer(psb_ipk_), intent(out) :: info
@@ -69,10 +69,10 @@ module psi_d_comm_v_mod
class(psb_i_base_vect_type), intent(inout) :: idx
integer(psb_ipk_), intent(in) :: totxch,totsnd, totrcv
end subroutine psi_dswap_vidx_vect
subroutine psi_dswap_vidx_multivect(ictxt,iicomm,flag,beta,y,idx,&
subroutine psi_dswap_vidx_multivect(ctxt,iicomm,flag,beta,y,idx,&
& totxch,totsnd,totrcv,work,info)
import
type(psb_ctxt_type), intent(in) :: ictxt
type(psb_ctxt_type), intent(in) :: ctxt
integer(psb_mpk_), intent(in) :: iicomm
integer(psb_ipk_), intent(in) :: flag
integer(psb_ipk_), intent(out) :: info
@@ -106,10 +106,10 @@ module psi_d_comm_v_mod
type(psb_desc_type), target :: desc_a
integer(psb_ipk_), optional :: data
end subroutine psi_dswaptran_multivect
subroutine psi_dtran_vidx_vect(ictxt,iicomm,flag,beta,y,idx,&
subroutine psi_dtran_vidx_vect(ctxt,iicomm,flag,beta,y,idx,&
& totxch,totsnd,totrcv,work,info)
import
type(psb_ctxt_type), intent(in) :: ictxt
type(psb_ctxt_type), intent(in) :: ctxt
integer(psb_mpk_), intent(in) :: iicomm
integer(psb_ipk_), intent(in) :: flag
integer(psb_ipk_), intent(out) :: info
@@ -119,10 +119,10 @@ module psi_d_comm_v_mod
class(psb_i_base_vect_type), intent(inout) :: idx
integer(psb_ipk_), intent(in) :: totxch,totsnd, totrcv
end subroutine psi_dtran_vidx_vect
subroutine psi_dtran_vidx_multivect(ictxt,iicomm,flag,beta,y,idx,&
subroutine psi_dtran_vidx_multivect(ctxt,iicomm,flag,beta,y,idx,&
& totxch,totsnd,totrcv,work,info)
import
type(psb_ctxt_type), intent(in) :: ictxt
type(psb_ctxt_type), intent(in) :: ctxt
integer(psb_mpk_), intent(in) :: iicomm
integer(psb_ipk_), intent(in) :: flag
integer(psb_ipk_), intent(out) :: info
+8 -8
View File
@@ -57,10 +57,10 @@ module psi_i_comm_v_mod
type(psb_desc_type), target :: desc_a
integer(psb_ipk_), optional :: data
end subroutine psi_iswapdata_multivect
subroutine psi_iswap_vidx_vect(ictxt,iicomm,flag,beta,y,idx,&
subroutine psi_iswap_vidx_vect(ctxt,iicomm,flag,beta,y,idx,&
& totxch,totsnd,totrcv,work,info)
import
type(psb_ctxt_type), intent(in) :: ictxt
type(psb_ctxt_type), intent(in) :: ctxt
integer(psb_mpk_), intent(in) :: iicomm
integer(psb_ipk_), intent(in) :: flag
integer(psb_ipk_), intent(out) :: info
@@ -70,10 +70,10 @@ module psi_i_comm_v_mod
class(psb_i_base_vect_type), intent(inout) :: idx
integer(psb_ipk_), intent(in) :: totxch,totsnd, totrcv
end subroutine psi_iswap_vidx_vect
subroutine psi_iswap_vidx_multivect(ictxt,iicomm,flag,beta,y,idx,&
subroutine psi_iswap_vidx_multivect(ctxt,iicomm,flag,beta,y,idx,&
& totxch,totsnd,totrcv,work,info)
import
type(psb_ctxt_type), intent(in) :: ictxt
type(psb_ctxt_type), intent(in) :: ctxt
integer(psb_mpk_), intent(in) :: iicomm
integer(psb_ipk_), intent(in) :: flag
integer(psb_ipk_), intent(out) :: info
@@ -107,10 +107,10 @@ module psi_i_comm_v_mod
type(psb_desc_type), target :: desc_a
integer(psb_ipk_), optional :: data
end subroutine psi_iswaptran_multivect
subroutine psi_itran_vidx_vect(ictxt,iicomm,flag,beta,y,idx,&
subroutine psi_itran_vidx_vect(ctxt,iicomm,flag,beta,y,idx,&
& totxch,totsnd,totrcv,work,info)
import
type(psb_ctxt_type), intent(in) :: ictxt
type(psb_ctxt_type), intent(in) :: ctxt
integer(psb_mpk_), intent(in) :: iicomm
integer(psb_ipk_), intent(in) :: flag
integer(psb_ipk_), intent(out) :: info
@@ -120,10 +120,10 @@ module psi_i_comm_v_mod
class(psb_i_base_vect_type), intent(inout) :: idx
integer(psb_ipk_), intent(in) :: totxch,totsnd, totrcv
end subroutine psi_itran_vidx_vect
subroutine psi_itran_vidx_multivect(ictxt,iicomm,flag,beta,y,idx,&
subroutine psi_itran_vidx_multivect(ctxt,iicomm,flag,beta,y,idx,&
& totxch,totsnd,totrcv,work,info)
import
type(psb_ctxt_type), intent(in) :: ictxt
type(psb_ctxt_type), intent(in) :: ctxt
integer(psb_mpk_), intent(in) :: iicomm
integer(psb_ipk_), intent(in) :: flag
integer(psb_ipk_), intent(out) :: info
+8 -8
View File
@@ -58,10 +58,10 @@ module psi_l_comm_v_mod
type(psb_desc_type), target :: desc_a
integer(psb_ipk_), optional :: data
end subroutine psi_lswapdata_multivect
subroutine psi_lswap_vidx_vect(ictxt,iicomm,flag,beta,y,idx,&
subroutine psi_lswap_vidx_vect(ctxt,iicomm,flag,beta,y,idx,&
& totxch,totsnd,totrcv,work,info)
import
type(psb_ctxt_type), intent(in) :: ictxt
type(psb_ctxt_type), intent(in) :: ctxt
integer(psb_mpk_), intent(in) :: iicomm
integer(psb_ipk_), intent(in) :: flag
integer(psb_ipk_), intent(out) :: info
@@ -71,10 +71,10 @@ module psi_l_comm_v_mod
class(psb_i_base_vect_type), intent(inout) :: idx
integer(psb_ipk_), intent(in) :: totxch,totsnd, totrcv
end subroutine psi_lswap_vidx_vect
subroutine psi_lswap_vidx_multivect(ictxt,iicomm,flag,beta,y,idx,&
subroutine psi_lswap_vidx_multivect(ctxt,iicomm,flag,beta,y,idx,&
& totxch,totsnd,totrcv,work,info)
import
type(psb_ctxt_type), intent(in) :: ictxt
type(psb_ctxt_type), intent(in) :: ctxt
integer(psb_mpk_), intent(in) :: iicomm
integer(psb_ipk_), intent(in) :: flag
integer(psb_ipk_), intent(out) :: info
@@ -108,10 +108,10 @@ module psi_l_comm_v_mod
type(psb_desc_type), target :: desc_a
integer(psb_ipk_), optional :: data
end subroutine psi_lswaptran_multivect
subroutine psi_ltran_vidx_vect(ictxt,iicomm,flag,beta,y,idx,&
subroutine psi_ltran_vidx_vect(ctxt,iicomm,flag,beta,y,idx,&
& totxch,totsnd,totrcv,work,info)
import
type(psb_ctxt_type), intent(in) :: ictxt
type(psb_ctxt_type), intent(in) :: ctxt
integer(psb_mpk_), intent(in) :: iicomm
integer(psb_ipk_), intent(in) :: flag
integer(psb_ipk_), intent(out) :: info
@@ -121,10 +121,10 @@ module psi_l_comm_v_mod
class(psb_i_base_vect_type), intent(inout) :: idx
integer(psb_ipk_), intent(in) :: totxch,totsnd, totrcv
end subroutine psi_ltran_vidx_vect
subroutine psi_ltran_vidx_multivect(ictxt,iicomm,flag,beta,y,idx,&
subroutine psi_ltran_vidx_multivect(ctxt,iicomm,flag,beta,y,idx,&
& totxch,totsnd,totrcv,work,info)
import
type(psb_ctxt_type), intent(in) :: ictxt
type(psb_ctxt_type), intent(in) :: ctxt
integer(psb_mpk_), intent(in) :: iicomm
integer(psb_ipk_), intent(in) :: flag
integer(psb_ipk_), intent(out) :: info
+8 -8
View File
@@ -56,10 +56,10 @@ module psi_s_comm_v_mod
type(psb_desc_type), target :: desc_a
integer(psb_ipk_), optional :: data
end subroutine psi_sswapdata_multivect
subroutine psi_sswap_vidx_vect(ictxt,iicomm,flag,beta,y,idx,&
subroutine psi_sswap_vidx_vect(ctxt,iicomm,flag,beta,y,idx,&
& totxch,totsnd,totrcv,work,info)
import
type(psb_ctxt_type), intent(in) :: ictxt
type(psb_ctxt_type), intent(in) :: ctxt
integer(psb_mpk_), intent(in) :: iicomm
integer(psb_ipk_), intent(in) :: flag
integer(psb_ipk_), intent(out) :: info
@@ -69,10 +69,10 @@ module psi_s_comm_v_mod
class(psb_i_base_vect_type), intent(inout) :: idx
integer(psb_ipk_), intent(in) :: totxch,totsnd, totrcv
end subroutine psi_sswap_vidx_vect
subroutine psi_sswap_vidx_multivect(ictxt,iicomm,flag,beta,y,idx,&
subroutine psi_sswap_vidx_multivect(ctxt,iicomm,flag,beta,y,idx,&
& totxch,totsnd,totrcv,work,info)
import
type(psb_ctxt_type), intent(in) :: ictxt
type(psb_ctxt_type), intent(in) :: ctxt
integer(psb_mpk_), intent(in) :: iicomm
integer(psb_ipk_), intent(in) :: flag
integer(psb_ipk_), intent(out) :: info
@@ -106,10 +106,10 @@ module psi_s_comm_v_mod
type(psb_desc_type), target :: desc_a
integer(psb_ipk_), optional :: data
end subroutine psi_sswaptran_multivect
subroutine psi_stran_vidx_vect(ictxt,iicomm,flag,beta,y,idx,&
subroutine psi_stran_vidx_vect(ctxt,iicomm,flag,beta,y,idx,&
& totxch,totsnd,totrcv,work,info)
import
type(psb_ctxt_type), intent(in) :: ictxt
type(psb_ctxt_type), intent(in) :: ctxt
integer(psb_mpk_), intent(in) :: iicomm
integer(psb_ipk_), intent(in) :: flag
integer(psb_ipk_), intent(out) :: info
@@ -119,10 +119,10 @@ module psi_s_comm_v_mod
class(psb_i_base_vect_type), intent(inout) :: idx
integer(psb_ipk_), intent(in) :: totxch,totsnd, totrcv
end subroutine psi_stran_vidx_vect
subroutine psi_stran_vidx_multivect(ictxt,iicomm,flag,beta,y,idx,&
subroutine psi_stran_vidx_multivect(ctxt,iicomm,flag,beta,y,idx,&
& totxch,totsnd,totrcv,work,info)
import
type(psb_ctxt_type), intent(in) :: ictxt
type(psb_ctxt_type), intent(in) :: ctxt
integer(psb_mpk_), intent(in) :: iicomm
integer(psb_ipk_), intent(in) :: flag
integer(psb_ipk_), intent(out) :: info
+8 -8
View File
@@ -56,10 +56,10 @@ module psi_z_comm_v_mod
type(psb_desc_type), target :: desc_a
integer(psb_ipk_), optional :: data
end subroutine psi_zswapdata_multivect
subroutine psi_zswap_vidx_vect(ictxt,iicomm,flag,beta,y,idx,&
subroutine psi_zswap_vidx_vect(ctxt,iicomm,flag,beta,y,idx,&
& totxch,totsnd,totrcv,work,info)
import
type(psb_ctxt_type), intent(in) :: ictxt
type(psb_ctxt_type), intent(in) :: ctxt
integer(psb_mpk_), intent(in) :: iicomm
integer(psb_ipk_), intent(in) :: flag
integer(psb_ipk_), intent(out) :: info
@@ -69,10 +69,10 @@ module psi_z_comm_v_mod
class(psb_i_base_vect_type), intent(inout) :: idx
integer(psb_ipk_), intent(in) :: totxch,totsnd, totrcv
end subroutine psi_zswap_vidx_vect
subroutine psi_zswap_vidx_multivect(ictxt,iicomm,flag,beta,y,idx,&
subroutine psi_zswap_vidx_multivect(ctxt,iicomm,flag,beta,y,idx,&
& totxch,totsnd,totrcv,work,info)
import
type(psb_ctxt_type), intent(in) :: ictxt
type(psb_ctxt_type), intent(in) :: ctxt
integer(psb_mpk_), intent(in) :: iicomm
integer(psb_ipk_), intent(in) :: flag
integer(psb_ipk_), intent(out) :: info
@@ -106,10 +106,10 @@ module psi_z_comm_v_mod
type(psb_desc_type), target :: desc_a
integer(psb_ipk_), optional :: data
end subroutine psi_zswaptran_multivect
subroutine psi_ztran_vidx_vect(ictxt,iicomm,flag,beta,y,idx,&
subroutine psi_ztran_vidx_vect(ctxt,iicomm,flag,beta,y,idx,&
& totxch,totsnd,totrcv,work,info)
import
type(psb_ctxt_type), intent(in) :: ictxt
type(psb_ctxt_type), intent(in) :: ctxt
integer(psb_mpk_), intent(in) :: iicomm
integer(psb_ipk_), intent(in) :: flag
integer(psb_ipk_), intent(out) :: info
@@ -119,10 +119,10 @@ module psi_z_comm_v_mod
class(psb_i_base_vect_type), intent(inout) :: idx
integer(psb_ipk_), intent(in) :: totxch,totsnd, totrcv
end subroutine psi_ztran_vidx_vect
subroutine psi_ztran_vidx_multivect(ictxt,iicomm,flag,beta,y,idx,&
subroutine psi_ztran_vidx_multivect(ctxt,iicomm,flag,beta,y,idx,&
& totxch,totsnd,totrcv,work,info)
import
type(psb_ctxt_type), intent(in) :: ictxt
type(psb_ctxt_type), intent(in) :: ctxt
integer(psb_mpk_), intent(in) :: iicomm
integer(psb_ipk_), intent(in) :: flag
integer(psb_ipk_), intent(out) :: info
+3 -3
View File
@@ -110,13 +110,13 @@ module psi_i_mod
end interface
interface psi_bld_glb_dep_list
subroutine psi_i_bld_glb_csr_dep_list(ctxt,loc_dl,length_dl,c_dep_list,dl_ptr,info)
subroutine psi_i_bld_glb_dep_list(ctxt,loc_dl,length_dl,c_dep_list,dl_ptr,info)
import
integer(psb_ipk_), intent(in) :: ctxt
type(psb_ctxt_type), intent(in) :: ctxt
integer(psb_ipk_), intent(in) :: loc_dl(:), length_dl(0:)
integer(psb_ipk_), allocatable, intent(out) :: c_dep_list(:), dl_ptr(:)
integer(psb_ipk_), intent(out) :: info
end subroutine psi_i_bld_glb_csr_dep_list
end subroutine psi_i_bld_glb_dep_list
end interface
interface psi_extract_loc_dl
+16
View File
@@ -431,5 +431,21 @@ Module psb_c_tools_mod
end function
end interface
interface psb_remap
subroutine psb_c_remap(np_remap, desc_in, a_in, &
& ipd, isrc, nrsrc, naggr, desc_out, a_out, info)
import
implicit none
!....parameters...
integer(psb_ipk_), intent(in) :: np_remap
type(psb_desc_type), intent(inout) :: desc_in
type(psb_cspmat_type), intent(inout) :: a_in
type(psb_cspmat_type), intent(out) :: a_out
type(psb_desc_type), intent(out) :: desc_out
integer(psb_ipk_), intent(out) :: ipd
integer(psb_ipk_), allocatable, intent(out) :: isrc(:), nrsrc(:), naggr(:)
integer(psb_ipk_), intent(out) :: info
end subroutine psb_c_remap
end interface psb_remap
end module psb_c_tools_mod
+16
View File
@@ -431,5 +431,21 @@ Module psb_d_tools_mod
end function
end interface
interface psb_remap
subroutine psb_d_remap(np_remap, desc_in, a_in, &
& ipd, isrc, nrsrc, naggr, desc_out, a_out, info)
import
implicit none
!....parameters...
integer(psb_ipk_), intent(in) :: np_remap
type(psb_desc_type), intent(inout) :: desc_in
type(psb_dspmat_type), intent(inout) :: a_in
type(psb_dspmat_type), intent(out) :: a_out
type(psb_desc_type), intent(out) :: desc_out
integer(psb_ipk_), intent(out) :: ipd
integer(psb_ipk_), allocatable, intent(out) :: isrc(:), nrsrc(:), naggr(:)
integer(psb_ipk_), intent(out) :: info
end subroutine psb_d_remap
end interface psb_remap
end module psb_d_tools_mod
-1
View File
@@ -170,5 +170,4 @@ Module psb_i_tools_mod
end subroutine psb_iins_multivect
end interface
end module psb_i_tools_mod
-1
View File
@@ -170,5 +170,4 @@ Module psb_l_tools_mod
end subroutine psb_lins_multivect
end interface
end module psb_l_tools_mod
+16
View File
@@ -431,5 +431,21 @@ Module psb_s_tools_mod
end function
end interface
interface psb_remap
subroutine psb_s_remap(np_remap, desc_in, a_in, &
& ipd, isrc, nrsrc, naggr, desc_out, a_out, info)
import
implicit none
!....parameters...
integer(psb_ipk_), intent(in) :: np_remap
type(psb_desc_type), intent(inout) :: desc_in
type(psb_sspmat_type), intent(inout) :: a_in
type(psb_sspmat_type), intent(out) :: a_out
type(psb_desc_type), intent(out) :: desc_out
integer(psb_ipk_), intent(out) :: ipd
integer(psb_ipk_), allocatable, intent(out) :: isrc(:), nrsrc(:), naggr(:)
integer(psb_ipk_), intent(out) :: info
end subroutine psb_s_remap
end interface psb_remap
end module psb_s_tools_mod
+16
View File
@@ -431,5 +431,21 @@ Module psb_z_tools_mod
end function
end interface
interface psb_remap
subroutine psb_z_remap(np_remap, desc_in, a_in, &
& ipd, isrc, nrsrc, naggr, desc_out, a_out, info)
import
implicit none
!....parameters...
integer(psb_ipk_), intent(in) :: np_remap
type(psb_desc_type), intent(inout) :: desc_in
type(psb_zspmat_type), intent(inout) :: a_in
type(psb_zspmat_type), intent(out) :: a_out
type(psb_desc_type), intent(out) :: desc_out
integer(psb_ipk_), intent(out) :: ipd
integer(psb_ipk_), allocatable, intent(out) :: isrc(:), nrsrc(:), naggr(:)
integer(psb_ipk_), intent(out) :: info
end subroutine psb_z_remap
end interface psb_remap
end module psb_z_tools_mod