Subject: Re: [OMPI users] "Re: Best way to overlap computation and transfer using MPI over TCP/Ethernet?"
From: shan axida (axida2009_at_[hidden])
Date: 2009-06-08 20:52:56


Hi,
Would you please tell me how did you do the experiment by calling MPI_Test in
little more details?

Thanks!

________________________________
From: Lars Andersson <larsand_at_[hidden]>
To: users_at_[hidden]
Sent: Tuesday, June 9, 2009 6:11:11 AM
Subject: Re: [OMPI users] "Re: Best way to overlap computation and transfer using MPI over TCP/Ethernet?"

On Mon, Jun 8, 2009 at 11:07 PM, Lars Andersson<larsand_at_[hidden]> wrote:
> I'd say that your own workaround here is to intersperse MPI_TEST's
> periodically. This will trigger OMPI's pipelined protocol for large
> messages, and should allow partial bursts of progress while you're
> assumedly off doing useful work. If this is difficult because the
> work is being done in library code that you can't change, then perhaps
> a pre-spawned "work" through could be used to call MPI_TEST
> periodically. That way, it won't steal huge ammounts of CPU cycles
> (like MPI_WAIT would). You still might get some cache thrashing,
> context switching, etc. -- YMMV.

Thanks Jeff, it's good to hear that this is a valid workaround. I've
done a few small experiments, and by calling MPI_Test in a while loop
with an usleep(1000) I'm able to get almost full bandwidth for large
messages with less than 5% CPU utilization.

/Lars
_______________________________________________
users mailing list
users_at_[hidden]
http://www.open-mpi.org/mailman/listinfo.cgi/users