[mvapich-discuss] MPIDI_CH3I_Win_allocate_shm segfaults
Jeff Hammond
jeff.science at gmail.com
Tue Apr 29 21:28:16 EDT 2014
>
> We tested your program with 2 or more processes, they all passed with win_allocate.
> However, we see the issue when using only one process per job. Could you tell us the
> significance of your program using only one process per job?
>
I like it when all of my MPI applications run correctly on 1+ processes, not just subsets of the integers. Correct serial execution of MPI codes is essential for V&V as we as debugging.
> You also mentioned that there were other failed tests. Could you elaborate on these also?
>
I think they are all the same issue but it's the ARMCI-MPI tests ie "make check" (mpi3rma branch) if you need to reproduce.
Best,
Jeff
> Regards,
> Mingzhe
>
>
>> On Tue, Apr 29, 2014 at 2:34 PM, Jeff Hammond <jeff.science at gmail.com> wrote:
>> I am having issues with ARMCI-MPI3 using MVAPICH 2.0rc1 associated
>> with win_allocate. If I use win_create, the errors go away (for the
>> most part).
>>
>> The details are below. The test is the simplest one that fails. Lots
>> of tests fail, apparently all because of win_allocate.
>>
>> I am running with debug=all because I am debugging...
>>
>> Thanks,
>>
>> Jeff
>>
>>
>> Running:
>>
>> /home/jhammond/TUKEY/MPI/mv2-2.0rc1-debug/bin/mpiexec -n 1 -ppn 1
>> ./test_win_model
>>
>> GDB:
>>
>> Core was generated by `./test_win_model'.
>> Program terminated with signal 11, Segmentation fault.
>> #0 0x00007f4dc9ae5a57 in MPIDI_CH3I_Win_allocate_shm () from
>> /home/jhammond/TUKEY/MPI/mv2-2.0rc1-debug/lib/libmpich.so.12
>> Missing separate debuginfos, use: debuginfo-install
>> glibc-2.12-1.80.el6_3.7.x86_64 hwloc-1.1-0.1.el6.x86_64
>> libcxgb3-1.3.1-1.x86_64 libibmad-1.3.8.MLNX_20120424-0.1.x86_64
>> libibumad-1.3.7.MLNX_20110814-0.1.x86_64
>> libibverbs-1.1.5mlnx2-1.x86_64 libipathverbs-1.2mlnx1-1.x86_64
>> libmlx4-1.0.2mlnx6-1.x86_64 libmthca-1.0.6mlnx1-0.1.gbe5eef3.x86_64
>> libnes-1.1.1mlnx1-1.x86_64 librdmacm-1.0.15-1.x86_64
>> libxml2-2.7.6-8.el6_3.4.x86_64 numactl-2.0.7-3.el6.x86_64
>> zlib-1.2.3-27.el6.x86_64
>> (gdb) bt
>> #0 0x00007f4dc9ae5a57 in MPIDI_CH3I_Win_allocate_shm () from
>> /home/jhammond/TUKEY/MPI/mv2-2.0rc1-debug/lib/libmpich.so.12
>> #1 0x00007f4dc9ab941c in MPIDI_CH3U_Win_allocate () from
>> /home/jhammond/TUKEY/MPI/mv2-2.0rc1-debug/lib/libmpich.so.12
>> #2 0x00007f4dc9acb064 in MPID_Win_allocate () from
>> /home/jhammond/TUKEY/MPI/mv2-2.0rc1-debug/lib/libmpich.so.12
>> #3 0x00007f4dc9cc541a in PMPI_Win_allocate () from
>> /home/jhammond/TUKEY/MPI/mv2-2.0rc1-debug/lib/libmpich.so.12
>> #4 0x0000000000400c11 in main ()
>>
>> Build info:
>>
>> [jhammond at vs64 mpi]$ /home/jhammond/TUKEY/MPI/mv2-2.0rc1-debug/bin/mpichversion
>> MVAPICH2 Version: 2.0rc1
>> MVAPICH2 Release date: Sun Mar 23 21:35:26 EDT 2014
>> MVAPICH2 Device: ch3:mrail
>> MVAPICH2 configure: CC=gcc CXX=g++ --enable-fc FC=gfortran
>> --enable-f77 F77=gfortran --with-pm=hydra
>> --prefix=/home/jhammond/TUKEY/MPI/mv2-2.0rc1-debug --enable-static
>> --enable-g=all --enable-threads
>> MVAPICH2 CC: gcc -DNDEBUG -DNVALGRIND -g -O2
>> MVAPICH2 CXX: g++ -DNDEBUG -DNVALGRIND -g
>> MVAPICH2 F77: gfortran -g -O2
>> MVAPICH2 FC: gfortran -g
>>
>> Test source:
>>
>> #include <stdio.h>
>> #include <stdlib.h>
>> #include <mpi.h>
>>
>> int main(int argc, char ** argv) {
>> int rank, nproc;
>> void *ptr;
>> MPI_Win win;
>> int wsize = 1024*1024;
>> void *attr_ptr;
>> int *attr_val;
>> int attr_flag;
>>
>> MPI_Init(&argc, &argv);
>>
>> MPI_Comm_rank(MPI_COMM_WORLD, &rank);
>> MPI_Comm_size(MPI_COMM_WORLD, &nproc);
>>
>> if (rank == 0) printf("Starting MPI window attribute test with %d
>> processes\n", nproc);
>>
>> /* WIN_CREATE */
>>
>> MPI_Alloc_mem(wsize, MPI_INFO_NULL, &ptr);
>> MPI_Win_create(ptr, wsize, 1, MPI_INFO_NULL, MPI_COMM_WORLD, &win);
>>
>> /* this function will always return flag=false in MPI-2 */
>> MPI_Win_get_attr(win, MPI_WIN_MODEL, (void *)&attr_ptr, &attr_flag);
>> if (!attr_flag && rank==0)
>> printf("MPI_WIN_MODEL flag missing! \n");
>> attr_val = (int*)attr_ptr;
>> if (attr_flag && (*attr_val)!=MPI_WIN_UNIFIED && rank==0)
>> printf("MPI_WIN_MODEL = MPI_WIN_SEPARATE \n" );
>>
>> MPI_Win_free(&win);
>> MPI_Free_mem(ptr);
>>
>> /* WIN_ALLOCATE */
>>
>> MPI_Win_allocate(wsize, 1, MPI_INFO_NULL, MPI_COMM_WORLD, &ptr, &win);
>>
>> /* this function will always return flag=false in MPI-2 */
>> MPI_Win_get_attr(win, MPI_WIN_MODEL, (void *)&attr_ptr, &attr_flag);
>> if (!attr_flag && rank==0)
>> printf("MPI_WIN_MODEL flag missing! \n");
>> attr_val = (int*)attr_ptr;
>> if (attr_flag && (*attr_val)!=MPI_WIN_UNIFIED && rank==0)
>> printf("MPI_WIN_MODEL = MPI_WIN_SEPARATE \n" );
>>
>> MPI_Win_free(&win);
>>
>> if (rank == 0) printf("ALL DONE\n");
>>
>> /* WIN_ALLOCATE */
>> MPI_Finalize();
>>
>> return 0;
>> }
>>
>>
>> --
>> Jeff Hammond
>> jeff.science at gmail.com
>>
>>
>> _______________________________________________
>> mvapich-discuss mailing list
>> mvapich-discuss at cse.ohio-state.edu
>> http://mailman.cse.ohio-state.edu/mailman/listinfo/mvapich-discuss
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.cse.ohio-state.edu/pipermail/mvapich-discuss/attachments/20140429/2a26dc28/attachment.html>
More information about the mvapich-discuss
mailing list