On Sun, Dec 06, 2009 at 02:29:01PM +0200, Katz, Jacob wrote: > Thanks. > Yes, I meant in the question that I was looking for something creative, both > fast responding and not using 100% CPU all the time. > I guess I’m not the first one to face this question. Have anyone done > anything “better” than the simple solution?
My MPI application is a two-process thing, in which data is thrown back and forth. For the most part, one process is calculating, and the other is waiting. I got tired of seeing both cpus at 100% load, and based on suggestions from Jeff Squyres and Eugene Loh, wrote MPI_Recv.c and MPI_Send.c. I load these with my application, and bingo! Only one cpu busy at any given time. They use a graduated sleep; the first sleep is short, the second is twice as long, and so on, up to a maximum sleep time. I sent the code along with my last message on the subject (December 2008, or later) so it should be in the archives. Failing that, I could post it again, if anyone wants it. Douglas.