[mpich-discuss] Problem using mpi_type_create_f90_integer

Thomas Jahns jahns at dkrz.de
Wed Dec 14 07:33:39 CST 2011


Hello,

I'm having some problems when using mpi_type_create_f90_integer, where, for 8
byte integers (i.e. requesting 18 decimal places), I get an immediate error for
and for 4 byte integers I get a later segmentation-fault when committing a
struct type containing the result of mpi_type_create_f90_integer, both bugs
happen with the current Intel Fortran compiler 12.1.0 20110811 and NAG Fortran
Compiler Release 5.2(747) (with gcc 4.6.1 host compiler for the NAG).

The below example exhibits both problem when run after compilation with defining
either WITH_BUG1 or WITH_BUG2.

In the case of WITH_BUG1 I get:

$  ~/opt/mpich2-1.4.1p1-nag52-x64-linux/bin/mpif90 -fpp -DWITH_BUG1 bug.f90
NAG Fortran Compiler Release 5.2(747)
Extension: /home/tjahns/opt/mpich2-1.4.1p1-nag52-x64-linux/include/mpif.h, line
479: Byte count on numeric data type
           detected at *@8
Extension: /home/tjahns/opt/mpich2-1.4.1p1-nag52-x64-linux/include/mpif.h, line
492: Byte count on numeric data type
           detected at *@8
Extension: /home/tjahns/opt/mpich2-1.4.1p1-nag52-x64-linux/include/mpif.h, line
493: Byte count on numeric data type
           detected at *@8
Warning: bug.f90, line 44: Unused external reference MPI_WTICK
         detected at TEST_F90INT@<end-of-statement>
Warning: bug.f90, line 44: Unused external reference PMPI_WTICK
         detected at TEST_F90INT@<end-of-statement>
Warning: bug.f90, line 44: Unused external reference PMPI_WTIME
         detected at TEST_F90INT@<end-of-statement>
Warning: bug.f90, line 44: Unused external reference MPI_WTIME
         detected at TEST_F90INT@<end-of-statement>
[NAG Fortran Compiler normal termination, 7 warnings]
$ ./a.out
Fatal error in MPI_Type_create_f90_integer: Other MPI error, error stack:
MPI_Type_create_f90_integer(117):  MPI_Type_create_f90_int (range=14) failed
MPI_Type_create_f90_integer(97).:  No integer type with 14 digits of range is
avaiable

The second bug manifests itself in a segmentation fault I've traced to dlp being
invalid in MPID_Segment_init.

$ ~/opt/mpich2-1.4.1p1-nag52-x64-linux/bin/mpif90 -fpp -DWITH_BUG2 bug.f90
NAG Fortran Compiler Release 5.2(747)
Extension: /home/tjahns/opt/mpich2-1.4.1p1-nag52-x64-linux/include/mpif.h, line
479: Byte count on numeric data type
           detected at *@8
Extension: /home/tjahns/opt/mpich2-1.4.1p1-nag52-x64-linux/include/mpif.h, line
492: Byte count on numeric data type
           detected at *@8
Extension: /home/tjahns/opt/mpich2-1.4.1p1-nag52-x64-linux/include/mpif.h, line
493: Byte count on numeric data type
           detected at *@8
Warning: bug.f90, line 44: Unused external reference MPI_WTICK
         detected at TEST_F90INT@<end-of-statement>
Warning: bug.f90, line 44: Unused external reference PMPI_WTICK
         detected at TEST_F90INT@<end-of-statement>
Warning: bug.f90, line 44: Unused external reference PMPI_WTIME
         detected at TEST_F90INT@<end-of-statement>
Warning: bug.f90, line 44: Unused external reference MPI_WTIME
         detected at TEST_F90INT@<end-of-statement>
[NAG Fortran Compiler normal termination, 7 warnings]
$ gdb ./a.out
GNU gdb (GDB) 7.0.1-debian
Copyright (C) 2009 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from
/home/tjahns/bug-reporting/mpich2-mpi_type_create_f90_integer_problem/a.out...done.
(gdb)  r
Starting program:
/home/tjahns/bug-reporting/mpich2-mpi_type_create_f90_integer_problem/a.out
[Thread debugging using libthread_db enabled]

