Subject: Buffer descriptors and the simple program

From: [email-masked] (Dan Nessett)
Date: Fri, 12 Mar 1993 12:20:03 -0800

I met with a number of application and system programmers here at the Lab
to get some feedback on the decisions made at the last MPI meeting. One
aspect that they felt uncomfortable with was being forced to use the buffer
descriptor routines (i.e., bd_create, bd_contiguous, bd_stride and bd_free)
in order to just send a simple message. The application programmers want
both simple send and receive primitives as well as more general primitives
based on buffer descriptors. For example, the Parallel Monte Carlo and
Atmospheric Chemistry codes they are working on would benefit from the more
general buffer descriptor based primitives, while the Atmospheric Dynamics
code uses only simple send and receive. The programmers that use only a
single contiguous buffer for their codes would be upset if MPI forced them
to make two bd calls to set up the descriptor and then another bd call to
free it. (BTW the last call could be eliminated if there were some way to
"clear" a buffer descriptor so it could be reused).

Dan Nessett

---

From: William Gropp <[email-masked]>
Date: Fri, 12 Mar 93 14:51:04 CST

[ message about having to use the "bd_xxx" routines ]
This is what the level 2 (or 3, depending on where you draw the line) routines
are for.  Level 3 contains the "simple snd and receive" with contiguous
buffers, while level 1 has everything at the cost of greater complexity.
Bill