diff --git a/base/comm/internals/psi_cswapdata.F90 b/base/comm/internals/psi_cswapdata.F90 index 4b5e0f61..9d350044 100644 --- a/base/comm/internals/psi_cswapdata.F90 +++ b/base/comm/internals/psi_cswapdata.F90 @@ -263,7 +263,7 @@ subroutine psi_cswap_vidx_vect(iictxt,iicomm,flag,beta,y,idx, & nesd = idx%v(pnti+nerv+psb_n_elem_send_) rcv_pt = 1+pnti+psb_n_elem_recv_ - call psb_get_rank(prcid(i),ictxt,proc_to_comm) + prcid(i) = psb_get_rank(ictxt,proc_to_comm) if ((nerv>0).and.(proc_to_comm /= me)) then if (debug) write(*,*) me,'Posting receive from',prcid(i),rcv_pt p2ptag = psb_complex_swap_tag @@ -602,7 +602,7 @@ subroutine psi_cswap_vidx_multivect(iictxt,iicomm,flag,beta,y,idx, & proc_to_comm = idx%v(pnti+psb_proc_id_) nerv = idx%v(pnti+psb_n_elem_recv_) nesd = idx%v(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(i),ictxt,proc_to_comm) + prcid(i) = psb_get_rank(ictxt,proc_to_comm) if ((nerv>0).and.(proc_to_comm /= me)) then if (debug) write(*,*) me,'Posting receive from',prcid(i),rcv_pt p2ptag = psb_complex_swap_tag diff --git a/base/comm/internals/psi_cswapdata_a.F90 b/base/comm/internals/psi_cswapdata_a.F90 index d0b06fa3..ebf5b2f2 100644 --- a/base/comm/internals/psi_cswapdata_a.F90 +++ b/base/comm/internals/psi_cswapdata_a.F90 @@ -236,7 +236,7 @@ subroutine psi_cswapidxm(iictxt,iicomm,flag,n,beta,y,idx, & proc_to_comm = idx(pnti+psb_proc_id_) nerv = idx(pnti+psb_n_elem_recv_) nesd = idx(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(proc_to_comm),ictxt,proc_to_comm) + prcid(proc_to_comm) = psb_get_rank(ictxt,proc_to_comm) brvidx(proc_to_comm) = rcv_pt rvsz(proc_to_comm) = n*nerv @@ -349,7 +349,7 @@ subroutine psi_cswapidxm(iictxt,iicomm,flag,n,beta,y,idx, & proc_to_comm = idx(pnti+psb_proc_id_) nerv = idx(pnti+psb_n_elem_recv_) nesd = idx(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(i),ictxt,proc_to_comm) + prcid(i) = psb_get_rank(ictxt,proc_to_comm) if ((nerv>0).and.(proc_to_comm /= me)) then p2ptag = psb_complex_swap_tag call mpi_irecv(rcvbuf(rcv_pt),n*nerv,& @@ -721,7 +721,7 @@ subroutine psi_cswapidxv(iictxt,iicomm,flag,beta,y,idx, & proc_to_comm = idx(pnti+psb_proc_id_) nerv = idx(pnti+psb_n_elem_recv_) nesd = idx(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(proc_to_comm),ictxt,proc_to_comm) + prcid(proc_to_comm) = psb_get_rank(ictxt,proc_to_comm) brvidx(proc_to_comm) = rcv_pt rvsz(proc_to_comm) = nerv @@ -835,7 +835,7 @@ subroutine psi_cswapidxv(iictxt,iicomm,flag,beta,y,idx, & nerv = idx(pnti+psb_n_elem_recv_) nesd = idx(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(i),ictxt,proc_to_comm) + prcid(i) = psb_get_rank(ictxt,proc_to_comm) if ((nerv>0).and.(proc_to_comm /= me)) then p2ptag = psb_complex_swap_tag call mpi_irecv(rcvbuf(rcv_pt),nerv,& diff --git a/base/comm/internals/psi_cswaptran.F90 b/base/comm/internals/psi_cswaptran.F90 index 2953783a..93910dd8 100644 --- a/base/comm/internals/psi_cswaptran.F90 +++ b/base/comm/internals/psi_cswaptran.F90 @@ -269,7 +269,7 @@ subroutine psi_ctran_vidx_vect(iictxt,iicomm,flag,beta,y,idx,& snd_pt = 1+pnti+nerv+psb_n_elem_send_ rcv_pt = 1+pnti+psb_n_elem_recv_ - call psb_get_rank(prcid(i),ictxt,proc_to_comm) + prcid(i) = psb_get_rank(ictxt,proc_to_comm) if ((nesd>0).and.(proc_to_comm /= me)) then if (debug) write(*,*) me,'Posting receive from',prcid(i),rcv_pt call mpi_irecv(y%combuf(snd_pt),nesd,& @@ -616,7 +616,7 @@ subroutine psi_ctran_vidx_multivect(iictxt,iicomm,flag,beta,y,idx,& proc_to_comm = idx%v(pnti+psb_proc_id_) nerv = idx%v(pnti+psb_n_elem_recv_) nesd = idx%v(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(i),ictxt,proc_to_comm) + prcid(i) = psb_get_rank(ictxt,proc_to_comm) if ((nesd>0).and.(proc_to_comm /= me)) then if (debug) write(*,*) me,'Posting receive from',prcid(i),snd_pt call mpi_irecv(y%combuf(snd_pt),n*nesd,& diff --git a/base/comm/internals/psi_cswaptran_a.F90 b/base/comm/internals/psi_cswaptran_a.F90 index 4a8b2595..63f98df4 100644 --- a/base/comm/internals/psi_cswaptran_a.F90 +++ b/base/comm/internals/psi_cswaptran_a.F90 @@ -241,7 +241,7 @@ subroutine psi_ctranidxm(iictxt,iicomm,flag,n,beta,y,idx,& proc_to_comm = idx(pnti+psb_proc_id_) nerv = idx(pnti+psb_n_elem_recv_) nesd = idx(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(proc_to_comm),ictxt,proc_to_comm) + prcid(proc_to_comm) = psb_get_rank(ictxt,proc_to_comm) brvidx(proc_to_comm) = rcv_pt rvsz(proc_to_comm) = n*nerv @@ -359,7 +359,7 @@ subroutine psi_ctranidxm(iictxt,iicomm,flag,n,beta,y,idx,& proc_to_comm = idx(pnti+psb_proc_id_) nerv = idx(pnti+psb_n_elem_recv_) nesd = idx(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(i),ictxt,proc_to_comm) + prcid(i) = psb_get_rank(ictxt,proc_to_comm) if ((nesd>0).and.(proc_to_comm /= me)) then p2ptag = psb_complex_swap_tag call mpi_irecv(sndbuf(snd_pt),n*nesd,& @@ -734,7 +734,7 @@ subroutine psi_ctranidxv(iictxt,iicomm,flag,beta,y,idx,& proc_to_comm = idx(pnti+psb_proc_id_) nerv = idx(pnti+psb_n_elem_recv_) nesd = idx(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(proc_to_comm),ictxt,proc_to_comm) + prcid(proc_to_comm) = psb_get_rank(ictxt,proc_to_comm) brvidx(proc_to_comm) = rcv_pt rvsz(proc_to_comm) = nerv @@ -852,7 +852,7 @@ subroutine psi_ctranidxv(iictxt,iicomm,flag,beta,y,idx,& proc_to_comm = idx(pnti+psb_proc_id_) nerv = idx(pnti+psb_n_elem_recv_) nesd = idx(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(i),ictxt,proc_to_comm) + prcid(i) = psb_get_rank(ictxt,proc_to_comm) if ((nesd>0).and.(proc_to_comm /= me)) then p2ptag = psb_complex_swap_tag call mpi_irecv(sndbuf(snd_pt),nesd,& diff --git a/base/comm/internals/psi_dswapdata.F90 b/base/comm/internals/psi_dswapdata.F90 index ff0845e6..929db361 100644 --- a/base/comm/internals/psi_dswapdata.F90 +++ b/base/comm/internals/psi_dswapdata.F90 @@ -263,7 +263,7 @@ subroutine psi_dswap_vidx_vect(iictxt,iicomm,flag,beta,y,idx, & nesd = idx%v(pnti+nerv+psb_n_elem_send_) rcv_pt = 1+pnti+psb_n_elem_recv_ - call psb_get_rank(prcid(i),ictxt,proc_to_comm) + prcid(i) = psb_get_rank(ictxt,proc_to_comm) if ((nerv>0).and.(proc_to_comm /= me)) then if (debug) write(*,*) me,'Posting receive from',prcid(i),rcv_pt p2ptag = psb_double_swap_tag @@ -602,7 +602,7 @@ subroutine psi_dswap_vidx_multivect(iictxt,iicomm,flag,beta,y,idx, & proc_to_comm = idx%v(pnti+psb_proc_id_) nerv = idx%v(pnti+psb_n_elem_recv_) nesd = idx%v(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(i),ictxt,proc_to_comm) + prcid(i) = psb_get_rank(ictxt,proc_to_comm) if ((nerv>0).and.(proc_to_comm /= me)) then if (debug) write(*,*) me,'Posting receive from',prcid(i),rcv_pt p2ptag = psb_double_swap_tag diff --git a/base/comm/internals/psi_dswapdata_a.F90 b/base/comm/internals/psi_dswapdata_a.F90 index ec330ef7..c6c52fbc 100644 --- a/base/comm/internals/psi_dswapdata_a.F90 +++ b/base/comm/internals/psi_dswapdata_a.F90 @@ -236,7 +236,7 @@ subroutine psi_dswapidxm(iictxt,iicomm,flag,n,beta,y,idx, & proc_to_comm = idx(pnti+psb_proc_id_) nerv = idx(pnti+psb_n_elem_recv_) nesd = idx(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(proc_to_comm),ictxt,proc_to_comm) + prcid(proc_to_comm) = psb_get_rank(ictxt,proc_to_comm) brvidx(proc_to_comm) = rcv_pt rvsz(proc_to_comm) = n*nerv @@ -349,7 +349,7 @@ subroutine psi_dswapidxm(iictxt,iicomm,flag,n,beta,y,idx, & proc_to_comm = idx(pnti+psb_proc_id_) nerv = idx(pnti+psb_n_elem_recv_) nesd = idx(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(i),ictxt,proc_to_comm) + prcid(i) = psb_get_rank(ictxt,proc_to_comm) if ((nerv>0).and.(proc_to_comm /= me)) then p2ptag = psb_double_swap_tag call mpi_irecv(rcvbuf(rcv_pt),n*nerv,& @@ -721,7 +721,7 @@ subroutine psi_dswapidxv(iictxt,iicomm,flag,beta,y,idx, & proc_to_comm = idx(pnti+psb_proc_id_) nerv = idx(pnti+psb_n_elem_recv_) nesd = idx(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(proc_to_comm),ictxt,proc_to_comm) + prcid(proc_to_comm) = psb_get_rank(ictxt,proc_to_comm) brvidx(proc_to_comm) = rcv_pt rvsz(proc_to_comm) = nerv @@ -835,7 +835,7 @@ subroutine psi_dswapidxv(iictxt,iicomm,flag,beta,y,idx, & nerv = idx(pnti+psb_n_elem_recv_) nesd = idx(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(i),ictxt,proc_to_comm) + prcid(i) = psb_get_rank(ictxt,proc_to_comm) if ((nerv>0).and.(proc_to_comm /= me)) then p2ptag = psb_double_swap_tag call mpi_irecv(rcvbuf(rcv_pt),nerv,& diff --git a/base/comm/internals/psi_dswaptran.F90 b/base/comm/internals/psi_dswaptran.F90 index 179e083a..1ac09bfb 100644 --- a/base/comm/internals/psi_dswaptran.F90 +++ b/base/comm/internals/psi_dswaptran.F90 @@ -269,7 +269,7 @@ subroutine psi_dtran_vidx_vect(iictxt,iicomm,flag,beta,y,idx,& snd_pt = 1+pnti+nerv+psb_n_elem_send_ rcv_pt = 1+pnti+psb_n_elem_recv_ - call psb_get_rank(prcid(i),ictxt,proc_to_comm) + prcid(i) = psb_get_rank(ictxt,proc_to_comm) if ((nesd>0).and.(proc_to_comm /= me)) then if (debug) write(*,*) me,'Posting receive from',prcid(i),rcv_pt call mpi_irecv(y%combuf(snd_pt),nesd,& @@ -616,7 +616,7 @@ subroutine psi_dtran_vidx_multivect(iictxt,iicomm,flag,beta,y,idx,& proc_to_comm = idx%v(pnti+psb_proc_id_) nerv = idx%v(pnti+psb_n_elem_recv_) nesd = idx%v(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(i),ictxt,proc_to_comm) + prcid(i) = psb_get_rank(ictxt,proc_to_comm) if ((nesd>0).and.(proc_to_comm /= me)) then if (debug) write(*,*) me,'Posting receive from',prcid(i),snd_pt call mpi_irecv(y%combuf(snd_pt),n*nesd,& diff --git a/base/comm/internals/psi_dswaptran_a.F90 b/base/comm/internals/psi_dswaptran_a.F90 index ba648a15..ffc4be1b 100644 --- a/base/comm/internals/psi_dswaptran_a.F90 +++ b/base/comm/internals/psi_dswaptran_a.F90 @@ -241,7 +241,7 @@ subroutine psi_dtranidxm(iictxt,iicomm,flag,n,beta,y,idx,& proc_to_comm = idx(pnti+psb_proc_id_) nerv = idx(pnti+psb_n_elem_recv_) nesd = idx(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(proc_to_comm),ictxt,proc_to_comm) + prcid(proc_to_comm) = psb_get_rank(ictxt,proc_to_comm) brvidx(proc_to_comm) = rcv_pt rvsz(proc_to_comm) = n*nerv @@ -359,7 +359,7 @@ subroutine psi_dtranidxm(iictxt,iicomm,flag,n,beta,y,idx,& proc_to_comm = idx(pnti+psb_proc_id_) nerv = idx(pnti+psb_n_elem_recv_) nesd = idx(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(i),ictxt,proc_to_comm) + prcid(i) = psb_get_rank(ictxt,proc_to_comm) if ((nesd>0).and.(proc_to_comm /= me)) then p2ptag = psb_double_swap_tag call mpi_irecv(sndbuf(snd_pt),n*nesd,& @@ -734,7 +734,7 @@ subroutine psi_dtranidxv(iictxt,iicomm,flag,beta,y,idx,& proc_to_comm = idx(pnti+psb_proc_id_) nerv = idx(pnti+psb_n_elem_recv_) nesd = idx(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(proc_to_comm),ictxt,proc_to_comm) + prcid(proc_to_comm) = psb_get_rank(ictxt,proc_to_comm) brvidx(proc_to_comm) = rcv_pt rvsz(proc_to_comm) = nerv @@ -852,7 +852,7 @@ subroutine psi_dtranidxv(iictxt,iicomm,flag,beta,y,idx,& proc_to_comm = idx(pnti+psb_proc_id_) nerv = idx(pnti+psb_n_elem_recv_) nesd = idx(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(i),ictxt,proc_to_comm) + prcid(i) = psb_get_rank(ictxt,proc_to_comm) if ((nesd>0).and.(proc_to_comm /= me)) then p2ptag = psb_double_swap_tag call mpi_irecv(sndbuf(snd_pt),nesd,& diff --git a/base/comm/internals/psi_eswapdata_a.F90 b/base/comm/internals/psi_eswapdata_a.F90 index a697ad91..0c0f7220 100644 --- a/base/comm/internals/psi_eswapdata_a.F90 +++ b/base/comm/internals/psi_eswapdata_a.F90 @@ -236,7 +236,7 @@ subroutine psi_eswapidxm(iictxt,iicomm,flag,n,beta,y,idx, & proc_to_comm = idx(pnti+psb_proc_id_) nerv = idx(pnti+psb_n_elem_recv_) nesd = idx(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(proc_to_comm),ictxt,proc_to_comm) + prcid(proc_to_comm) = psb_get_rank(ictxt,proc_to_comm) brvidx(proc_to_comm) = rcv_pt rvsz(proc_to_comm) = n*nerv @@ -349,7 +349,7 @@ subroutine psi_eswapidxm(iictxt,iicomm,flag,n,beta,y,idx, & proc_to_comm = idx(pnti+psb_proc_id_) nerv = idx(pnti+psb_n_elem_recv_) nesd = idx(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(i),ictxt,proc_to_comm) + prcid(i) = psb_get_rank(ictxt,proc_to_comm) if ((nerv>0).and.(proc_to_comm /= me)) then p2ptag = psb_int8_swap_tag call mpi_irecv(rcvbuf(rcv_pt),n*nerv,& @@ -721,7 +721,7 @@ subroutine psi_eswapidxv(iictxt,iicomm,flag,beta,y,idx, & proc_to_comm = idx(pnti+psb_proc_id_) nerv = idx(pnti+psb_n_elem_recv_) nesd = idx(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(proc_to_comm),ictxt,proc_to_comm) + prcid(proc_to_comm) = psb_get_rank(ictxt,proc_to_comm) brvidx(proc_to_comm) = rcv_pt rvsz(proc_to_comm) = nerv @@ -835,7 +835,7 @@ subroutine psi_eswapidxv(iictxt,iicomm,flag,beta,y,idx, & nerv = idx(pnti+psb_n_elem_recv_) nesd = idx(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(i),ictxt,proc_to_comm) + prcid(i) = psb_get_rank(ictxt,proc_to_comm) if ((nerv>0).and.(proc_to_comm /= me)) then p2ptag = psb_int8_swap_tag call mpi_irecv(rcvbuf(rcv_pt),nerv,& diff --git a/base/comm/internals/psi_eswaptran_a.F90 b/base/comm/internals/psi_eswaptran_a.F90 index dec5932e..2a78e47d 100644 --- a/base/comm/internals/psi_eswaptran_a.F90 +++ b/base/comm/internals/psi_eswaptran_a.F90 @@ -241,7 +241,7 @@ subroutine psi_etranidxm(iictxt,iicomm,flag,n,beta,y,idx,& proc_to_comm = idx(pnti+psb_proc_id_) nerv = idx(pnti+psb_n_elem_recv_) nesd = idx(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(proc_to_comm),ictxt,proc_to_comm) + prcid(proc_to_comm) = psb_get_rank(ictxt,proc_to_comm) brvidx(proc_to_comm) = rcv_pt rvsz(proc_to_comm) = n*nerv @@ -359,7 +359,7 @@ subroutine psi_etranidxm(iictxt,iicomm,flag,n,beta,y,idx,& proc_to_comm = idx(pnti+psb_proc_id_) nerv = idx(pnti+psb_n_elem_recv_) nesd = idx(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(i),ictxt,proc_to_comm) + prcid(i) = psb_get_rank(ictxt,proc_to_comm) if ((nesd>0).and.(proc_to_comm /= me)) then p2ptag = psb_int8_swap_tag call mpi_irecv(sndbuf(snd_pt),n*nesd,& @@ -734,7 +734,7 @@ subroutine psi_etranidxv(iictxt,iicomm,flag,beta,y,idx,& proc_to_comm = idx(pnti+psb_proc_id_) nerv = idx(pnti+psb_n_elem_recv_) nesd = idx(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(proc_to_comm),ictxt,proc_to_comm) + prcid(proc_to_comm) = psb_get_rank(ictxt,proc_to_comm) brvidx(proc_to_comm) = rcv_pt rvsz(proc_to_comm) = nerv @@ -852,7 +852,7 @@ subroutine psi_etranidxv(iictxt,iicomm,flag,beta,y,idx,& proc_to_comm = idx(pnti+psb_proc_id_) nerv = idx(pnti+psb_n_elem_recv_) nesd = idx(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(i),ictxt,proc_to_comm) + prcid(i) = psb_get_rank(ictxt,proc_to_comm) if ((nesd>0).and.(proc_to_comm /= me)) then p2ptag = psb_int8_swap_tag call mpi_irecv(sndbuf(snd_pt),nesd,& diff --git a/base/comm/internals/psi_iswapdata.F90 b/base/comm/internals/psi_iswapdata.F90 index 4fa0fffb..4774da99 100644 --- a/base/comm/internals/psi_iswapdata.F90 +++ b/base/comm/internals/psi_iswapdata.F90 @@ -263,7 +263,7 @@ subroutine psi_iswap_vidx_vect(iictxt,iicomm,flag,beta,y,idx, & nesd = idx%v(pnti+nerv+psb_n_elem_send_) rcv_pt = 1+pnti+psb_n_elem_recv_ - call psb_get_rank(prcid(i),ictxt,proc_to_comm) + prcid(i) = psb_get_rank(ictxt,proc_to_comm) if ((nerv>0).and.(proc_to_comm /= me)) then if (debug) write(*,*) me,'Posting receive from',prcid(i),rcv_pt p2ptag = psb_int_swap_tag @@ -602,7 +602,7 @@ subroutine psi_iswap_vidx_multivect(iictxt,iicomm,flag,beta,y,idx, & proc_to_comm = idx%v(pnti+psb_proc_id_) nerv = idx%v(pnti+psb_n_elem_recv_) nesd = idx%v(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(i),ictxt,proc_to_comm) + prcid(i) = psb_get_rank(ictxt,proc_to_comm) if ((nerv>0).and.(proc_to_comm /= me)) then if (debug) write(*,*) me,'Posting receive from',prcid(i),rcv_pt p2ptag = psb_int_swap_tag diff --git a/base/comm/internals/psi_iswaptran.F90 b/base/comm/internals/psi_iswaptran.F90 index 6985b7c5..2fb590e5 100644 --- a/base/comm/internals/psi_iswaptran.F90 +++ b/base/comm/internals/psi_iswaptran.F90 @@ -269,7 +269,7 @@ subroutine psi_itran_vidx_vect(iictxt,iicomm,flag,beta,y,idx,& snd_pt = 1+pnti+nerv+psb_n_elem_send_ rcv_pt = 1+pnti+psb_n_elem_recv_ - call psb_get_rank(prcid(i),ictxt,proc_to_comm) + prcid(i) = psb_get_rank(ictxt,proc_to_comm) if ((nesd>0).and.(proc_to_comm /= me)) then if (debug) write(*,*) me,'Posting receive from',prcid(i),rcv_pt call mpi_irecv(y%combuf(snd_pt),nesd,& @@ -616,7 +616,7 @@ subroutine psi_itran_vidx_multivect(iictxt,iicomm,flag,beta,y,idx,& proc_to_comm = idx%v(pnti+psb_proc_id_) nerv = idx%v(pnti+psb_n_elem_recv_) nesd = idx%v(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(i),ictxt,proc_to_comm) + prcid(i) = psb_get_rank(ictxt,proc_to_comm) if ((nesd>0).and.(proc_to_comm /= me)) then if (debug) write(*,*) me,'Posting receive from',prcid(i),snd_pt call mpi_irecv(y%combuf(snd_pt),n*nesd,& diff --git a/base/comm/internals/psi_lswapdata.F90 b/base/comm/internals/psi_lswapdata.F90 index b409dd40..f1f8de5c 100644 --- a/base/comm/internals/psi_lswapdata.F90 +++ b/base/comm/internals/psi_lswapdata.F90 @@ -263,7 +263,7 @@ subroutine psi_lswap_vidx_vect(iictxt,iicomm,flag,beta,y,idx, & nesd = idx%v(pnti+nerv+psb_n_elem_send_) rcv_pt = 1+pnti+psb_n_elem_recv_ - call psb_get_rank(prcid(i),ictxt,proc_to_comm) + prcid(i) = psb_get_rank(ictxt,proc_to_comm) if ((nerv>0).and.(proc_to_comm /= me)) then if (debug) write(*,*) me,'Posting receive from',prcid(i),rcv_pt p2ptag = psb_long_swap_tag @@ -602,7 +602,7 @@ subroutine psi_lswap_vidx_multivect(iictxt,iicomm,flag,beta,y,idx, & proc_to_comm = idx%v(pnti+psb_proc_id_) nerv = idx%v(pnti+psb_n_elem_recv_) nesd = idx%v(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(i),ictxt,proc_to_comm) + prcid(i) = psb_get_rank(ictxt,proc_to_comm) if ((nerv>0).and.(proc_to_comm /= me)) then if (debug) write(*,*) me,'Posting receive from',prcid(i),rcv_pt p2ptag = psb_long_swap_tag diff --git a/base/comm/internals/psi_lswaptran.F90 b/base/comm/internals/psi_lswaptran.F90 index 89ae0441..d960e0f9 100644 --- a/base/comm/internals/psi_lswaptran.F90 +++ b/base/comm/internals/psi_lswaptran.F90 @@ -269,7 +269,7 @@ subroutine psi_ltran_vidx_vect(iictxt,iicomm,flag,beta,y,idx,& snd_pt = 1+pnti+nerv+psb_n_elem_send_ rcv_pt = 1+pnti+psb_n_elem_recv_ - call psb_get_rank(prcid(i),ictxt,proc_to_comm) + prcid(i) = psb_get_rank(ictxt,proc_to_comm) if ((nesd>0).and.(proc_to_comm /= me)) then if (debug) write(*,*) me,'Posting receive from',prcid(i),rcv_pt call mpi_irecv(y%combuf(snd_pt),nesd,& @@ -616,7 +616,7 @@ subroutine psi_ltran_vidx_multivect(iictxt,iicomm,flag,beta,y,idx,& proc_to_comm = idx%v(pnti+psb_proc_id_) nerv = idx%v(pnti+psb_n_elem_recv_) nesd = idx%v(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(i),ictxt,proc_to_comm) + prcid(i) = psb_get_rank(ictxt,proc_to_comm) if ((nesd>0).and.(proc_to_comm /= me)) then if (debug) write(*,*) me,'Posting receive from',prcid(i),snd_pt call mpi_irecv(y%combuf(snd_pt),n*nesd,& diff --git a/base/comm/internals/psi_mswapdata_a.F90 b/base/comm/internals/psi_mswapdata_a.F90 index e0f5eeb0..bdeb28e2 100644 --- a/base/comm/internals/psi_mswapdata_a.F90 +++ b/base/comm/internals/psi_mswapdata_a.F90 @@ -236,7 +236,7 @@ subroutine psi_mswapidxm(iictxt,iicomm,flag,n,beta,y,idx, & proc_to_comm = idx(pnti+psb_proc_id_) nerv = idx(pnti+psb_n_elem_recv_) nesd = idx(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(proc_to_comm),ictxt,proc_to_comm) + prcid(proc_to_comm) = psb_get_rank(ictxt,proc_to_comm) brvidx(proc_to_comm) = rcv_pt rvsz(proc_to_comm) = n*nerv @@ -349,7 +349,7 @@ subroutine psi_mswapidxm(iictxt,iicomm,flag,n,beta,y,idx, & proc_to_comm = idx(pnti+psb_proc_id_) nerv = idx(pnti+psb_n_elem_recv_) nesd = idx(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(i),ictxt,proc_to_comm) + prcid(i) = psb_get_rank(ictxt,proc_to_comm) if ((nerv>0).and.(proc_to_comm /= me)) then p2ptag = psb_int4_swap_tag call mpi_irecv(rcvbuf(rcv_pt),n*nerv,& @@ -721,7 +721,7 @@ subroutine psi_mswapidxv(iictxt,iicomm,flag,beta,y,idx, & proc_to_comm = idx(pnti+psb_proc_id_) nerv = idx(pnti+psb_n_elem_recv_) nesd = idx(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(proc_to_comm),ictxt,proc_to_comm) + prcid(proc_to_comm) = psb_get_rank(ictxt,proc_to_comm) brvidx(proc_to_comm) = rcv_pt rvsz(proc_to_comm) = nerv @@ -835,7 +835,7 @@ subroutine psi_mswapidxv(iictxt,iicomm,flag,beta,y,idx, & nerv = idx(pnti+psb_n_elem_recv_) nesd = idx(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(i),ictxt,proc_to_comm) + prcid(i) = psb_get_rank(ictxt,proc_to_comm) if ((nerv>0).and.(proc_to_comm /= me)) then p2ptag = psb_int4_swap_tag call mpi_irecv(rcvbuf(rcv_pt),nerv,& diff --git a/base/comm/internals/psi_mswaptran_a.F90 b/base/comm/internals/psi_mswaptran_a.F90 index 2283de0b..013e21b6 100644 --- a/base/comm/internals/psi_mswaptran_a.F90 +++ b/base/comm/internals/psi_mswaptran_a.F90 @@ -241,7 +241,7 @@ subroutine psi_mtranidxm(iictxt,iicomm,flag,n,beta,y,idx,& proc_to_comm = idx(pnti+psb_proc_id_) nerv = idx(pnti+psb_n_elem_recv_) nesd = idx(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(proc_to_comm),ictxt,proc_to_comm) + prcid(proc_to_comm) = psb_get_rank(ictxt,proc_to_comm) brvidx(proc_to_comm) = rcv_pt rvsz(proc_to_comm) = n*nerv @@ -359,7 +359,7 @@ subroutine psi_mtranidxm(iictxt,iicomm,flag,n,beta,y,idx,& proc_to_comm = idx(pnti+psb_proc_id_) nerv = idx(pnti+psb_n_elem_recv_) nesd = idx(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(i),ictxt,proc_to_comm) + prcid(i) = psb_get_rank(ictxt,proc_to_comm) if ((nesd>0).and.(proc_to_comm /= me)) then p2ptag = psb_int4_swap_tag call mpi_irecv(sndbuf(snd_pt),n*nesd,& @@ -734,7 +734,7 @@ subroutine psi_mtranidxv(iictxt,iicomm,flag,beta,y,idx,& proc_to_comm = idx(pnti+psb_proc_id_) nerv = idx(pnti+psb_n_elem_recv_) nesd = idx(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(proc_to_comm),ictxt,proc_to_comm) + prcid(proc_to_comm) = psb_get_rank(ictxt,proc_to_comm) brvidx(proc_to_comm) = rcv_pt rvsz(proc_to_comm) = nerv @@ -852,7 +852,7 @@ subroutine psi_mtranidxv(iictxt,iicomm,flag,beta,y,idx,& proc_to_comm = idx(pnti+psb_proc_id_) nerv = idx(pnti+psb_n_elem_recv_) nesd = idx(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(i),ictxt,proc_to_comm) + prcid(i) = psb_get_rank(ictxt,proc_to_comm) if ((nesd>0).and.(proc_to_comm /= me)) then p2ptag = psb_int4_swap_tag call mpi_irecv(sndbuf(snd_pt),nesd,& diff --git a/base/comm/internals/psi_sswapdata.F90 b/base/comm/internals/psi_sswapdata.F90 index 56face25..e05ff5e9 100644 --- a/base/comm/internals/psi_sswapdata.F90 +++ b/base/comm/internals/psi_sswapdata.F90 @@ -263,7 +263,7 @@ subroutine psi_sswap_vidx_vect(iictxt,iicomm,flag,beta,y,idx, & nesd = idx%v(pnti+nerv+psb_n_elem_send_) rcv_pt = 1+pnti+psb_n_elem_recv_ - call psb_get_rank(prcid(i),ictxt,proc_to_comm) + prcid(i) = psb_get_rank(ictxt,proc_to_comm) if ((nerv>0).and.(proc_to_comm /= me)) then if (debug) write(*,*) me,'Posting receive from',prcid(i),rcv_pt p2ptag = psb_real_swap_tag @@ -602,7 +602,7 @@ subroutine psi_sswap_vidx_multivect(iictxt,iicomm,flag,beta,y,idx, & proc_to_comm = idx%v(pnti+psb_proc_id_) nerv = idx%v(pnti+psb_n_elem_recv_) nesd = idx%v(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(i),ictxt,proc_to_comm) + prcid(i) = psb_get_rank(ictxt,proc_to_comm) if ((nerv>0).and.(proc_to_comm /= me)) then if (debug) write(*,*) me,'Posting receive from',prcid(i),rcv_pt p2ptag = psb_real_swap_tag diff --git a/base/comm/internals/psi_sswapdata_a.F90 b/base/comm/internals/psi_sswapdata_a.F90 index 599c4cfd..81d11859 100644 --- a/base/comm/internals/psi_sswapdata_a.F90 +++ b/base/comm/internals/psi_sswapdata_a.F90 @@ -236,7 +236,7 @@ subroutine psi_sswapidxm(iictxt,iicomm,flag,n,beta,y,idx, & proc_to_comm = idx(pnti+psb_proc_id_) nerv = idx(pnti+psb_n_elem_recv_) nesd = idx(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(proc_to_comm),ictxt,proc_to_comm) + prcid(proc_to_comm) = psb_get_rank(ictxt,proc_to_comm) brvidx(proc_to_comm) = rcv_pt rvsz(proc_to_comm) = n*nerv @@ -349,7 +349,7 @@ subroutine psi_sswapidxm(iictxt,iicomm,flag,n,beta,y,idx, & proc_to_comm = idx(pnti+psb_proc_id_) nerv = idx(pnti+psb_n_elem_recv_) nesd = idx(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(i),ictxt,proc_to_comm) + prcid(i) = psb_get_rank(ictxt,proc_to_comm) if ((nerv>0).and.(proc_to_comm /= me)) then p2ptag = psb_real_swap_tag call mpi_irecv(rcvbuf(rcv_pt),n*nerv,& @@ -721,7 +721,7 @@ subroutine psi_sswapidxv(iictxt,iicomm,flag,beta,y,idx, & proc_to_comm = idx(pnti+psb_proc_id_) nerv = idx(pnti+psb_n_elem_recv_) nesd = idx(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(proc_to_comm),ictxt,proc_to_comm) + prcid(proc_to_comm) = psb_get_rank(ictxt,proc_to_comm) brvidx(proc_to_comm) = rcv_pt rvsz(proc_to_comm) = nerv @@ -835,7 +835,7 @@ subroutine psi_sswapidxv(iictxt,iicomm,flag,beta,y,idx, & nerv = idx(pnti+psb_n_elem_recv_) nesd = idx(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(i),ictxt,proc_to_comm) + prcid(i) = psb_get_rank(ictxt,proc_to_comm) if ((nerv>0).and.(proc_to_comm /= me)) then p2ptag = psb_real_swap_tag call mpi_irecv(rcvbuf(rcv_pt),nerv,& diff --git a/base/comm/internals/psi_sswaptran.F90 b/base/comm/internals/psi_sswaptran.F90 index fc998061..0616ee6c 100644 --- a/base/comm/internals/psi_sswaptran.F90 +++ b/base/comm/internals/psi_sswaptran.F90 @@ -269,7 +269,7 @@ subroutine psi_stran_vidx_vect(iictxt,iicomm,flag,beta,y,idx,& snd_pt = 1+pnti+nerv+psb_n_elem_send_ rcv_pt = 1+pnti+psb_n_elem_recv_ - call psb_get_rank(prcid(i),ictxt,proc_to_comm) + prcid(i) = psb_get_rank(ictxt,proc_to_comm) if ((nesd>0).and.(proc_to_comm /= me)) then if (debug) write(*,*) me,'Posting receive from',prcid(i),rcv_pt call mpi_irecv(y%combuf(snd_pt),nesd,& @@ -616,7 +616,7 @@ subroutine psi_stran_vidx_multivect(iictxt,iicomm,flag,beta,y,idx,& proc_to_comm = idx%v(pnti+psb_proc_id_) nerv = idx%v(pnti+psb_n_elem_recv_) nesd = idx%v(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(i),ictxt,proc_to_comm) + prcid(i) = psb_get_rank(ictxt,proc_to_comm) if ((nesd>0).and.(proc_to_comm /= me)) then if (debug) write(*,*) me,'Posting receive from',prcid(i),snd_pt call mpi_irecv(y%combuf(snd_pt),n*nesd,& diff --git a/base/comm/internals/psi_sswaptran_a.F90 b/base/comm/internals/psi_sswaptran_a.F90 index 1eb8d227..983a8457 100644 --- a/base/comm/internals/psi_sswaptran_a.F90 +++ b/base/comm/internals/psi_sswaptran_a.F90 @@ -241,7 +241,7 @@ subroutine psi_stranidxm(iictxt,iicomm,flag,n,beta,y,idx,& proc_to_comm = idx(pnti+psb_proc_id_) nerv = idx(pnti+psb_n_elem_recv_) nesd = idx(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(proc_to_comm),ictxt,proc_to_comm) + prcid(proc_to_comm) = psb_get_rank(ictxt,proc_to_comm) brvidx(proc_to_comm) = rcv_pt rvsz(proc_to_comm) = n*nerv @@ -359,7 +359,7 @@ subroutine psi_stranidxm(iictxt,iicomm,flag,n,beta,y,idx,& proc_to_comm = idx(pnti+psb_proc_id_) nerv = idx(pnti+psb_n_elem_recv_) nesd = idx(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(i),ictxt,proc_to_comm) + prcid(i) = psb_get_rank(ictxt,proc_to_comm) if ((nesd>0).and.(proc_to_comm /= me)) then p2ptag = psb_real_swap_tag call mpi_irecv(sndbuf(snd_pt),n*nesd,& @@ -734,7 +734,7 @@ subroutine psi_stranidxv(iictxt,iicomm,flag,beta,y,idx,& proc_to_comm = idx(pnti+psb_proc_id_) nerv = idx(pnti+psb_n_elem_recv_) nesd = idx(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(proc_to_comm),ictxt,proc_to_comm) + prcid(proc_to_comm) = psb_get_rank(ictxt,proc_to_comm) brvidx(proc_to_comm) = rcv_pt rvsz(proc_to_comm) = nerv @@ -852,7 +852,7 @@ subroutine psi_stranidxv(iictxt,iicomm,flag,beta,y,idx,& proc_to_comm = idx(pnti+psb_proc_id_) nerv = idx(pnti+psb_n_elem_recv_) nesd = idx(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(i),ictxt,proc_to_comm) + prcid(i) = psb_get_rank(ictxt,proc_to_comm) if ((nesd>0).and.(proc_to_comm /= me)) then p2ptag = psb_real_swap_tag call mpi_irecv(sndbuf(snd_pt),nesd,& diff --git a/base/comm/internals/psi_zswapdata.F90 b/base/comm/internals/psi_zswapdata.F90 index c3b46b80..7f8c3357 100644 --- a/base/comm/internals/psi_zswapdata.F90 +++ b/base/comm/internals/psi_zswapdata.F90 @@ -263,7 +263,7 @@ subroutine psi_zswap_vidx_vect(iictxt,iicomm,flag,beta,y,idx, & nesd = idx%v(pnti+nerv+psb_n_elem_send_) rcv_pt = 1+pnti+psb_n_elem_recv_ - call psb_get_rank(prcid(i),ictxt,proc_to_comm) + prcid(i) = psb_get_rank(ictxt,proc_to_comm) if ((nerv>0).and.(proc_to_comm /= me)) then if (debug) write(*,*) me,'Posting receive from',prcid(i),rcv_pt p2ptag = psb_dcomplex_swap_tag @@ -602,7 +602,7 @@ subroutine psi_zswap_vidx_multivect(iictxt,iicomm,flag,beta,y,idx, & proc_to_comm = idx%v(pnti+psb_proc_id_) nerv = idx%v(pnti+psb_n_elem_recv_) nesd = idx%v(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(i),ictxt,proc_to_comm) + prcid(i) = psb_get_rank(ictxt,proc_to_comm) if ((nerv>0).and.(proc_to_comm /= me)) then if (debug) write(*,*) me,'Posting receive from',prcid(i),rcv_pt p2ptag = psb_dcomplex_swap_tag diff --git a/base/comm/internals/psi_zswapdata_a.F90 b/base/comm/internals/psi_zswapdata_a.F90 index 1021c976..3a1ab111 100644 --- a/base/comm/internals/psi_zswapdata_a.F90 +++ b/base/comm/internals/psi_zswapdata_a.F90 @@ -236,7 +236,7 @@ subroutine psi_zswapidxm(iictxt,iicomm,flag,n,beta,y,idx, & proc_to_comm = idx(pnti+psb_proc_id_) nerv = idx(pnti+psb_n_elem_recv_) nesd = idx(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(proc_to_comm),ictxt,proc_to_comm) + prcid(proc_to_comm) = psb_get_rank(ictxt,proc_to_comm) brvidx(proc_to_comm) = rcv_pt rvsz(proc_to_comm) = n*nerv @@ -349,7 +349,7 @@ subroutine psi_zswapidxm(iictxt,iicomm,flag,n,beta,y,idx, & proc_to_comm = idx(pnti+psb_proc_id_) nerv = idx(pnti+psb_n_elem_recv_) nesd = idx(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(i),ictxt,proc_to_comm) + prcid(i) = psb_get_rank(ictxt,proc_to_comm) if ((nerv>0).and.(proc_to_comm /= me)) then p2ptag = psb_dcomplex_swap_tag call mpi_irecv(rcvbuf(rcv_pt),n*nerv,& @@ -721,7 +721,7 @@ subroutine psi_zswapidxv(iictxt,iicomm,flag,beta,y,idx, & proc_to_comm = idx(pnti+psb_proc_id_) nerv = idx(pnti+psb_n_elem_recv_) nesd = idx(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(proc_to_comm),ictxt,proc_to_comm) + prcid(proc_to_comm) = psb_get_rank(ictxt,proc_to_comm) brvidx(proc_to_comm) = rcv_pt rvsz(proc_to_comm) = nerv @@ -835,7 +835,7 @@ subroutine psi_zswapidxv(iictxt,iicomm,flag,beta,y,idx, & nerv = idx(pnti+psb_n_elem_recv_) nesd = idx(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(i),ictxt,proc_to_comm) + prcid(i) = psb_get_rank(ictxt,proc_to_comm) if ((nerv>0).and.(proc_to_comm /= me)) then p2ptag = psb_dcomplex_swap_tag call mpi_irecv(rcvbuf(rcv_pt),nerv,& diff --git a/base/comm/internals/psi_zswaptran.F90 b/base/comm/internals/psi_zswaptran.F90 index 9be2722d..2f7b93e4 100644 --- a/base/comm/internals/psi_zswaptran.F90 +++ b/base/comm/internals/psi_zswaptran.F90 @@ -269,7 +269,7 @@ subroutine psi_ztran_vidx_vect(iictxt,iicomm,flag,beta,y,idx,& snd_pt = 1+pnti+nerv+psb_n_elem_send_ rcv_pt = 1+pnti+psb_n_elem_recv_ - call psb_get_rank(prcid(i),ictxt,proc_to_comm) + prcid(i) = psb_get_rank(ictxt,proc_to_comm) if ((nesd>0).and.(proc_to_comm /= me)) then if (debug) write(*,*) me,'Posting receive from',prcid(i),rcv_pt call mpi_irecv(y%combuf(snd_pt),nesd,& @@ -616,7 +616,7 @@ subroutine psi_ztran_vidx_multivect(iictxt,iicomm,flag,beta,y,idx,& proc_to_comm = idx%v(pnti+psb_proc_id_) nerv = idx%v(pnti+psb_n_elem_recv_) nesd = idx%v(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(i),ictxt,proc_to_comm) + prcid(i) = psb_get_rank(ictxt,proc_to_comm) if ((nesd>0).and.(proc_to_comm /= me)) then if (debug) write(*,*) me,'Posting receive from',prcid(i),snd_pt call mpi_irecv(y%combuf(snd_pt),n*nesd,& diff --git a/base/comm/internals/psi_zswaptran_a.F90 b/base/comm/internals/psi_zswaptran_a.F90 index 7388c3b4..fa694378 100644 --- a/base/comm/internals/psi_zswaptran_a.F90 +++ b/base/comm/internals/psi_zswaptran_a.F90 @@ -241,7 +241,7 @@ subroutine psi_ztranidxm(iictxt,iicomm,flag,n,beta,y,idx,& proc_to_comm = idx(pnti+psb_proc_id_) nerv = idx(pnti+psb_n_elem_recv_) nesd = idx(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(proc_to_comm),ictxt,proc_to_comm) + prcid(proc_to_comm) = psb_get_rank(ictxt,proc_to_comm) brvidx(proc_to_comm) = rcv_pt rvsz(proc_to_comm) = n*nerv @@ -359,7 +359,7 @@ subroutine psi_ztranidxm(iictxt,iicomm,flag,n,beta,y,idx,& proc_to_comm = idx(pnti+psb_proc_id_) nerv = idx(pnti+psb_n_elem_recv_) nesd = idx(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(i),ictxt,proc_to_comm) + prcid(i) = psb_get_rank(ictxt,proc_to_comm) if ((nesd>0).and.(proc_to_comm /= me)) then p2ptag = psb_dcomplex_swap_tag call mpi_irecv(sndbuf(snd_pt),n*nesd,& @@ -734,7 +734,7 @@ subroutine psi_ztranidxv(iictxt,iicomm,flag,beta,y,idx,& proc_to_comm = idx(pnti+psb_proc_id_) nerv = idx(pnti+psb_n_elem_recv_) nesd = idx(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(proc_to_comm),ictxt,proc_to_comm) + prcid(proc_to_comm) = psb_get_rank(ictxt,proc_to_comm) brvidx(proc_to_comm) = rcv_pt rvsz(proc_to_comm) = nerv @@ -852,7 +852,7 @@ subroutine psi_ztranidxv(iictxt,iicomm,flag,beta,y,idx,& proc_to_comm = idx(pnti+psb_proc_id_) nerv = idx(pnti+psb_n_elem_recv_) nesd = idx(pnti+nerv+psb_n_elem_send_) - call psb_get_rank(prcid(i),ictxt,proc_to_comm) + prcid(i) = psb_get_rank(ictxt,proc_to_comm) if ((nesd>0).and.(proc_to_comm /= me)) then p2ptag = psb_dcomplex_swap_tag call mpi_irecv(sndbuf(snd_pt),nesd,& diff --git a/base/comm/psb_cscatter_a.F90 b/base/comm/psb_cscatter_a.F90 index 3d29dd37..81e69be4 100644 --- a/base/comm/psb_cscatter_a.F90 +++ b/base/comm/psb_cscatter_a.F90 @@ -107,8 +107,8 @@ subroutine psb_cscatterm(globx, locx, desc_a, info, root) m = desc_a%get_global_rows() n = desc_a%get_global_cols() - call psb_get_mpicomm(ictxt,icomm) - call psb_get_rank(myrank,ictxt,me) + icomm = psb_get_mpicomm(ictxt) + myrank = psb_get_rank(ictxt,me) if (iroot==-1) then lda_globx = size(globx, 1) @@ -159,7 +159,7 @@ subroutine psb_cscatterm(globx, locx, desc_a, info, root) end do else - call psb_get_rank(rootrank,ictxt,iroot) + rootrank = psb_get_rank(ictxt,iroot) ! ! This is potentially unsafe when IPK=8 ! But then, IPK=8 is highly experimental anyway. @@ -347,8 +347,8 @@ subroutine psb_cscatterv(globx, locx, desc_a, info, root) iroot = psb_root_ end if - call psb_get_mpicomm(ictxt,icomm) - call psb_get_rank(myrank,ictxt,iam) + icomm = psb_get_mpicomm(ictxt) + myrank = psb_get_rank(ictxt,iam) iglobx = 1 jglobx = 1 @@ -394,7 +394,7 @@ subroutine psb_cscatterv(globx, locx, desc_a, info, root) locx(i)=globx(ltg(i)) end do else - call psb_get_rank(rootrank,ictxt,iroot) + rootrank = psb_get_rank(ictxt,iroot) ! ! This is potentially unsafe when IPK=8 ! But then, IPK=8 is highly experimental anyway. diff --git a/base/comm/psb_dscatter_a.F90 b/base/comm/psb_dscatter_a.F90 index e8d53a62..998028b3 100644 --- a/base/comm/psb_dscatter_a.F90 +++ b/base/comm/psb_dscatter_a.F90 @@ -107,8 +107,8 @@ subroutine psb_dscatterm(globx, locx, desc_a, info, root) m = desc_a%get_global_rows() n = desc_a%get_global_cols() - call psb_get_mpicomm(ictxt,icomm) - call psb_get_rank(myrank,ictxt,me) + icomm = psb_get_mpicomm(ictxt) + myrank = psb_get_rank(ictxt,me) if (iroot==-1) then lda_globx = size(globx, 1) @@ -159,7 +159,7 @@ subroutine psb_dscatterm(globx, locx, desc_a, info, root) end do else - call psb_get_rank(rootrank,ictxt,iroot) + rootrank = psb_get_rank(ictxt,iroot) ! ! This is potentially unsafe when IPK=8 ! But then, IPK=8 is highly experimental anyway. @@ -347,8 +347,8 @@ subroutine psb_dscatterv(globx, locx, desc_a, info, root) iroot = psb_root_ end if - call psb_get_mpicomm(ictxt,icomm) - call psb_get_rank(myrank,ictxt,iam) + icomm = psb_get_mpicomm(ictxt) + myrank = psb_get_rank(ictxt,iam) iglobx = 1 jglobx = 1 @@ -394,7 +394,7 @@ subroutine psb_dscatterv(globx, locx, desc_a, info, root) locx(i)=globx(ltg(i)) end do else - call psb_get_rank(rootrank,ictxt,iroot) + rootrank = psb_get_rank(ictxt,iroot) ! ! This is potentially unsafe when IPK=8 ! But then, IPK=8 is highly experimental anyway. diff --git a/base/comm/psb_escatter_a.F90 b/base/comm/psb_escatter_a.F90 index 62bc5734..0095636d 100644 --- a/base/comm/psb_escatter_a.F90 +++ b/base/comm/psb_escatter_a.F90 @@ -107,8 +107,8 @@ subroutine psb_escatterm(globx, locx, desc_a, info, root) m = desc_a%get_global_rows() n = desc_a%get_global_cols() - call psb_get_mpicomm(ictxt,icomm) - call psb_get_rank(myrank,ictxt,me) + icomm = psb_get_mpicomm(ictxt) + myrank = psb_get_rank(ictxt,me) if (iroot==-1) then lda_globx = size(globx, 1) @@ -159,7 +159,7 @@ subroutine psb_escatterm(globx, locx, desc_a, info, root) end do else - call psb_get_rank(rootrank,ictxt,iroot) + rootrank = psb_get_rank(ictxt,iroot) ! ! This is potentially unsafe when IPK=8 ! But then, IPK=8 is highly experimental anyway. @@ -347,8 +347,8 @@ subroutine psb_escatterv(globx, locx, desc_a, info, root) iroot = psb_root_ end if - call psb_get_mpicomm(ictxt,icomm) - call psb_get_rank(myrank,ictxt,iam) + icomm = psb_get_mpicomm(ictxt) + myrank = psb_get_rank(ictxt,iam) iglobx = 1 jglobx = 1 @@ -394,7 +394,7 @@ subroutine psb_escatterv(globx, locx, desc_a, info, root) locx(i)=globx(ltg(i)) end do else - call psb_get_rank(rootrank,ictxt,iroot) + rootrank = psb_get_rank(ictxt,iroot) ! ! This is potentially unsafe when IPK=8 ! But then, IPK=8 is highly experimental anyway. diff --git a/base/comm/psb_mscatter_a.F90 b/base/comm/psb_mscatter_a.F90 index 4778c63f..6a5a2552 100644 --- a/base/comm/psb_mscatter_a.F90 +++ b/base/comm/psb_mscatter_a.F90 @@ -107,8 +107,8 @@ subroutine psb_mscatterm(globx, locx, desc_a, info, root) m = desc_a%get_global_rows() n = desc_a%get_global_cols() - call psb_get_mpicomm(ictxt,icomm) - call psb_get_rank(myrank,ictxt,me) + icomm = psb_get_mpicomm(ictxt) + myrank = psb_get_rank(ictxt,me) if (iroot==-1) then lda_globx = size(globx, 1) @@ -159,7 +159,7 @@ subroutine psb_mscatterm(globx, locx, desc_a, info, root) end do else - call psb_get_rank(rootrank,ictxt,iroot) + rootrank = psb_get_rank(ictxt,iroot) ! ! This is potentially unsafe when IPK=8 ! But then, IPK=8 is highly experimental anyway. @@ -347,8 +347,8 @@ subroutine psb_mscatterv(globx, locx, desc_a, info, root) iroot = psb_root_ end if - call psb_get_mpicomm(ictxt,icomm) - call psb_get_rank(myrank,ictxt,iam) + icomm = psb_get_mpicomm(ictxt) + myrank = psb_get_rank(ictxt,iam) iglobx = 1 jglobx = 1 @@ -394,7 +394,7 @@ subroutine psb_mscatterv(globx, locx, desc_a, info, root) locx(i)=globx(ltg(i)) end do else - call psb_get_rank(rootrank,ictxt,iroot) + rootrank = psb_get_rank(ictxt,iroot) ! ! This is potentially unsafe when IPK=8 ! But then, IPK=8 is highly experimental anyway. diff --git a/base/comm/psb_sscatter_a.F90 b/base/comm/psb_sscatter_a.F90 index e908a823..51627072 100644 --- a/base/comm/psb_sscatter_a.F90 +++ b/base/comm/psb_sscatter_a.F90 @@ -107,8 +107,8 @@ subroutine psb_sscatterm(globx, locx, desc_a, info, root) m = desc_a%get_global_rows() n = desc_a%get_global_cols() - call psb_get_mpicomm(ictxt,icomm) - call psb_get_rank(myrank,ictxt,me) + icomm = psb_get_mpicomm(ictxt) + myrank = psb_get_rank(ictxt,me) if (iroot==-1) then lda_globx = size(globx, 1) @@ -159,7 +159,7 @@ subroutine psb_sscatterm(globx, locx, desc_a, info, root) end do else - call psb_get_rank(rootrank,ictxt,iroot) + rootrank = psb_get_rank(ictxt,iroot) ! ! This is potentially unsafe when IPK=8 ! But then, IPK=8 is highly experimental anyway. @@ -347,8 +347,8 @@ subroutine psb_sscatterv(globx, locx, desc_a, info, root) iroot = psb_root_ end if - call psb_get_mpicomm(ictxt,icomm) - call psb_get_rank(myrank,ictxt,iam) + icomm = psb_get_mpicomm(ictxt) + myrank = psb_get_rank(ictxt,iam) iglobx = 1 jglobx = 1 @@ -394,7 +394,7 @@ subroutine psb_sscatterv(globx, locx, desc_a, info, root) locx(i)=globx(ltg(i)) end do else - call psb_get_rank(rootrank,ictxt,iroot) + rootrank = psb_get_rank(ictxt,iroot) ! ! This is potentially unsafe when IPK=8 ! But then, IPK=8 is highly experimental anyway. diff --git a/base/comm/psb_zscatter_a.F90 b/base/comm/psb_zscatter_a.F90 index 557166d8..6b7f7d7d 100644 --- a/base/comm/psb_zscatter_a.F90 +++ b/base/comm/psb_zscatter_a.F90 @@ -107,8 +107,8 @@ subroutine psb_zscatterm(globx, locx, desc_a, info, root) m = desc_a%get_global_rows() n = desc_a%get_global_cols() - call psb_get_mpicomm(ictxt,icomm) - call psb_get_rank(myrank,ictxt,me) + icomm = psb_get_mpicomm(ictxt) + myrank = psb_get_rank(ictxt,me) if (iroot==-1) then lda_globx = size(globx, 1) @@ -159,7 +159,7 @@ subroutine psb_zscatterm(globx, locx, desc_a, info, root) end do else - call psb_get_rank(rootrank,ictxt,iroot) + rootrank = psb_get_rank(ictxt,iroot) ! ! This is potentially unsafe when IPK=8 ! But then, IPK=8 is highly experimental anyway. @@ -347,8 +347,8 @@ subroutine psb_zscatterv(globx, locx, desc_a, info, root) iroot = psb_root_ end if - call psb_get_mpicomm(ictxt,icomm) - call psb_get_rank(myrank,ictxt,iam) + icomm = psb_get_mpicomm(ictxt) + myrank = psb_get_rank(ictxt,iam) iglobx = 1 jglobx = 1 @@ -394,7 +394,7 @@ subroutine psb_zscatterv(globx, locx, desc_a, info, root) locx(i)=globx(ltg(i)) end do else - call psb_get_rank(rootrank,ictxt,iroot) + rootrank = psb_get_rank(ictxt,iroot) ! ! This is potentially unsafe when IPK=8 ! But then, IPK=8 is highly experimental anyway. diff --git a/base/internals/psi_extrct_dl.F90 b/base/internals/psi_extrct_dl.F90 index 489f9270..f4c70a47 100644 --- a/base/internals/psi_extrct_dl.F90 +++ b/base/internals/psi_extrct_dl.F90 @@ -266,9 +266,16 @@ subroutine psi_i_extract_dep_list(ictxt,is_bld,is_upd,desc_str,dep_list,& end if call psb_sum(iictxt,length_dl(0:np)) - call psb_get_mpicomm(iictxt,icomm ) - call mpi_allgather(itmp,dl_lda,psb_mpi_ipk_,& - & dep_list,dl_lda,psb_mpi_ipk_,icomm,minfo) + icomm = psb_get_mpicomm(iictxt) + allocate(itmp(dl_lda),stat=info) + if (info /= psb_success_) then + info=psb_err_alloc_dealloc_ + goto 9999 + endif + itmp(1:dl_lda) = dep_list(1:dl_lda,me) + dl_mpi = dl_lda + call mpi_allgather(itmp,dl_mpi,psb_mpi_ipk_,& + & dep_list,dl_mpi,psb_mpi_ipk_,icomm,minfo) info = minfo if (info == 0) deallocate(itmp,stat=info) if (info /= psb_success_) then diff --git a/base/modules/desc/psb_gen_block_map_mod.F90 b/base/modules/desc/psb_gen_block_map_mod.F90 index 575b89da..258a69a6 100644 --- a/base/modules/desc/psb_gen_block_map_mod.F90 +++ b/base/modules/desc/psb_gen_block_map_mod.F90 @@ -2005,7 +2005,7 @@ contains idxmap%local_cols = nl idxmap%ictxt = ictxt idxmap%state = psb_desc_bld_ - call psb_get_mpicomm(ictxt,idxmap%mpic) + idxmap%mpic = psb_get_mpicomm(ictxt) idxmap%min_glob_row = vnl(iam)+1 idxmap%max_glob_row = vnl(iam+1) call move_alloc(vnl,idxmap%vnl) diff --git a/base/modules/desc/psb_glist_map_mod.f90 b/base/modules/desc/psb_glist_map_mod.f90 index f360514f..e894d898 100644 --- a/base/modules/desc/psb_glist_map_mod.f90 +++ b/base/modules/desc/psb_glist_map_mod.f90 @@ -124,9 +124,9 @@ contains return end if - idxmap%ictxt = ictxt - idxmap%state = psb_desc_bld_ - call psb_get_mpicomm(ictxt,idxmap%mpic) + idxmap%ictxt = ictxt + idxmap%state = psb_desc_bld_ + idxmap%mpic = psb_get_mpicomm(ictxt) nl = 0 do i=1, n diff --git a/base/modules/desc/psb_hash_map_mod.f90 b/base/modules/desc/psb_hash_map_mod.f90 index 6e98af2f..d6769fd5 100644 --- a/base/modules/desc/psb_hash_map_mod.f90 +++ b/base/modules/desc/psb_hash_map_mod.f90 @@ -961,7 +961,7 @@ contains idxmap%local_cols = nl idxmap%ictxt = ictxt idxmap%state = psb_desc_bld_ - call psb_get_mpicomm(ictxt,idxmap%mpic) + idxmap%mpic = psb_get_mpicomm(ictxt) lc2 = int(1.5*nl) call psb_realloc(lc2,idxmap%loc_to_glob,info) diff --git a/base/modules/desc/psb_list_map_mod.f90 b/base/modules/desc/psb_list_map_mod.f90 index ccf89ca2..c3dd4154 100644 --- a/base/modules/desc/psb_list_map_mod.f90 +++ b/base/modules/desc/psb_list_map_mod.f90 @@ -1117,9 +1117,9 @@ contains return end if - idxmap%ictxt = ictxt - idxmap%state = psb_desc_bld_ - call psb_get_mpicomm(ictxt,idxmap%mpic) + idxmap%ictxt = ictxt + idxmap%state = psb_desc_bld_ + idxmap%mpic = psb_get_mpicomm(ictxt) do i=1, n idxmap%glob_to_loc(i) = -1 end do diff --git a/base/modules/desc/psb_repl_map_mod.f90 b/base/modules/desc/psb_repl_map_mod.f90 index b874a134..29a1eb4d 100644 --- a/base/modules/desc/psb_repl_map_mod.f90 +++ b/base/modules/desc/psb_repl_map_mod.f90 @@ -746,7 +746,7 @@ contains idxmap%local_cols = nl idxmap%ictxt = ictxt idxmap%state = psb_desc_bld_ - call psb_get_mpicomm(ictxt,idxmap%mpic) + idxmap%mpic = psb_get_mpicomm(ictxt) call idxmap%set_state(psb_desc_bld_) end subroutine repl_init diff --git a/base/modules/penv/psi_penv_mod.F90 b/base/modules/penv/psi_penv_mod.F90 index 31dfd0b8..f3f808bb 100644 --- a/base/modules/penv/psi_penv_mod.F90 +++ b/base/modules/penv/psi_penv_mod.F90 @@ -563,17 +563,17 @@ contains end subroutine psb_info_mpik - subroutine psb_get_mpicomm(ictxt,comm) + function psb_get_mpicomm(ictxt) result(comm) integer(psb_mpk_) :: ictxt, comm comm = ictxt - end subroutine psb_get_mpicomm + end function psb_get_mpicomm - subroutine psb_get_rank(rank,ictxt,id) + function psb_get_rank(ictxt,id) result(rank) integer(psb_mpk_) :: rank,ictxt,id rank = id - end subroutine psb_get_rank + end function psb_get_rank ! !!!!!!!!!!!!!!!!!!!!!! diff --git a/base/tools/psb_csphalo.F90 b/base/tools/psb_csphalo.F90 index 1e62ebec..2393bed6 100644 --- a/base/tools/psb_csphalo.F90 +++ b/base/tools/psb_csphalo.F90 @@ -1208,7 +1208,7 @@ contains n_el_recv = ipdxv(counter+psb_n_elem_recv_) counter = counter+n_el_recv n_el_send = ipdxv(counter+psb_n_elem_send_) - call psb_get_rank(prcid(ip+1),ictxt,ip) + prcid(ip+1) = psb_get_rank(ictxt,ip) sz = rvsz(ip+1) if (sz > 0) then idx = brvindx(ip+1) @@ -1235,7 +1235,7 @@ contains n_el_recv = ipdxv(counter+psb_n_elem_recv_) counter = counter+n_el_recv n_el_send = ipdxv(counter+psb_n_elem_send_) - if (prcid(ip+1)<0) call psb_get_rank(prcid(ip+1),ictxt,ip) + if (prcid(ip+1)<0) prcid(ip+1) = psb_get_rank(ictxt,ip) sz = sdsz(ip+1) if (sz > 0) then idx = bsdindx(ip+1) diff --git a/base/tools/psb_dsphalo.F90 b/base/tools/psb_dsphalo.F90 index 7efb8244..4da40e96 100644 --- a/base/tools/psb_dsphalo.F90 +++ b/base/tools/psb_dsphalo.F90 @@ -1208,7 +1208,7 @@ contains n_el_recv = ipdxv(counter+psb_n_elem_recv_) counter = counter+n_el_recv n_el_send = ipdxv(counter+psb_n_elem_send_) - call psb_get_rank(prcid(ip+1),ictxt,ip) + prcid(ip+1) = psb_get_rank(ictxt,ip) sz = rvsz(ip+1) if (sz > 0) then idx = brvindx(ip+1) @@ -1235,7 +1235,7 @@ contains n_el_recv = ipdxv(counter+psb_n_elem_recv_) counter = counter+n_el_recv n_el_send = ipdxv(counter+psb_n_elem_send_) - if (prcid(ip+1)<0) call psb_get_rank(prcid(ip+1),ictxt,ip) + if (prcid(ip+1)<0) prcid(ip+1) = psb_get_rank(ictxt,ip) sz = sdsz(ip+1) if (sz > 0) then idx = bsdindx(ip+1) diff --git a/base/tools/psb_icdasb.F90 b/base/tools/psb_icdasb.F90 index b1b2d5d7..7176d185 100644 --- a/base/tools/psb_icdasb.F90 +++ b/base/tools/psb_icdasb.F90 @@ -80,7 +80,7 @@ subroutine psb_icdasb(desc,info,ext_hv,mold) dectype = desc%get_dectype() n_row = desc%get_local_rows() n_col = desc%get_local_cols() - call psb_get_mpicomm(ictxt,icomm ) + icomm = desc%get_mpic() ! check on blacs grid call psb_info(ictxt, me, np) diff --git a/base/tools/psb_ssphalo.F90 b/base/tools/psb_ssphalo.F90 index c5d4e602..51e3a973 100644 --- a/base/tools/psb_ssphalo.F90 +++ b/base/tools/psb_ssphalo.F90 @@ -1208,7 +1208,7 @@ contains n_el_recv = ipdxv(counter+psb_n_elem_recv_) counter = counter+n_el_recv n_el_send = ipdxv(counter+psb_n_elem_send_) - call psb_get_rank(prcid(ip+1),ictxt,ip) + prcid(ip+1) = psb_get_rank(ictxt,ip) sz = rvsz(ip+1) if (sz > 0) then idx = brvindx(ip+1) @@ -1235,7 +1235,7 @@ contains n_el_recv = ipdxv(counter+psb_n_elem_recv_) counter = counter+n_el_recv n_el_send = ipdxv(counter+psb_n_elem_send_) - if (prcid(ip+1)<0) call psb_get_rank(prcid(ip+1),ictxt,ip) + if (prcid(ip+1)<0) prcid(ip+1) = psb_get_rank(ictxt,ip) sz = sdsz(ip+1) if (sz > 0) then idx = bsdindx(ip+1) diff --git a/base/tools/psb_zsphalo.F90 b/base/tools/psb_zsphalo.F90 index b6427ec1..16ee45b4 100644 --- a/base/tools/psb_zsphalo.F90 +++ b/base/tools/psb_zsphalo.F90 @@ -1208,7 +1208,7 @@ contains n_el_recv = ipdxv(counter+psb_n_elem_recv_) counter = counter+n_el_recv n_el_send = ipdxv(counter+psb_n_elem_send_) - call psb_get_rank(prcid(ip+1),ictxt,ip) + prcid(ip+1) = psb_get_rank(ictxt,ip) sz = rvsz(ip+1) if (sz > 0) then idx = brvindx(ip+1) @@ -1235,7 +1235,7 @@ contains n_el_recv = ipdxv(counter+psb_n_elem_recv_) counter = counter+n_el_recv n_el_send = ipdxv(counter+psb_n_elem_send_) - if (prcid(ip+1)<0) call psb_get_rank(prcid(ip+1),ictxt,ip) + if (prcid(ip+1)<0) prcid(ip+1) = psb_get_rank(ictxt,ip) sz = sdsz(ip+1) if (sz > 0) then idx = bsdindx(ip+1) diff --git a/docs/html/img175.png b/docs/html/img175.png new file mode 100644 index 00000000..7fdc87ea Binary files /dev/null and b/docs/html/img175.png differ diff --git a/docs/html/img176.png b/docs/html/img176.png new file mode 100644 index 00000000..432e9540 Binary files /dev/null and b/docs/html/img176.png differ diff --git a/docs/html/img177.png b/docs/html/img177.png new file mode 100644 index 00000000..c8ef97d9 Binary files /dev/null and b/docs/html/img177.png differ diff --git a/docs/html/img178.png b/docs/html/img178.png new file mode 100644 index 00000000..d50fc6ea Binary files /dev/null and b/docs/html/img178.png differ diff --git a/docs/html/img179.png b/docs/html/img179.png new file mode 100644 index 00000000..4a8ca50b Binary files /dev/null and b/docs/html/img179.png differ diff --git a/docs/html/img180.png b/docs/html/img180.png new file mode 100644 index 00000000..3f134112 Binary files /dev/null and b/docs/html/img180.png differ diff --git a/docs/html/img181.png b/docs/html/img181.png new file mode 100644 index 00000000..16fe2160 Binary files /dev/null and b/docs/html/img181.png differ diff --git a/docs/html/node103.html b/docs/html/node103.html index 86979e32..561d6988 100644 --- a/docs/html/node103.html +++ b/docs/html/node103.html @@ -54,7 +54,7 @@ psb_get_mpicomm -- Get the MPI communicator

-call psb_get_mpicomm(icontxt, icomm)
+icomm = psb_get_mpicomm(icontxt)
 

@@ -85,7 +85,7 @@ Specified as: an integer variable.

On Return
-
icomm
+
Function value
The MPI communicator associated with the PSBLAS virtual parallel machine.
Scope: global. diff --git a/docs/html/node104.html b/docs/html/node104.html index 2c8cd368..99879bc0 100644 --- a/docs/html/node104.html +++ b/docs/html/node104.html @@ -54,7 +54,7 @@ psb_get_rank -- Get the MPI rank

-call psb_get_rank(rank, icontxt, id)
+rank = psb_get_rank(icontxt, id)
 

@@ -104,7 +104,7 @@ Specified as: an integer value.