krylov/psb_dcgstab.F90

Updated MPE logging.
psblas3-type-indexed
Salvatore Filippone 14 years ago
parent 208d444dc7
commit 432b6caa9d

@ -100,9 +100,8 @@ Subroutine psb_dcgstab(a,prec,b,x,eps,desc_a,info,itmax,iter,err,itrace,istop)
use psb_inner_krylov_mod use psb_inner_krylov_mod
use psb_krylov_mod use psb_krylov_mod
implicit none implicit none
type(psb_dspmat_type), intent(in) :: a
type(psb_dspmat_type), intent(in) :: a
class(psb_dprec_type), Intent(in) :: prec class(psb_dprec_type), Intent(in) :: prec
Type(psb_desc_type), Intent(in) :: desc_a Type(psb_desc_type), Intent(in) :: desc_a
Real(psb_dpk_), Intent(in) :: b(:) Real(psb_dpk_), Intent(in) :: b(:)
@ -127,8 +126,8 @@ Subroutine psb_dcgstab(a,prec,b,x,eps,desc_a,info,itmax,iter,err,itrace,istop)
type(psb_itconv_type) :: stopdat type(psb_itconv_type) :: stopdat
#ifdef MPE_KRYLOV #ifdef MPE_KRYLOV
include "mpe_logf.h"
Integer istpb, istpe, ifctb, ifcte, imerr, irank, icomm,immb,imme Integer istpb, istpe, ifctb, ifcte, imerr, irank, icomm,immb,imme
Integer mpe_log_get_event_number,mpe_Describe_state,mpe_log_event
#endif #endif
character(len=20) :: name character(len=20) :: name
character(len=*), parameter :: methdname='BiCGStab' character(len=*), parameter :: methdname='BiCGStab'
@ -144,19 +143,19 @@ Subroutine psb_dcgstab(a,prec,b,x,eps,desc_a,info,itmax,iter,err,itrace,istop)
& write(debug_unit,*) me,' ',trim(name),': from psb_info',np & write(debug_unit,*) me,' ',trim(name),': from psb_info',np
#ifdef MPE_KRYLOV #ifdef MPE_KRYLOV
call psb_get_mpicomm(ictxt,icomm) !!$ call psb_get_mpicomm(ictxt,icomm)
call psb_get_rank(irank,ictxt,me) !!$ call psb_get_rank(irank,icomm,me)
istpb = mpe_log_get_event_number() imerr = MPE_Log_get_state_eventIDs(istpb,istpe)
istpe = mpe_log_get_event_number() imerr = MPE_Log_get_state_eventIDs(ifctb,ifcte)
ifctb = mpe_log_get_event_number() imerr = MPE_Log_get_state_eventIDs(immb,imme)
ifcte = mpe_log_get_event_number()
immb = mpe_log_get_event_number() if (me == 0) then
imme = mpe_log_get_event_number()
if (irank == 0) then
info = mpe_describe_state(istpb,istpe,"Solver","WhiteSmoke") info = mpe_describe_state(istpb,istpe,"Solver","WhiteSmoke")
info = mpe_describe_state(ifctb,ifcte,"PREC","SteelBlue") info = mpe_describe_state(ifctb,ifcte,"PREC","SteelBlue")
info = mpe_describe_state(immb,imme,"SPMM","DarkOrange") info = mpe_describe_state(immb,imme,"SPMM","DarkOrange")
endif endif
call psb_barrier(ictxt)
call mpi_Pcontrol(1,info)
#endif #endif
mglob = psb_cd_get_global_rows(desc_a) mglob = psb_cd_get_global_rows(desc_a)
@ -384,6 +383,8 @@ Subroutine psb_dcgstab(a,prec,b,x,eps,desc_a,info,itmax,iter,err,itrace,istop)
end if end if
#ifdef MPE_KRYLOV #ifdef MPE_KRYLOV
imerr = MPE_Log_event( istpe, 0, "ed CGSTAB" ) imerr = MPE_Log_event( istpe, 0, "ed CGSTAB" )
call mpi_Pcontrol(2,info)
call mpi_Pcontrol(0,info)
#endif #endif
! restore external global coherence behaviour ! restore external global coherence behaviour
call psb_restore_coher(ictxt,isvch) call psb_restore_coher(ictxt,isvch)

Loading…
Cancel
Save