From: hjstein@bfr.co.il (Harvey J. Stein) Newsgroups: comp.parallel.mpi,comp.parallel.pvm Subject: Re: Poor MPI performance with collection of Linux workstations Date: 17 Mar 1999 10:27:39 +0200 Organization: Unspecified Organization Message-Id: References: <36ED325A.69D8C9B8@rrsg.ee.uct.ac.za> <7cn7up$4tq$1@grandprime.binc.net> Cc: hjstein@bfr.co.il Xref: ukc comp.parallel.mpi:4764 comp.parallel.pvm:8131 Leigh Orf writes: > Mark Gebhardt wrote: > > > Hi all > > [big snip] > > > Under certain conditions, my MPI implementation gives wildly varying > > execution times - something that the PVM version never did. Here's > > what happens: > > I don't have an answer to your problem, but I have a similar problem. > I'm running Linux and have just recently upgraded all machines to the > 2.2.3 kernel, hoping my problems would be solved. My problems persist. I > have nine machines, one of which is a 4-processor box. Are they small packets? If so, here's a patch from the linux-kernel mailing list that might help: From: Andrea Arcangeli Date: Fri, 26 Feb 1999 18:18:25 +0100 (CET) Subject: Re: Linux 2.2.2 TCP delays every 41st small packet by 10-20 ms On Thu, 25 Feb 1999, Josip Loncaric wrote: >The conclusion is this: in Linux TCP, every N-th small packet is delayed >by 1-2 "jiffies" (defined by the 100 Hz system clock). For Linux kernel This 1-2 jiffies made me thing again at the PSH thing. Probably I am completly out but could you try this patch? Index: tcp_input.c =================================================================== RCS file: /var/cvs/linux/net/ipv4/tcp_input.c,v retrieving revision 1.1.2.13 diff -u -r1.1.2.13 tcp_input.c - --- tcp_input.c 1999/02/26 17:39:46 1.1.2.13 +++ linux/net/ipv4/tcp_input.c 1999/02/26 17:40:14 @@ -55,6 +55,7 @@ * work without delayed acks. * Andi Kleen: Process packets with PSH set in the * fast path. + * Andrea Arcangeli: Quickack if received a tiny PSH packet. */ #include @@ -133,12 +134,8 @@ /* Tiny-grams with PSH set artifically deflate our * ato measurement, but with a lower bound. */ - - if(th->psh && (skb->len < (tp->mss_cache >> 1))) { - - /* Preserve the quickack state. */ - - if((tp->ato & 0x7fffffff) > HZ/50) - - tp->ato = ((tp->ato & 0x80000000) | - - (HZ/50)); - - } + if(th->psh && (skb->len < (tp->mss_cache >> 1))) + tcp_enter_quickack_mode(tp); } /* Called to compute a smoothed rtt estimate. The data fed to this Andrea Arcangeli Please read the FAQ at http://www.tux.org/lkml/ -- Harvey J. Stein BFM Financial Research hjstein@bfr.co.il