Fixes for remote_vect handling

This commit is contained in:
Salvatore Filippone
2022-06-03 10:41:25 +02:00
parent 4765a8898c
commit db90270ea7
33 changed files with 1688 additions and 712 deletions
+15
View File
@@ -116,4 +116,19 @@ Module psb_c_tools_a_mod
end subroutine psb_cinsvi
end interface
interface psb_remote_vect
subroutine psb_c_remote_vect(n,v,iv,desc_a,x,ix, info)
import
implicit none
integer(psb_ipk_), intent(in) :: n
complex(psb_spk_), intent(in) :: v(:)
integer(psb_lpk_), intent(in) :: iv(:)
type(psb_desc_type),intent(in) :: desc_a
complex(psb_spk_), allocatable, intent(out) :: x(:)
integer(psb_lpk_), allocatable, intent(out) :: ix(:)
integer(psb_ipk_), intent(out) :: info
end subroutine psb_c_remote_vect
end interface psb_remote_vect
end module psb_c_tools_a_mod
+1 -15
View File
@@ -171,7 +171,7 @@ Module psb_c_tools_mod
logical, intent(in), optional :: local
end subroutine psb_cins_multivect
end interface
interface psb_cdbldext
Subroutine psb_ccdbldext(a,desc_a,novr,desc_ov,info,extype)
import
@@ -262,20 +262,6 @@ Module psb_c_tools_mod
end subroutine psb_cspasb
end interface
interface psb_remote_vect
subroutine psb_c_remote_vect(n,v,iv,desc_a,x,ix, info)
import
implicit none
integer(psb_ipk_), intent(in) :: n
complex(psb_spk_), intent(in) :: v(:)
integer(psb_lpk_), intent(in) :: iv(:)
type(psb_desc_type),intent(in) :: desc_a
complex(psb_spk_), allocatable, intent(out) :: x(:)
integer(psb_lpk_), allocatable, intent(out) :: ix(:)
integer(psb_ipk_), intent(out) :: info
end subroutine psb_c_remote_vect
end interface psb_remote_vect
interface psb_remote_mat
subroutine psb_lc_remote_mat(a,desc_a,b, info)
import
+15
View File
@@ -116,4 +116,19 @@ Module psb_d_tools_a_mod
end subroutine psb_dinsvi
end interface
interface psb_remote_vect
subroutine psb_d_remote_vect(n,v,iv,desc_a,x,ix, info)
import
implicit none
integer(psb_ipk_), intent(in) :: n
real(psb_dpk_), intent(in) :: v(:)
integer(psb_lpk_), intent(in) :: iv(:)
type(psb_desc_type),intent(in) :: desc_a
real(psb_dpk_), allocatable, intent(out) :: x(:)
integer(psb_lpk_), allocatable, intent(out) :: ix(:)
integer(psb_ipk_), intent(out) :: info
end subroutine psb_d_remote_vect
end interface psb_remote_vect
end module psb_d_tools_a_mod
+1 -15
View File
@@ -171,7 +171,7 @@ Module psb_d_tools_mod
logical, intent(in), optional :: local
end subroutine psb_dins_multivect
end interface
interface psb_cdbldext
Subroutine psb_dcdbldext(a,desc_a,novr,desc_ov,info,extype)
import
@@ -262,20 +262,6 @@ Module psb_d_tools_mod
end subroutine psb_dspasb
end interface
interface psb_remote_vect
subroutine psb_d_remote_vect(n,v,iv,desc_a,x,ix, info)
import
implicit none
integer(psb_ipk_), intent(in) :: n
real(psb_dpk_), intent(in) :: v(:)
integer(psb_lpk_), intent(in) :: iv(:)
type(psb_desc_type),intent(in) :: desc_a
real(psb_dpk_), allocatable, intent(out) :: x(:)
integer(psb_lpk_), allocatable, intent(out) :: ix(:)
integer(psb_ipk_), intent(out) :: info
end subroutine psb_d_remote_vect
end interface psb_remote_vect
interface psb_remote_mat
subroutine psb_ld_remote_mat(a,desc_a,b, info)
import
+15
View File
@@ -116,4 +116,19 @@ Module psb_e_tools_a_mod
end subroutine psb_einsvi
end interface
interface psb_remote_vect
subroutine psb_e_remote_vect(n,v,iv,desc_a,x,ix, info)
import
implicit none
integer(psb_ipk_), intent(in) :: n
integer(psb_epk_), intent(in) :: v(:)
integer(psb_lpk_), intent(in) :: iv(:)
type(psb_desc_type),intent(in) :: desc_a
integer(psb_epk_), allocatable, intent(out) :: x(:)
integer(psb_lpk_), allocatable, intent(out) :: ix(:)
integer(psb_ipk_), intent(out) :: info
end subroutine psb_e_remote_vect
end interface psb_remote_vect
end module psb_e_tools_a_mod
+15
View File
@@ -116,4 +116,19 @@ Module psb_i2_tools_a_mod
end subroutine psb_i2insvi
end interface
interface psb_remote_vect
subroutine psb_i2_remote_vect(n,v,iv,desc_a,x,ix, info)
import
implicit none
integer(psb_ipk_), intent(in) :: n
integer(psb_i2pk_), intent(in) :: v(:)
integer(psb_lpk_), intent(in) :: iv(:)
type(psb_desc_type),intent(in) :: desc_a
integer(psb_i2pk_), allocatable, intent(out) :: x(:)
integer(psb_lpk_), allocatable, intent(out) :: ix(:)
integer(psb_ipk_), intent(out) :: info
end subroutine psb_i2_remote_vect
end interface psb_remote_vect
end module psb_i2_tools_a_mod
+3 -1
View File
@@ -32,6 +32,8 @@
Module psb_i_tools_mod
use psb_desc_mod, only : psb_desc_type, psb_ipk_, psb_lpk_, psb_success_
use psb_i_vect_mod, only : psb_i_base_vect_type, psb_i_vect_type
use psb_m_tools_a_mod
use psb_e_tools_a_mod
use psb_l_vect_mod, only : psb_l_vect_type
use psb_i_multivect_mod, only : psb_i_base_multivect_type, psb_i_multivect_type
use psi_mod, only : psb_snd, psb_rcv ! Needed only for psb_getelem
@@ -168,5 +170,5 @@ Module psb_i_tools_mod
logical, intent(in), optional :: local
end subroutine psb_iins_multivect
end interface
end module psb_i_tools_mod
+3 -1
View File
@@ -32,6 +32,8 @@
Module psb_l_tools_mod
use psb_desc_mod, only : psb_desc_type, psb_ipk_, psb_lpk_, psb_success_
use psb_l_vect_mod, only : psb_l_base_vect_type, psb_l_vect_type
use psb_m_tools_a_mod
use psb_e_tools_a_mod
! use psb_i_vect_mod, only : psb_i_vect_type
use psb_l_multivect_mod, only : psb_l_base_multivect_type, psb_l_multivect_type
use psi_mod, only : psb_snd, psb_rcv ! Needed only for psb_getelem
@@ -168,5 +170,5 @@ Module psb_l_tools_mod
logical, intent(in), optional :: local
end subroutine psb_lins_multivect
end interface
end module psb_l_tools_mod
+15
View File
@@ -116,4 +116,19 @@ Module psb_m_tools_a_mod
end subroutine psb_minsvi
end interface
interface psb_remote_vect
subroutine psb_m_remote_vect(n,v,iv,desc_a,x,ix, info)
import
implicit none
integer(psb_ipk_), intent(in) :: n
integer(psb_mpk_), intent(in) :: v(:)
integer(psb_lpk_), intent(in) :: iv(:)
type(psb_desc_type),intent(in) :: desc_a
integer(psb_mpk_), allocatable, intent(out) :: x(:)
integer(psb_lpk_), allocatable, intent(out) :: ix(:)
integer(psb_ipk_), intent(out) :: info
end subroutine psb_m_remote_vect
end interface psb_remote_vect
end module psb_m_tools_a_mod
+15
View File
@@ -116,4 +116,19 @@ Module psb_s_tools_a_mod
end subroutine psb_sinsvi
end interface
interface psb_remote_vect
subroutine psb_s_remote_vect(n,v,iv,desc_a,x,ix, info)
import
implicit none
integer(psb_ipk_), intent(in) :: n
real(psb_spk_), intent(in) :: v(:)
integer(psb_lpk_), intent(in) :: iv(:)
type(psb_desc_type),intent(in) :: desc_a
real(psb_spk_), allocatable, intent(out) :: x(:)
integer(psb_lpk_), allocatable, intent(out) :: ix(:)
integer(psb_ipk_), intent(out) :: info
end subroutine psb_s_remote_vect
end interface psb_remote_vect
end module psb_s_tools_a_mod
+1 -15
View File
@@ -171,7 +171,7 @@ Module psb_s_tools_mod
logical, intent(in), optional :: local
end subroutine psb_sins_multivect
end interface
interface psb_cdbldext
Subroutine psb_scdbldext(a,desc_a,novr,desc_ov,info,extype)
import
@@ -262,20 +262,6 @@ Module psb_s_tools_mod
end subroutine psb_sspasb
end interface
interface psb_remote_vect
subroutine psb_s_remote_vect(n,v,iv,desc_a,x,ix, info)
import
implicit none
integer(psb_ipk_), intent(in) :: n
real(psb_spk_), intent(in) :: v(:)
integer(psb_lpk_), intent(in) :: iv(:)
type(psb_desc_type),intent(in) :: desc_a
real(psb_spk_), allocatable, intent(out) :: x(:)
integer(psb_lpk_), allocatable, intent(out) :: ix(:)
integer(psb_ipk_), intent(out) :: info
end subroutine psb_s_remote_vect
end interface psb_remote_vect
interface psb_remote_mat
subroutine psb_ls_remote_mat(a,desc_a,b, info)
import
+15
View File
@@ -116,4 +116,19 @@ Module psb_z_tools_a_mod
end subroutine psb_zinsvi
end interface
interface psb_remote_vect
subroutine psb_z_remote_vect(n,v,iv,desc_a,x,ix, info)
import
implicit none
integer(psb_ipk_), intent(in) :: n
complex(psb_dpk_), intent(in) :: v(:)
integer(psb_lpk_), intent(in) :: iv(:)
type(psb_desc_type),intent(in) :: desc_a
complex(psb_dpk_), allocatable, intent(out) :: x(:)
integer(psb_lpk_), allocatable, intent(out) :: ix(:)
integer(psb_ipk_), intent(out) :: info
end subroutine psb_z_remote_vect
end interface psb_remote_vect
end module psb_z_tools_a_mod
+1 -15
View File
@@ -171,7 +171,7 @@ Module psb_z_tools_mod
logical, intent(in), optional :: local
end subroutine psb_zins_multivect
end interface
interface psb_cdbldext
Subroutine psb_zcdbldext(a,desc_a,novr,desc_ov,info,extype)
import
@@ -262,20 +262,6 @@ Module psb_z_tools_mod
end subroutine psb_zspasb
end interface
interface psb_remote_vect
subroutine psb_z_remote_vect(n,v,iv,desc_a,x,ix, info)
import
implicit none
integer(psb_ipk_), intent(in) :: n
complex(psb_dpk_), intent(in) :: v(:)
integer(psb_lpk_), intent(in) :: iv(:)
type(psb_desc_type),intent(in) :: desc_a
complex(psb_dpk_), allocatable, intent(out) :: x(:)
integer(psb_lpk_), allocatable, intent(out) :: ix(:)
integer(psb_ipk_), intent(out) :: info
end subroutine psb_z_remote_vect
end interface psb_remote_vect
interface psb_remote_mat
subroutine psb_lz_remote_mat(a,desc_a,b, info)
import