Ralph, If I understand your comment, there is no standard way to define 64-bit MPI calls. So how does OpenMPI recommend I pass information? Just declaring some 64-bit integers is not working. Is there a working example some where?
Cheers, --Jim On Wed, Oct 30, 2013 at 3:40 PM, Ralph Castain <r...@open-mpi.org> wrote: > I believe this has been a long-standing issue with the MPI definitions - > they specify "int", which on most systems will default to int32_t. Thus, > there are no prototypes for 64-bit interfaces > > On Oct 30, 2013, at 1:35 PM, Jim Parker <jimparker96...@gmail.com> wrote: > > Hello, > I have recently built a cluster that uses the 64-bit indexing feature of > OpenMPI following the directions at > > http://wiki.chem.vu.nl/dirac/index.php/How_to_build_MPI_libraries_for_64-bit_integers > > My question is what are the new prototypes for the MPI calls ? > specifically > MPI_RECV > MPI_Allgathterv > > I'm curious because some off my local variables get killed (set to null) > upon my first call to MPI_RECV. Typically, this is due (in Fortran) to > someone not setting the 'status' variable to an appropriate array size. > > However, my declaration for status is > integer (kind=mpi_int_kind) :: status(MPI_STATUS_SIZE) > > A typical call to MPI_Recv is > call MPI_RECV(num_array, length, MPI_INTEGER, 0,0,MPI_COMM_WORLD, status, > mpierr) > > where the following definitions are used, > mpi_int_kind=8 (for gcc/gfortran compiler) > > integer,parameter :: length = <some-value> > integer :: num_array(length) > integer :: mpierr > > My review of mpif.h and mpi.h seem to indicate that the functions are > defined as C int types and therefore , I assume, the coercion during the > compile makes the library support 64-bit indexing. ie. int -> long int > > The documentation on MPI_Recv just mentions the prototype for ints > (32-bit) , I can't find anything for 64-bit > http://www.open-mpi.org/doc/v1.6/ > > Any help would be appreciated. > The output from ompi_info --all is attached. > > Cheers, > --Jim Parker > > BTW, the code works fine when linked against a 32-bit MPI library. > <openmpi1.6.5-info.txt>_______________________________________________ > users mailing list > us...@open-mpi.org > http://www.open-mpi.org/mailman/listinfo.cgi/users > > > > _______________________________________________ > users mailing list > us...@open-mpi.org > http://www.open-mpi.org/mailman/listinfo.cgi/users >