mld2p4-2:

1. Fix inner_mod to avoid duplicate interfaces for MLD_ILU*
2. Fix configry to check for SERIAL_MPI
stopcriterion
Salvatore Filippone 15 years ago
parent ac62ac7db5
commit dd22c4ca47

@ -858,3 +858,34 @@ CPPFLAGS="$save_CPPFLAGS";
CC="$save_CC";
])dnl
dnl @synopsis PAC_ARG_SERIAL_MPI
dnl
dnl Test for --with-serial-mpi={yes|no}
dnl
dnl
dnl
dnl Example use:
dnl
dnl
dnl @author Salvatore Filippone <salvatore.filippone@uniroma2.it>
dnl
AC_DEFUN([PAC_ARG_SERIAL_MPI],
[
AC_MSG_CHECKING([whether we want serial (fake) mpi])
AC_ARG_ENABLE(serial,
AC_HELP_STRING([--enable-serial],
[Specify whether to enable a fake mpi library to run in serial mode. ]),
[
pac_cv_serial_mpi="yes";
]
dnl ,
dnl [pac_cv_serial_mpi="no";]
)
if test x"$pac_cv_serial_mpi" == x"yes" ; then
AC_MSG_RESULT([yes.])
else
pac_cv_serial_mpi="no";
AC_MSG_RESULT([no.])
fi
]
)

30
configure vendored

@ -719,6 +719,7 @@ with_psblas
with_libs
with_umfpack
with_umfpackdir
enable_serial
with_superlu
with_superludir
with_superludist
@ -1357,6 +1358,13 @@ if test -n "$ac_init_help"; then
esac
cat <<\_ACEOF
Optional Features:
--disable-option-checking ignore unrecognized --enable/--with options
--disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
--enable-FEATURE[=ARG] include FEATURE [ARG=yes]
--enable-serial Specify whether to enable a fake mpi library to run
in serial mode.
Optional Packages:
--with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
--without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
@ -4400,7 +4408,27 @@ else
UMF_FLAGS=""
fi
PAC_ARG_SERIAL_MPI
{ $as_echo "$as_me:$LINENO: checking whether we want serial (fake) mpi" >&5
$as_echo_n "checking whether we want serial (fake) mpi... " >&6; }
# Check whether --enable-serial was given.
if test "${enable_serial+set}" = set; then
enableval=$enable_serial;
pac_cv_serial_mpi="yes";
fi
if test x"$pac_cv_serial_mpi" == x"yes" ; then
{ $as_echo "$as_me:$LINENO: result: yes." >&5
$as_echo "yes." >&6; }
else
pac_cv_serial_mpi="no";
{ $as_echo "$as_me:$LINENO: result: no." >&5
$as_echo "no." >&6; }
fi
#Note : we miss the name of the Intel C compiler
if test x"$pac_cv_serial_mpi" == x"yes" ; then

