Le mardi 23 novembre 2010 à 17:28 -0500, George Bosilca a écrit :
> Sebastien,
> 
> Using MPI_Isend doesn't guarantee asynchronous progress. As you might be 
> aware, the non-blocking communications are guaranteed to progress only when 
> the application is in the MPI library. Currently very few MPI implementations 
> progress asynchronously (and unfortunately Open MPI is not one of them).
> 

Regardless, I just need the non-blocking behavior.
I call MPI_Request_free just after MPI_Isend, and I use a ring allocator
to allocate message buffers.

Message recipients just reply with another message to the source, using
a NULL buffer.

The sender waits for the reply before sending the next message.

And it works for assembling bacterial genomes on many MPI ranks:

...
Rank 0: 162 contigs/4576725 nucleotides

Rank 0 reports the elapsed time, Tue Nov 23 01:35:48 2010
 ---> Step: Collection of fusions
      Elapsed time: 0 seconds
      Since beginning: 17 minutes, 33 seconds

Elapsed time for each step, Tue Nov 23 01:35:48 2010

 Beginning of computation: 1 seconds
 Distribution of sequence reads: 7 minutes, 49 seconds
 Distribution of vertices: 19 seconds
 Calculation of coverage distribution: 1 seconds
 Distribution of edges: 29 seconds
 Indexing of sequence reads: 1 seconds
 Computation of seeds: 2 minutes, 33 seconds
 Computation of library sizes: 1 minutes, 47 seconds
 Extension of seeds: 3 minutes, 34 seconds
 Computation of fusions: 59 seconds
 Collection of fusions: 0 seconds
 Completion of the assembly: 17 minutes, 33 seconds

Rank 0 wrote Ecoli-THEONE.CoverageDistribution.txt
Rank 0 wrote Ecoli-THEONE.fasta
Rank 0 wrote Ecoli-THEONE.ReceivedMessages.txt
Rank 0 wrote Ecoli-THEONE.Library0.txt
Rank 0 wrote Ecoli-THEONE.Library1.txt

Au revoir !


>   george.
> 
> On Nov 23, 2010, at 17:17 , Sébastien Boisvert wrote:
> 
> > I now use MPI_Isend, so the problem is no more.
> 
> 
> _______________________________________________
> devel mailing list
> de...@open-mpi.org
> http://www.open-mpi.org/mailman/listinfo.cgi/devel

-- 
M. Sébastien Boisvert
Étudiant au doctorat en physiologie-endocrinologie à l'Université Laval
Boursier des Instituts de recherche en santé du Canada
Équipe du Professeur Jacques Corbeil

Centre de recherche en infectiologie de l'Université Laval
Local R-61B
2705, boulevard Laurier
Québec, Québec
Canada G1V 4G2
Téléphone: 418 525 4444 46342

Courriel: s...@boisvert.info
Web: http://boisvert.info

"Innovation comes only from an assault on the unknown" -Sydney Brenner

Reply via email to