Re: Public Defined

Richard Frost (frost@sdsc.edu)
Wed, 8 Jan 1997 21:59:20 -0800 (PST)

On Wed, 8 Jan 1997, David C. DiNucci wrote:
>
> Even though the MPI forum has one committee for each chapter, often containing
> a number of parallel processing experts, the typical application program will
> have but one programmer (or if more than one, each may need to understand MPI
> in toto). To be workable, the entire MPI standard should be totally
> comprehensible by any single person interested in using it, and certainly by
> each of the members of the MPI forum.

I disagree with the notion "the entire standard should be totally
comprehensible by any single person" -- especially if you mean that any
person should be able to learn a majority of MPI with little effort.

Today, if an application programmer (who is not a tool builder) needs more
than send/receive or some other small functionality provided by MPI,
then they often rely on libraries or whole applications built by
parallel tool experts. It is arguably foolish for them to do otherwise.
This is what our staff and external users do now with many fundamental
but otherwise extensive software systems. I expect the
trend to continue.

A number of our users recently began testing applications on our T3E. I
am on the mail reflector for problem reports, general announcements, etc.
Some of the ported applications made use of MPI libraries authored by
external parties. A few of the more robust users have their
own, complex MPI-based libraries and applications. I did not encounter
any MPI-related reports in code ports. So, several of our T3E users
do not understand much about MPI, only that the MPI-based libraries
that they use recompiled without error on the T3E and completed all
confidence tests successfully.

Let's look at the Unix graphics world for a moment. Your arguments
contradict common practice in X, (Open)GL, Motif, etc. Every quarter a
member of our staff teaches some fundamentals of these graphic
languages to 40 or so UCSD undergraduate students in the context of
application-based programming assignments. Certainly these students
don't study all 2100 pages of X+Motif! But they do achieve surprising
levels of functionality. The two reasons I see for this are (a) they
master the fundamental concepts and primitives of graphics programming
and (b) they learn how to use some very powerful tools along with
simple primitives to achieve their goals.

If you are a tool builder and think that some higher-level systems than
MPI should be targeted at application areas: please, please, please go
build them. In my opinion, building them on MPI primitives would be
a good idea.