@ -938,129 +938,129 @@ module mld_inner_mod
end subroutine mld_zumf_bld
end interface
interface mld_ilu0_fact
subroutine mld_silu0_fact(ialg,a,l,u,d,info,blck,upd)
use psb_sparse_mod, only : psb_s_sparse_mat, psb_desc_type, psb_spk_
integer, intent(in) :: ialg
integer, intent(out) :: info
type(psb_s_sparse_mat),intent(in) :: a
type(psb_s_sparse_mat),intent(inout) :: l,u
type(psb_s_sparse_mat),intent(in), optional, target :: blck
character, intent(in), optional :: upd
real(psb_spk_), intent(inout) :: d(:)
end subroutine mld_silu0_fact
subroutine mld_dilu0_fact(ialg,a,l,u,d,info,blck,upd)
use psb_sparse_mod, only : psb_d_sparse_mat, psb_desc_type, psb_dpk_
integer, intent(in) :: ialg
integer, intent(out) :: info
type(psb_d_sparse_mat),intent(in) :: a
type(psb_d_sparse_mat),intent(inout) :: l,u
type(psb_d_sparse_mat),intent(in), optional, target :: blck
character, intent(in), optional :: upd
real(psb_dpk_), intent(inout) :: d(:)
end subroutine mld_dilu0_fact
subroutine mld_cilu0_fact(ialg,a,l,u,d,info,blck,upd)
use psb_sparse_mod, only : psb_c_sparse_mat, psb_desc_type, psb_spk_
integer, intent(in) :: ialg
integer, intent(out) :: info
type(psb_c_sparse_mat),intent(in) :: a
type(psb_c_sparse_mat),intent(inout) :: l,u
type(psb_c_sparse_mat),intent(in), optional, target :: blck
character, intent(in), optional :: upd
complex(psb_spk_), intent(inout) :: d(:)
end subroutine mld_cilu0_fact
subroutine mld_zilu0_fact(ialg,a,l,u,d,info,blck,upd)
use psb_sparse_mod, only : psb_z_sparse_mat, psb_desc_type, psb_dpk_
integer, intent(in) :: ialg
integer, intent(out) :: info
type(psb_z_sparse_mat),intent(in) :: a
type(psb_z_sparse_mat),intent(inout) :: l,u
type(psb_z_sparse_mat),intent(in), optional, target :: blck
character, intent(in), optional :: upd
complex(psb_dpk_), intent(inout) :: d(:)
end subroutine mld_zilu0_fact
end interface
interface mld_iluk_fact
subroutine mld_siluk_fact(fill_in,ialg,a,l,u,d,info,blck)
use psb_sparse_mod, only : psb_s_sparse_mat, psb_desc_type, psb_spk_
integer, intent(in) :: fill_in,ialg
integer, intent(out) :: info
type(psb_s_sparse_mat),intent(in) :: a
type(psb_s_sparse_mat),intent(inout) :: l,u
type(psb_s_sparse_mat),intent(in), optional, target :: blck
real(psb_spk_), intent(inout) :: d(:)
end subroutine mld_siluk_fact
subroutine mld_diluk_fact(fill_in,ialg,a,l,u,d,info,blck)
use psb_sparse_mod, only : psb_d_sparse_mat, psb_desc_type, psb_dpk_
integer, intent(in) :: fill_in,ialg
integer, intent(out) :: info
type(psb_d_sparse_mat),intent(in) :: a
type(psb_d_sparse_mat),intent(inout) :: l,u
type(psb_d_sparse_mat),intent(in), optional, target :: blck
real(psb_dpk_), intent(inout) :: d(:)
end subroutine mld_diluk_fact
subroutine mld_ciluk_fact(fill_in,ialg,a,l,u,d,info,blck)
use psb_sparse_mod, only : psb_c_sparse_mat, psb_desc_type, psb_spk_
integer, intent(in) :: fill_in,ialg
integer, intent(out) :: info
type(psb_c_sparse_mat),intent(in) :: a
type(psb_c_sparse_mat),intent(inout) :: l,u
type(psb_c_sparse_mat),intent(in), optional, target :: blck
complex(psb_spk_), intent(inout) :: d(:)
end subroutine mld_ciluk_fact
subroutine mld_ziluk_fact(fill_in,ialg,a,l,u,d,info,blck)
use psb_sparse_mod, only : psb_z_sparse_mat, psb_desc_type, psb_dpk_
integer, intent(in) :: fill_in,ialg
integer, intent(out) :: info
type(psb_z_sparse_mat),intent(in) :: a
type(psb_z_sparse_mat),intent(inout) :: l,u
type(psb_z_sparse_mat),intent(in), optional, target :: blck
complex(psb_dpk_), intent(inout) :: d(:)
end subroutine mld_ziluk_fact
end interface
interface mld_ilut_fact
subroutine mld_silut_fact(fill_in,thres,a,l,u,d,info,blck)
use psb_sparse_mod, only : psb_s_sparse_mat, psb_desc_type, psb_spk_
integer, intent(in) :: fill_in
real(psb_spk_), intent(in) :: thres
integer, intent(out) :: info
type(psb_s_sparse_mat),intent(in) :: a
type(psb_s_sparse_mat),intent(inout) :: l,u
type(psb_s_sparse_mat),intent(in), optional, target :: blck
real(psb_spk_), intent(inout) :: d(:)
end subroutine mld_silut_fact
subroutine mld_dilut_fact(fill_in,thres,a,l,u,d,info,blck)
use psb_sparse_mod, only : psb_d_sparse_mat, psb_desc_type, psb_dpk_
integer, intent(in) :: fill_in
real(psb_dpk_), intent(in) :: thres
integer, intent(out) :: info
type(psb_d_sparse_mat),intent(in) :: a
type(psb_d_sparse_mat),intent(inout) :: l,u
type(psb_d_sparse_mat),intent(in), optional, target :: blck
real(psb_dpk_), intent(inout) :: d(:)
end subroutine mld_dilut_fact
subroutine mld_cilut_fact(fill_in,thres,a,l,u,d,info,blck)
use psb_sparse_mod, only : psb_c_sparse_mat, psb_desc_type, psb_spk_
integer, intent(in) :: fill_in
real(psb_spk_), intent(in) :: thres
integer, intent(out) :: info
type(psb_c_sparse_mat),intent(in) :: a
type(psb_c_sparse_mat),intent(inout) :: l,u
type(psb_c_sparse_mat),intent(in), optional, target :: blck
complex(psb_spk_), intent(inout) :: d(:)
end subroutine mld_cilut_fact
subroutine mld_zilut_fact(fill_in,thres,a,l,u,d,info,blck)
use psb_sparse_mod, only : psb_z_sparse_mat, psb_desc_type, psb_dpk_
integer, intent(in) :: fill_in
real(psb_dpk_), intent(in) :: thres
integer, intent(out) :: info
type(psb_z_sparse_mat),intent(in) :: a
type(psb_z_sparse_mat),intent(inout) :: l,u
type(psb_z_sparse_mat),intent(in), optional, target :: blck
complex(psb_dpk_), intent(inout) :: d(:)
end subroutine mld_zilut_fact
end interface
!!$ interface mld_ilu0_fact
!!$ subroutine mld_silu0_fact(ialg,a,l,u,d,info,blck,upd)
!!$ use psb_sparse_mod, only : psb_s_sparse_mat, psb_desc_type, psb_spk_
!!$ integer, intent(in) :: ialg
!!$ integer, intent(out) :: info
!!$ type(psb_s_sparse_mat),intent(in) :: a
!!$ type(psb_s_sparse_mat),intent(inout) :: l,u
!!$ type(psb_s_sparse_mat),intent(in), optional, target :: blck
!!$ character, intent(in), optional :: upd
!!$ real(psb_spk_), intent(inout) :: d(:)
!!$ end subroutine mld_silu0_fact
!!$ subroutine mld_dilu0_fact(ialg,a,l,u,d,info,blck,upd)
!!$ use psb_sparse_mod, only : psb_d_sparse_mat, psb_desc_type, psb_dpk_
!!$ integer, intent(in) :: ialg
!!$ integer, intent(out) :: info
!!$ type(psb_d_sparse_mat),intent(in) :: a
!!$ type(psb_d_sparse_mat),intent(inout) :: l,u
!!$ type(psb_d_sparse_mat),intent(in), optional, target :: blck
!!$ character, intent(in), optional :: upd
!!$ real(psb_dpk_), intent(inout) :: d(:)
!!$ end subroutine mld_dilu0_fact
!!$ subroutine mld_cilu0_fact(ialg,a,l,u,d,info,blck,upd)
!!$ use psb_sparse_mod, only : psb_c_sparse_mat, psb_desc_type, psb_spk_
!!$ integer, intent(in) :: ialg
!!$ integer, intent(out) :: info
!!$ type(psb_c_sparse_mat),intent(in) :: a
!!$ type(psb_c_sparse_mat),intent(inout) :: l,u
!!$ type(psb_c_sparse_mat),intent(in), optional, target :: blck
!!$ character, intent(in), optional :: upd
!!$ complex(psb_spk_), intent(inout) :: d(:)
!!$ end subroutine mld_cilu0_fact
!!$ subroutine mld_zilu0_fact(ialg,a,l,u,d,info,blck,upd)
!!$ use psb_sparse_mod, only : psb_z_sparse_mat, psb_desc_type, psb_dpk_
!!$ integer, intent(in) :: ialg
!!$ integer, intent(out) :: info
!!$ type(psb_z_sparse_mat),intent(in) :: a
!!$ type(psb_z_sparse_mat),intent(inout) :: l,u
!!$ type(psb_z_sparse_mat),intent(in), optional, target :: blck
!!$ character, intent(in), optional :: upd
!!$ complex(psb_dpk_), intent(inout) :: d(:)
!!$ end subroutine mld_zilu0_fact
!!$ end interface
!!$
!!$ interface mld_iluk_fact
!!$ subroutine mld_siluk_fact(fill_in,ialg,a,l,u,d,info,blck)
!!$ use psb_sparse_mod, only : psb_s_sparse_mat, psb_desc_type, psb_spk_
!!$ integer, intent(in) :: fill_in,ialg
!!$ integer, intent(out) :: info
!!$ type(psb_s_sparse_mat),intent(in) :: a
!!$ type(psb_s_sparse_mat),intent(inout) :: l,u
!!$ type(psb_s_sparse_mat),intent(in), optional, target :: blck
!!$ real(psb_spk_), intent(inout) :: d(:)
!!$ end subroutine mld_siluk_fact
!!$ subroutine mld_diluk_fact(fill_in,ialg,a,l,u,d,info,blck)
!!$ use psb_sparse_mod, only : psb_d_sparse_mat, psb_desc_type, psb_dpk_
!!$ integer, intent(in) :: fill_in,ialg
!!$ integer, intent(out) :: info
!!$ type(psb_d_sparse_mat),intent(in) :: a
!!$ type(psb_d_sparse_mat),intent(inout) :: l,u
!!$ type(psb_d_sparse_mat),intent(in), optional, target :: blck
!!$ real(psb_dpk_), intent(inout) :: d(:)
!!$ end subroutine mld_diluk_fact
!!$ subroutine mld_ciluk_fact(fill_in,ialg,a,l,u,d,info,blck)
!!$ use psb_sparse_mod, only : psb_c_sparse_mat, psb_desc_type, psb_spk_
!!$ integer, intent(in) :: fill_in,ialg
!!$ integer, intent(out) :: info
!!$ type(psb_c_sparse_mat),intent(in) :: a
!!$ type(psb_c_sparse_mat),intent(inout) :: l,u
!!$ type(psb_c_sparse_mat),intent(in), optional, target :: blck
!!$ complex(psb_spk_), intent(inout) :: d(:)
!!$ end subroutine mld_ciluk_fact
!!$ subroutine mld_ziluk_fact(fill_in,ialg,a,l,u,d,info,blck)
!!$ use psb_sparse_mod, only : psb_z_sparse_mat, psb_desc_type, psb_dpk_
!!$ integer, intent(in) :: fill_in,ialg
!!$ integer, intent(out) :: info
!!$ type(psb_z_sparse_mat),intent(in) :: a
!!$ type(psb_z_sparse_mat),intent(inout) :: l,u
!!$ type(psb_z_sparse_mat),intent(in), optional, target :: blck
!!$ complex(psb_dpk_), intent(inout) :: d(:)
!!$ end subroutine mld_ziluk_fact
!!$ end interface
!!$
!!$ interface mld_ilut_fact
!!$ subroutine mld_silut_fact(fill_in,thres,a,l,u,d,info,blck)
!!$ use psb_sparse_mod, only : psb_s_sparse_mat, psb_desc_type, psb_spk_
!!$ integer, intent(in) :: fill_in
!!$ real(psb_spk_), intent(in) :: thres
!!$ integer, intent(out) :: info
!!$ type(psb_s_sparse_mat),intent(in) :: a
!!$ type(psb_s_sparse_mat),intent(inout) :: l,u
!!$ type(psb_s_sparse_mat),intent(in), optional, target :: blck
!!$ real(psb_spk_), intent(inout) :: d(:)
!!$ end subroutine mld_silut_fact
!!$ subroutine mld_dilut_fact(fill_in,thres,a,l,u,d,info,blck)
!!$ use psb_sparse_mod, only : psb_d_sparse_mat, psb_desc_type, psb_dpk_
!!$ integer, intent(in) :: fill_in
!!$ real(psb_dpk_), intent(in) :: thres
!!$ integer, intent(out) :: info
!!$ type(psb_d_sparse_mat),intent(in) :: a
!!$ type(psb_d_sparse_mat),intent(inout) :: l,u
!!$ type(psb_d_sparse_mat),intent(in), optional, target :: blck
!!$ real(psb_dpk_), intent(inout) :: d(:)
!!$ end subroutine mld_dilut_fact
!!$ subroutine mld_cilut_fact(fill_in,thres,a,l,u,d,info,blck)
!!$ use psb_sparse_mod, only : psb_c_sparse_mat, psb_desc_type, psb_spk_
!!$ integer, intent(in) :: fill_in
!!$ real(psb_spk_), intent(in) :: thres
!!$ integer, intent(out) :: info
!!$ type(psb_c_sparse_mat),intent(in) :: a
!!$ type(psb_c_sparse_mat),intent(inout) :: l,u
!!$ type(psb_c_sparse_mat),intent(in), optional, target :: blck
!!$ complex(psb_spk_), intent(inout) :: d(:)
!!$ end subroutine mld_cilut_fact
!!$ subroutine mld_zilut_fact(fill_in,thres,a,l,u,d,info,blck)
!!$ use psb_sparse_mod, only : psb_z_sparse_mat, psb_desc_type, psb_dpk_
!!$ integer, intent(in) :: fill_in
!!$ real(psb_dpk_), intent(in) :: thres
!!$ integer, intent(out) :: info
!!$ type(psb_z_sparse_mat),intent(in) :: a
!!$ type(psb_z_sparse_mat),intent(inout) :: l,u
!!$ type(psb_z_sparse_mat),intent(in), optional, target :: blck
!!$ complex(psb_dpk_), intent(inout) :: d(:)
!!$ end subroutine mld_zilut_fact
!!$ end interface
end module mld_inner_mod

Loading…
Cancel
Save