On Aug 13, 2007, at 11:07 AM, Jeff Squyres wrote:
Such a scheme is certainly possible, but I see even less use for it
than use cases for the existing microbenchmarks. Specifically,
header caching *can* happen in real applications (i.e., repeatedly
send short messages with the same MPI signature), but repeatedly
sending to the same peer with exactly the same signature *and*
exactly the same "long-enough" data (i.e., more than a small number
of ints that an app could use for its own message data caching) is
indicative of a poorly-written MPI application IMHO.
If you look at the message size distribution for most of the HPC
applications (at least one that get investigated in the papers) you
will see that very small messages are only an non-significant
percentage of messages. As this "optimization" only address these
kind of messages, I doubt there is any real benefit from applications
point of view (obviously there will be few exceptions as usual). The
header caching only make sense for very small messages (MVAPICH only
implement header caching for messages up to 155 bytes [that's less
than 20 doubles] if I remember well), which make it a real benchmark
optimization.
But don't complain if your Linpack run fails.
I assume you're talking about bugs in the implementation; not a
problem with the approach, right?
Of course, there is no apparent problem with my approach :) It is
called an educated guess based on repetitive human behaviors analysis.
george.