libraries/scafacos: Updated for version 1.0.1.

Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
This commit is contained in:
Giancarlo Dessi 2024-04-14 10:58:20 +07:00 committed by Willy Sudiarto Raharjo
parent e700e6be84
commit b88a2d6ab4
No known key found for this signature in database
GPG key ID: 3F617144D7238786
4 changed files with 202 additions and 8 deletions

View file

@ -0,0 +1,188 @@
--- ./lib/fmm/src/mp_wrapper.f90
+++ ./lib/fmm/src/mp_wrapper.f90
index c78178b..6a3c403 100644
--- a/lib/fmm/src/mp_wrapper.f90
+++ b/lib/fmm/src/mp_wrapper.f90
@@ -491,7 +491,12 @@ implicit none
integer(MyMPI_Comm) :: comm
integer(MyMPI_Errorcode) :: ierr,ierr2
integer(MyMPI_Entries) :: elem_tmp
-
+ interface
+ subroutine mpi_allreduce(send,recv,num,rtype,rop,rcomm,rerr)
+ integer(kind=8) :: recv
+ integer(kind=4) :: send, num, rop, rtype, rcomm, rerr
+ end subroutine mpi_allreduce
+ end interface
elem_tmp = 1
call mpi_allreduce(MPI_IN_PLACE,dst,elem_tmp,MPI_INTEGER8,op,comm,ierr)
@@ -510,6 +515,12 @@ implicit none
integer(MyMPI_Comm) :: comm
integer(MyMPI_Errorcode) :: ierr,ierr2
integer(MyMPI_Entries) :: elem_tmp
+ interface
+ subroutine mpi_allreduce(send,recv,num,rtype,rop,rcomm,rerr)
+ integer(kind=8), dimension(*) :: recv
+ integer(kind=4) :: send, num, rop, rtype, rcomm, rerr
+ end subroutine mpi_allreduce
+ end interface
elem_tmp = elem
@@ -528,6 +539,12 @@ implicit none
integer(MyMPI_Comm) :: comm
integer(MyMPI_Errorcode):: ierr,ierr2
integer(MyMPI_Entries) :: elem_tmp
+ interface
+ subroutine mpi_allreduce(send,recv,num,rtype,rop,rcomm,rerr)
+ real(kind=4) :: recv
+ integer(kind=4) :: send, num, rop, rtype, rcomm, rerr
+ end subroutine mpi_allreduce
+ end interface
elem_tmp = 1
@@ -547,6 +564,12 @@ implicit none
integer(MyMPI_Comm) :: comm
integer(MyMPI_Errorcode) :: ierr,ierr2
integer(MyMPI_Entries) :: elem_tmp
+ interface
+ subroutine mpi_allreduce(send,recv,num,rtype,rop,rcomm,rerr)
+ real(kind=4), dimension(*) :: recv
+ integer(kind=4) :: send, num, rop, rtype, rcomm, rerr
+ end subroutine mpi_allreduce
+ end interface
elem_tmp = elem
@@ -566,6 +589,12 @@ implicit none
integer(MyMPI_Comm) :: comm
integer(MyMPI_Errorcode) :: ierr,ierr2
integer(MyMPI_Entries) :: elem_tmp
+ interface
+ subroutine mpi_allreduce(send,recv,num,rtype,rop,rcomm,rerr)
+ real(kind=4), dimension(*) :: recv
+ integer(kind=4) :: send, num, rop, rtype, rcomm, rerr
+ end subroutine mpi_allreduce
+ end interface
lo = lbound(dst,1)
hi = ubound(dst,1)
@@ -586,6 +615,12 @@ implicit none
integer(MyMPI_Comm) :: comm
integer(MyMPI_Errorcode):: ierr,ierr2
integer(MyMPI_Entries) :: elem_tmp
+ interface
+ subroutine mpi_allreduce(send,recv,num,rtype,rop,rcomm,rerr)
+ real(kind=8) :: recv
+ integer(kind=4) :: send, num, rop, rtype, rcomm, rerr
+ end subroutine mpi_allreduce
+ end interface
elem_tmp = 1
@@ -605,6 +640,12 @@ implicit none
integer(MyMPI_Comm) :: comm
integer(MyMPI_Errorcode) :: ierr,ierr2
integer(MyMPI_Entries) :: elem_tmp
+ interface
+ subroutine mpi_allreduce(send,recv,num,rtype,rop,rcomm,rerr)
+ real(kind=8), dimension(*) :: recv
+ integer(kind=4) :: send, num, rop, rtype, rcomm, rerr
+ end subroutine mpi_allreduce
+ end interface
elem_tmp = elem
@@ -624,6 +665,12 @@ implicit none
integer(MyMPI_Comm) :: comm
integer(MyMPI_Errorcode) :: ierr,ierr2
integer(MyMPI_Entries) :: elem_tmp
+ interface
+ subroutine mpi_allreduce(send,recv,num,rtype,rop,rcomm,rerr)
+ real(kind=8), dimension(*) :: recv
+ integer(kind=4) :: send, num, rop, rtype, rcomm, rerr
+ end subroutine mpi_allreduce
+ end interface
lo = lbound(dst,1)
hi = ubound(dst,1)
@@ -648,6 +695,12 @@ implicit none
integer(MyMPI_Comm) :: comm
integer(MyMPI_Errorcode):: ierr,ierr2
integer(MyMPI_Entries) :: elem_tmp
+ interface
+ subroutine mpi_allgather(send,snum,stype,recv,rnum,rtype,gcomm,gerr)
+ byte, dimension(*) :: recv
+ integer(kind=4) :: send, snum, rnum, stype, rtype, gcomm, gerr
+ end subroutine mpi_allgather
+ end interface
lo = lbound(dst,1)
hi = ubound(dst,1)
@@ -668,6 +721,12 @@ implicit none
integer(MyMPI_Comm) :: comm
integer(MyMPI_Errorcode):: ierr,ierr2
integer(MyMPI_Entries) :: elem_tmp
+ interface
+ subroutine mpi_allgather(send,snum,stype,recv,rnum,rtype,gcomm,gerr)
+ byte, dimension(*) :: recv
+ integer(kind=4) :: send, snum, rnum, stype, rtype, gcomm, gerr
+ end subroutine mpi_allgather
+ end interface
lo1 = lbound(dst,1)
hi1 = ubound(dst,1)
@@ -690,6 +749,12 @@ implicit none
integer(MyMPI_Comm) :: comm
integer(MyMPI_Errorcode) :: ierr,ierr2
integer(MyMPI_Entries) :: elem_tmp
+ interface
+ subroutine mpi_allgather(send,snum,stype,recv,rnum,rtype,gcomm,gerr)
+ real(kind=4), dimension(*) :: recv
+ integer(kind=4) :: send, snum, rnum, stype, rtype, gcomm, gerr
+ end subroutine mpi_allgather
+ end interface
elem_tmp = elem
@@ -708,6 +773,12 @@ implicit none
integer(MyMPI_Comm) :: comm
integer(MyMPI_Errorcode) :: ierr,ierr2
integer(MyMPI_Entries) :: elem_tmp
+ interface
+ subroutine mpi_allgather(send,snum,stype,recv,rnum,rtype,gcomm,gerr)
+ integer(kind=8), dimension(*) :: recv
+ integer(kind=4) :: send, snum, rnum, stype, rtype, gcomm, gerr
+ end subroutine mpi_allgather
+ end interface
elem_tmp = elem
@@ -726,6 +797,12 @@ implicit none
integer(MyMPI_Comm) :: comm
integer(MyMPI_Errorcode) :: ierr,ierr2
integer(MyMPI_Entries) :: elem_tmp
+ interface
+ subroutine mpi_allgather(send,snum,stype,recv,rnum,rtype,gcomm,gerr)
+ integer(kind=8), dimension(*) :: recv
+ integer(kind=4) :: send, snum, rnum, stype, rtype, gcomm, gerr
+ end subroutine mpi_allgather
+ end interface
lo = lbound(dst,1)
hi = ubound(dst,1)
diff --git a/src/fcs_fmm.c b/src/fcs_fmm.c
index 37acb67..10bbd10 100644
--- a/src/fcs_fmm.c
+++ b/src/fcs_fmm.c
@@ -430,7 +430,7 @@ FCSResult fcs_fmm_tune(FCS handle, fcs_int local_particles, fcs_float *positions
return FCS_RESULT_SUCCESS;
}
-int fcs_mpi_fmm_sort_front_part, fcs_mpi_fmm_sort_back_part, fcs_mpi_fmm_sort_front_merge_presorted;
+extern int fcs_mpi_fmm_sort_front_part, fcs_mpi_fmm_sort_back_part, fcs_mpi_fmm_sort_front_merge_presorted;
/* internal fmm-specific run function */
FCSResult fcs_fmm_run(FCS handle, fcs_int local_particles,

View file

@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=scafacos
VERSION=${VERSION:-1.0.4}
VERSION=${VERSION:-1.0.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@ -75,8 +75,10 @@ find -L . \
-o -perm 511 \) -exec chmod 755 {} \; -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
patch -p1 < $CWD/scafacos-1.0.1.fix.diff
CFLAGS="$SLKCFLAGS" \
CFLAGS="$SLKCFLAGS -g " \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
@ -84,8 +86,12 @@ CXXFLAGS="$SLKCFLAGS" \
--sysconfdir=/etc \
--localstatedir=/var \
--docdir=/usr/doc/$PRGNAM-$VERSION \
--build=$ARCH-slackware-linux
make
--build=$ARCH-slackware-linux \
--enable-fcs-solvers=fmm,p2nfft,direct,ewald,p3m \
--disable-static \
--enable-shared
make -j 10
make doc
make install DESTDIR=$PKG

View file

@ -1,8 +1,8 @@
PRGNAM="scafacos"
VERSION="1.0.4"
VERSION="1.0.1"
HOMEPAGE="http://www.scafacos.de"
DOWNLOAD="https://github.com/scafacos/scafacos/releases/download/v1.0.4/scafacos-1.0.4.tar.gz"
MD5SUM="23867540ec32e63ce71d6ecc105278d2"
DOWNLOAD="https://github.com/scafacos/scafacos/releases/download/v1.0.1/scafacos-1.0.1.tar.gz"
MD5SUM="bd46d74e3296bd8a444d731bb10c1738"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="openmpi"

View file

@ -11,7 +11,7 @@ scafacos:
scafacos: ScaFaCoS is a parallel library that includes in a common interface
scafacos: various algorithms for solving electrostatic and gravitational
scafacos: problems in large particle simulations for scientific and technical
scafacos: applications in Phisics and Materials science.
scafacos: applications in Physics and Materials science.
scafacos:
scafacos: Home page: http://www.scafacos.de
scafacos: