Build failure on 32bit

Alfio Lazzaro alfio.... at gmail.com
Mon Jan 8 13:42:10 UTC 2018


Hi Michael,
this is interesting...

mp_max_memory_size is the maximum size for a MPI message, which I set to 
2GB (2*2^30), i.e.

mp_max_memory_size = 2*INT(2, KIND=MPI_ADDRESS_KIND)**30 

The error is that I have to subtract 1 on a 32bit system (Thanks Tiziano to 
point me that)... However, this is exact what the HUGE function does, 
therefore I changed the code in the trunk with:

-   INTEGER(KIND=MPI_ADDRESS_KIND), PARAMETER, PRIVATE :: 
mp_max_memory_size = 2*INT(2, KIND=MPI_ADDRESS_KIND)**30 
+   INTEGER(KIND=MPI_ADDRESS_KIND), PARAMETER, PRIVATE :: 
mp_max_memory_size = HUGE(INT(1,KIND=int_4))

Could you try it?

Alfio





Il giorno lunedì 8 gennaio 2018 12:07:28 UTC+1, Michael Banck ha scritto:
>
> Hi, 
>
> I finally managed to upload CP2K-5.1 to Debian and it fails to build on 
> 32bit systems, always with this error: 
>
> mpif90 -c -g -Wall -O2 -ffast-math -funroll-loops -ftree-vectorize 
> -ffree-form -ffree-line-length-none -D__GFORTRAN -D__FFTSG -D__FFTW3 
> -D__FFTW3_UNALIGNED -D__LIBINT -D__LIBXC2 -D__parallel -D__BLACS 
> -D__SCALAPACK -D__ELPA3 -I/usr/include/elpa/modules/ -I/usr/include 
> -D__COMPILE_ARCH="\"Linux-i686-gfortran\"" -D__COMPILE_DATE="\"Sun Jan 
> 7 17:12:46 UTC 2018\"" -D__COMPILE_HOST="\"x86-grnet-01\"" 
> -D__COMPILE_REVISION="\"svn:18091\"" -D__DATA_DIR="\"/usr/share/cp2k\"" 
> -D__SHORT_FILE__="\"mpiwrap/message_passing.F\"" 
> -I'/<<PKGBUILDDIR>>/src/mpiwrap/' message_passing.F90 
> /<<PKGBUILDDIR>>/src/mpiwrap/message_passing.F:85:79: 
>
>     INTEGER(KIND=MPI_ADDRESS_KIND), PARAMETER, PRIVATE :: 
> mp_max_memory_size = 2*INT(2, KIND=MPI_ADDRESS_KIND)**30 
>                                                                           
>      1 
> Error: Arithmetic overflow at (1) 
> /<<PKGBUILDDIR>>/src/mpiwrap/message_passing.f90:3982:40: 
>
>       IF (mp_size .GT. mp_max_memory_size) THEN 
>                                         1 
> Error: Symbol 'mp_max_memory_size' at (1) has no IMPLICIT type 
> [...] 
> /<<PKGBUILDDIR>>/makefiles/Makefile:427: recipe for target 
> 'message_passing.o' failed 
> make[5]: *** [message_passing.o] Error 1 
>
> See 
>
> https://buildd.debian.org/status/fetch.php?pkg=cp2k&arch=i386&ver=5.1-1&stamp=1515345178&raw=0 
> for a specific build log and 
> https://buildd.debian.org/status/package.php?p=cp2k for the overview. 
>
> I understand that few people run CP2K on 32bit systems in production but 
> this might be easy(?) enough to fix to make it build? 
>
>
> Michael 
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.cp2k.org/archives/cp2k-user/attachments/20180108/7590aec1/attachment.htm>


More information about the CP2K-user mailing list