get_rank and get_mpicomm
Make psb_get_rank and psb_get_mpicomm functions, not subroutines. Document same.
@@ -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
|
||||
|
||||
@@ -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,&
|
||||
|
||||
@@ -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,&
|
||||
|
||||
@@ -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,&
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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,&
|
||||
|
||||
@@ -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,&
|
||||
|
||||
@@ -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,&
|
||||
|
||||
@@ -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,&
|
||||
|
||||
@@ -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,&
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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,&
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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,&
|
||||
|
||||
@@ -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,&
|
||||
|
||||
@@ -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,&
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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,&
|
||||
|
||||
@@ -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,&
|
||||
|
||||
@@ -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,&
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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,&
|
||||
|
||||
@@ -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,&
|
||||
|
||||
@@ -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,&
|
||||
|
||||
@@ -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.
|
||||
|
||||
@@ -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.
|
||||
|
||||
@@ -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.
|
||||
|
||||
@@ -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.
|
||||
|
||||
@@ -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.
|
||||
|
||||
@@ -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.
|
||||
|
||||
@@ -265,7 +265,7 @@ subroutine psi_i_extract_dep_list(ictxt,is_bld,is_upd,desc_str,dep_list,&
|
||||
if (err /= 0) goto 9999
|
||||
|
||||
call psb_sum(iictxt,length_dl(0:np))
|
||||
call psb_get_mpicomm(iictxt,icomm )
|
||||
icomm = psb_get_mpicomm(iictxt)
|
||||
allocate(itmp(dl_lda),stat=info)
|
||||
if (info /= psb_success_) then
|
||||
info=psb_err_alloc_dealloc_
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
|
||||
! !!!!!!!!!!!!!!!!!!!!!!
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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)
|
||||
|
||||
|
After Width: | Height: | Size: 478 B |
|
After Width: | Height: | Size: 410 B |
|
After Width: | Height: | Size: 354 B |
|
After Width: | Height: | Size: 208 B |
|
After Width: | Height: | Size: 395 B |
|
After Width: | Height: | Size: 387 B |
|
After Width: | Height: | Size: 290 B |
@@ -54,7 +54,7 @@ psb_get_mpicomm -- Get the MPI communicator</A>
|
||||
|
||||
<P>
|
||||
<PRE>
|
||||
call psb_get_mpicomm(icontxt, icomm)
|
||||
icomm = psb_get_mpicomm(icontxt)
|
||||
</PRE>
|
||||
|
||||
<P>
|
||||
@@ -85,7 +85,7 @@ Specified as: an integer variable.
|
||||
<DT><STRONG><B>On Return</B></STRONG></DT>
|
||||
<DD>
|
||||
</DD>
|
||||
<DT><STRONG>icomm</STRONG></DT>
|
||||
<DT><STRONG>Function value</STRONG></DT>
|
||||
<DD>The MPI communicator associated with the PSBLAS virtual parallel machine.
|
||||
<BR>
|
||||
Scope: <B>global</B>.
|
||||
|
||||
@@ -54,7 +54,7 @@ psb_get_rank -- Get the MPI rank</A>
|
||||
|
||||
<P>
|
||||
<PRE>
|
||||
call psb_get_rank(rank, icontxt, id)
|
||||
rank = psb_get_rank(icontxt, id)
|
||||
</PRE>
|
||||
|
||||
<P>
|
||||
@@ -104,7 +104,7 @@ Specified as: an integer value. <!-- MATH
|
||||
<DT><STRONG><B>On Return</B></STRONG></DT>
|
||||
<DD>
|
||||
</DD>
|
||||
<DT><STRONG>rank</STRONG></DT>
|
||||
<DT><STRONG>Funciton value</STRONG></DT>
|
||||
<DD>The MPI rank associated with the PSBLAS process <SPAN CLASS="MATH"><IMG
|
||||
WIDTH="18" HEIGHT="14" ALIGN="BOTTOM" BORDER="0"
|
||||
SRC="img138.png"
|
||||
|
||||
@@ -60,7 +60,7 @@ Mathematics Department, Macquarie University, Sydney.
|
||||
The command line arguments were: <BR>
|
||||
<STRONG>latex2html</STRONG> <TT>-local_icons -noaddress -dir ../../html userhtml.tex</TT>
|
||||
<P>
|
||||
The translation was initiated on 2019-05-28
|
||||
The translation was initiated on 2019-11-20
|
||||
<BR><HR>
|
||||
|
||||
</BODY>
|
||||
|
||||
@@ -19381,7 +19381,7 @@ endstream
|
||||
endobj
|
||||
1576 0 obj
|
||||
<<
|
||||
/Length 2161
|
||||
/Length 2196
|
||||
>>
|
||||
stream
|
||||
0 g 0 G
|
||||
@@ -19404,7 +19404,7 @@ BT
|
||||
/F16 11.9552 Tf 147.92 706.129 Td [(mpicomm)-375(|)-375(Get)-375(the)-375(MPI)-375(comm)31(unicator)]TJ
|
||||
0 g 0 G
|
||||
0 g 0 G
|
||||
/F30 9.9626 Tf -48.025 -18.389 Td [(call)-525(psb_get_mpicomm\050icontxt,)-525(icomm\051)]TJ/F8 9.9626 Tf 14.944 -21.918 Td [(This)-335(subroutine)-335(returns)-335(the)-336(MPI)-335(comm)28(unicator)-335(asso)-28(ciated)-335(with)-335(a)-336(P)1(SBLAS)]TJ -14.944 -11.955 Td [(con)28(text)]TJ
|
||||
/F30 9.9626 Tf -48.025 -18.389 Td [(icomm)-525(=)-525(psb_get_mpicomm\050icontxt\051)]TJ/F8 9.9626 Tf 14.944 -21.918 Td [(This)-335(subroutine)-335(returns)-335(the)-336(MPI)-335(comm)28(unicator)-335(asso)-28(ciated)-335(with)-335(a)-336(P)1(SBLAS)]TJ -14.944 -11.955 Td [(con)28(text)]TJ
|
||||
0 g 0 G
|
||||
/F27 9.9626 Tf 0 -19.926 Td [(T)32(yp)-32(e:)]TJ
|
||||
0 g 0 G
|
||||
@@ -19420,9 +19420,9 @@ BT
|
||||
/F27 9.9626 Tf -24.907 -21.918 Td [(On)-383(Return)]TJ
|
||||
0 g 0 G
|
||||
0 g 0 G
|
||||
0 -19.925 Td [(icomm)]TJ
|
||||
0 -19.925 Td [(F)96(unction)-384(v)64(alue)]TJ
|
||||
0 g 0 G
|
||||
/F8 9.9626 Tf 38.08 0 Td [(The)-377(MPI)-378(comm)28(unicator)-377(as)-1(so)-27(ciated)-378(with)-377(the)-378(PSBLAS)-377(virtual)-377(parallel)]TJ -13.173 -11.955 Td [(mac)28(hine.)]TJ 0 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ
|
||||
/F8 9.9626 Tf 78.387 0 Td [(The)-314(MPI)-314(comm)28(unicator)-314(ass)-1(o)-27(ciated)-314(with)-314(the)-315(PS)1(B)-1(LAS)-314(vir)1(tual)]TJ -53.48 -11.955 Td [(parallel)-333(mac)27(hin)1(e)-1(.)]TJ 0 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.379 0 Td [(global)]TJ/F8 9.9626 Tf 29.756 0 Td [(.)]TJ -62.135 -11.956 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.486 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ
|
||||
0 g 0 G
|
||||
89.442 -366.168 Td [(107)]TJ
|
||||
0 g 0 G
|
||||
@@ -19432,7 +19432,7 @@ endstream
|
||||
endobj
|
||||
1580 0 obj
|
||||
<<
|
||||
/Length 3025
|
||||
/Length 3044
|
||||
>>
|
||||
stream
|
||||
0 g 0 G
|
||||
@@ -19455,7 +19455,7 @@ BT
|
||||
/F16 11.9552 Tf 198.729 706.129 Td [(rank)-375(|)-375(Get)-375(the)-375(MPI)-375(rank)]TJ
|
||||
0 g 0 G
|
||||
0 g 0 G
|
||||
/F30 9.9626 Tf -48.024 -18.389 Td [(call)-525(psb_get_rank\050rank,)-525(icontxt,)-525(id\051)]TJ/F8 9.9626 Tf 14.944 -21.918 Td [(This)-333(subroutine)-334(retu)1(rns)-334(the)-333(MPI)-333(rank)-334(of)-333(the)-333(PSBLAS)-334(pr)1(o)-28(cess)]TJ/F11 9.9626 Tf 274.665 0 Td [(id)]TJ
|
||||
/F30 9.9626 Tf -48.024 -18.389 Td [(rank)-525(=)-525(psb_get_rank\050icontxt,)-525(id\051)]TJ/F8 9.9626 Tf 14.944 -21.918 Td [(This)-333(subroutine)-334(retu)1(rns)-334(the)-333(MPI)-333(rank)-334(of)-333(the)-333(PSBLAS)-334(pr)1(o)-28(cess)]TJ/F11 9.9626 Tf 274.665 0 Td [(id)]TJ
|
||||
0 g 0 G
|
||||
/F27 9.9626 Tf -289.609 -19.926 Td [(T)32(yp)-32(e:)]TJ
|
||||
0 g 0 G
|
||||
@@ -19475,9 +19475,9 @@ BT
|
||||
/F27 9.9626 Tf -222.543 -21.918 Td [(On)-383(Return)]TJ
|
||||
0 g 0 G
|
||||
0 g 0 G
|
||||
0 -19.925 Td [(rank)]TJ
|
||||
0 -19.925 Td [(F)96(unciton)-384(v)64(alue)]TJ
|
||||
0 g 0 G
|
||||
/F8 9.9626 Tf 27.681 0 Td [(The)-333(MPI)-334(rank)-333(asso)-28(ciated)-333(with)-333(the)-334(PSBLAS)-333(pro)-28(cess)]TJ/F11 9.9626 Tf 230.248 0 Td [(id)]TJ/F8 9.9626 Tf 8.617 0 Td [(.)]TJ -241.639 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.451 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ
|
||||
/F8 9.9626 Tf 78.386 0 Td [(The)-333(MPI)-334(rank)-333(asso)-28(ciated)-333(with)-333(the)-334(PSBLAS)-333(pro)-28(cess)]TJ/F11 9.9626 Tf 230.248 0 Td [(id)]TJ/F8 9.9626 Tf 8.618 0 Td [(.)]TJ -292.345 -11.955 Td [(Scop)-28(e:)]TJ/F27 9.9626 Tf 32.378 0 Td [(lo)-32(cal)]TJ/F8 9.9626 Tf 23.073 0 Td [(.)]TJ -55.451 -11.955 Td [(T)28(yp)-28(e:)]TJ/F27 9.9626 Tf 29.611 0 Td [(required)]TJ/F8 9.9626 Tf 41.898 0 Td [(.)]TJ -71.509 -11.955 Td [(In)28(ten)28(t:)]TJ/F27 9.9626 Tf 33.485 0 Td [(out)]TJ/F8 9.9626 Tf 16.549 0 Td [(.)]TJ
|
||||
0 g 0 G
|
||||
89.442 -322.333 Td [(108)]TJ
|
||||
0 g 0 G
|
||||
@@ -28619,8 +28619,8 @@ endobj
|
||||
2039 0 obj
|
||||
<<
|
||||
/Title (Parallel Sparse BLAS V. 3.6.0) /Subject (Parallel Sparse Basic Linear Algebra Subroutines) /Keywords (Computer Science Linear Algebra Fluid Dynamics Parallel Linux MPI PSBLAS Iterative Solvers Preconditioners) /Creator (pdfLaTeX) /Producer ($Id$) /Author()/Title()/Subject()/Creator(LaTeX with hyperref package)/Producer(pdfTeX-1.40.17)/Keywords()
|
||||
/CreationDate (D:20190528154807+01'00')
|
||||
/ModDate (D:20190528154807+01'00')
|
||||
/CreationDate (D:20191120134929Z)
|
||||
/ModDate (D:20191120134929Z)
|
||||
/Trapped /False
|
||||
/PTEX.Fullbanner (This is pdfTeX, Version 3.14159265-2.6-1.40.17 (TeX Live 2016) kpathsea version 6.2.2)
|
||||
>>
|
||||
@@ -28831,7 +28831,7 @@ endobj
|
||||
/W [1 3 1]
|
||||
/Root 2038 0 R
|
||||
/Info 2039 0 R
|
||||
/ID [<23726BF4ED0FB1922B6F90535442F1B2> <23726BF4ED0FB1922B6F90535442F1B2>]
|
||||
/ID [<3E2A82116FCF1FDC3F29F720B9A71E82> <3E2A82116FCF1FDC3F29F720B9A71E82>]
|
||||
/Length 10205
|
||||
>>
|
||||
stream
|
||||
@@ -28865,16 +28865,14 @@ W
|
||||
Ïø | ||||