Program received signal SIGSEGV, Segmentation fault.
MPID_Segment_init (buf=0x0, count=<value optimized out>, handle=-1946157051,
    segp=0x703da0, flag=<value optimized out>)
    at
../../../../../../mpich2-1.4.1p1/src/mpid/common/datatype/dataloop/segment.c:173
173	    DLOOP_Stackelm_load(elmp, dlp, 0);
(gdb) bt
#0  MPID_Segment_init (buf=0x0, count=<value optimized out>,
    handle=-1946157051, segp=0x703da0, flag=<value optimized out>)
    at
../../../../../../mpich2-1.4.1p1/src/mpid/common/datatype/dataloop/segment.c:173
#1  0x000000000045e5ed in DLOOP_Dataloop_create_flattened_struct (count=2,
    blklens=0x703d7c, disps=0x703d88, oldtypes=0x703d70, dlp_p=0x6d63b0,
    dlsz_p=0x6d63b8, dldepth_p=0x6d63bc, flag=0)
    at
../../../../../../mpich2-1.4.1p1/src/mpid/common/datatype/dataloop/dataloop_create_struct.c:581
#2  MPID_Dataloop_create_struct (count=2, blklens=0x703d7c, disps=0x703d88,
    oldtypes=0x703d70, dlp_p=0x6d63b0, dlsz_p=0x6d63b8, dldepth_p=0x6d63bc,
    flag=0)
    at
../../../../../../mpich2-1.4.1p1/src/mpid/common/datatype/dataloop/dataloop_create_struct.c:244
#3  0x000000000045b91b in MPID_Dataloop_create (type=-1946157050,
    dlp_p=0x6d63b0, dlsz_p=0x6d63b8, dldepth_p=0x6d63bc, flag=0)
    at
../../../../../../mpich2-1.4.1p1/src/mpid/common/datatype/dataloop/dataloop_create.c:279
#4  0x0000000000416b72 in MPID_Type_commit (datatype_p=0x7fffffffc5e4)
    at ../../../../../mpich2-1.4.1p1/src/mpid/common/datatype/mpid_type_commit.c:43
#5  0x000000000040dd7a in MPIR_Type_commit_impl (
    datatype=<value optimized out>)
    at ../../../../mpich2-1.4.1p1/src/mpi/datatype/type_commit.c:43
#6  0x000000000040df4b in PMPI_Type_commit (datatype=0x7fffffffc5e4)
    at ../../../../mpich2-1.4.1p1/src/mpi/datatype/type_commit.c:114
#7  0x000000000040d849 in pmpi_type_commit_ (v1=<value optimized out>,
    ierr=0x7fffffffc5e8)
    at ../../../../mpich2-1.4.1p1/src/binding/f77/type_commitf.c:190
#8  0x000000000040d609 in main (argc=1, argv=0x7fffffffc6d8) at bug.f90:24
(gdb)

If any extra information might be useful, I'll be happy to provide.

Regards,
Thomas
-- 
Thomas Jahns
DKRZ GmbH, Department: Application software

Deutsches Klimarechenzentrum
Bundesstraße 45a
D-20146 Hamburg

Phone: +49-40-460094-151
Fax: +49-40-460094-270
Email: Thomas Jahns <jahns at dkrz.de>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: mpich2-1.4.1p1-nag52.log.bz2
Type: application/x-bzip
Size: 25242 bytes
Desc: not available
URL: <http://lists.mcs.anl.gov/pipermail/mpich-discuss/attachments/20111214/ee5b294d/attachment-0003.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: bug.f90
Type: text/x-fortran
Size: 1307 bytes
Desc: not available
URL: <http://lists.mcs.anl.gov/pipermail/mpich-discuss/attachments/20111214/ee5b294d/attachment-0004.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 5884 bytes
Desc: S/MIME Cryptographic Signature
URL: <http://lists.mcs.anl.gov/pipermail/mpich-discuss/attachments/20111214/ee5b294d/attachment-0005.bin>


More information about the mpich-discuss mailing list