11 Oct 2001 10:00
Re: [myrinet] GM_BOGUS_SEND_INTERRUPT
Patrick Geoffray <patrick <at> myri.com>
2001-10-11 08:00:43 GMT
2001-10-11 08:00:43 GMT
"Davis, Harvey" wrote: > > Patrick > > Thanks for replying. > > I am using gm-1.5pre4 and mpich-1.2..8 GM-1.5pre4 is fine. Use mpich-1.2.1..7 and your problem shoudl go away. > --enable-new-features > --enable-linux-modversions > --enable-linux-smp > --enable-linux-directcopy BTW, you should not pass any flags to configure in GM-1.5: the new-features is enabled by default, configure figure out by itself the smp and modversions usage and the directcopy is not activated in the driver yet. > MPICH over GM is configured using the options suggested from the README with > the addition of those required for SMP to work correctly (I am not sure what > they were or I would write them down!!) Beware also that in mpich-1.2.1..7, you do not need to enable or not shared memory at compile time. The shared memory is always compiled, and it's enabled by using --gm-use-shmem at the mpirun.ch_gm command line. Shared memory is not use by default (without --gm-use-shmem) because it seems that more code prefer to overlap than do shared memory, but it may be a big win for some code. > I am using threads but all thread creation is done BEFORE MPI_Init() is > called and only one thread ever accesses the mpi routines. Condition > variable and mutexs are used throughout though. That's fine. MPICH is not thread safe, but locking the MPI calls is perfectly safe. > I was wondering if perhaps the threads were causing EINTR or > other interrupts that GM does not handle?????? I thought that mayby small > data volumes would complete in a small enough time > frame as to not be interrupted, where as the large ones take too long and > get premepted???? No. 1.2.1..7 should do the work. You may even try to play with the recv policy : look for blocking/polling/hybrid in the README-GM. > If I have to re-write is there any reason why forked processes communicating > over shared memory would not work???? (So long as all forking was done > before MPI_Init()) You can fork as much as you want before to call MPI_Init. The GM port is open in MPI_Init, and them the fork support is limited (only vfork() is safe, and used by system() and popen()). Let me know if mpich-1.2.1..7 (in /pub/MPICH-GM on the FTP server) is better. Patrick --------------------------------------------------------- | Patrick Geoffray, Ph.D. patrick <at> myri.com | | Myricom, Inc. http://www.myri.com | | Cell: 865-389-8852 325 N. Santa Anita Ave. | | Fax: 865-974-1950 Arcadia, CA 91006 | ---------------------------------------------------------
RSS Feed