In the text: - We consciously put the "old" binding first (i.e., the int/INTEGER-enabled one), just for familiarity.
In Annex A: - It's an alphabetical listing. ----- I don't have strong feelings about this. If the popular opinion is to move the C/F08 Count-enabled bindings first in the text renderings, it's a trivial change to make (it entails changing just a few lines of Python). > On Jul 30, 2019, at 3:37 PM, Bangalore, Purushotham <p...@uab.edu> wrote: > > Any reason why the function with MPI_Count appears first in the function > index while it appears second in the chapter? > > Get Outlook for Android > > From: mpi-forum <mpi-forum-boun...@lists.mpi-forum.org> on behalf of Jeff > Squyres (jsquyres) via mpi-forum <mpi-forum@lists.mpi-forum.org> > Sent: Tuesday, July 30, 2019 11:13:09 AM > To: MPI Forum list <mpi-forum@lists.mpi-forum.org> > Cc: Jeff Squyres (jsquyres) <jsquy...@cisco.com> > Subject: [Mpi-forum] "BigCount" rendering in PDF > > SHORT VERSION > > See the attached two PDFs for how "BigCount" will be rendered in the MPI-4.0 > PDF (pt2pt chapter and pt2pt/external interfaces in Annex A). > > Comments / suggestions are welcome, but you may only make comments / > suggestions if you have read all of the "MORE DETAIL" section, below. > > MORE DETAIL > > We have split the work of the "BigCount" WG into two parts: > > 1. Updating all the bindings throughout the entire MPI spec. This is further > sub-divided into two parts: > 1a. Updating the bindings in the chapters of the MPI spec. > 1b. Updating the bindings listing in Annex A. > > 2. Updating text in various chapters (e.g., Terms&Conventions and Language > Bindings) describing BigCount, language consequences, describing how the > bindings appear in the rest of the doc, ...etc. > > We've incorporated all the feedback from the BigCount Virtual Meeting last > week, and I'd like to share samples of how #1a and #1b will look in the MPI > 4.0 PDF. > > Text for #2 will be read at the September meeting (stay tuned -- that text > will be published according to the normal 2-week deadline, etc.). > > Attached are 2 documents: > > 1. The point-to-point chapter rendered in the new style. Look at the > bindings for MPI_SEND and MPI_RECV, for example. > > 2. Annex A rendered in the new style (only some of the bindings have been > updated so far -- such as pt2pt and external interfaces). > > If you are confused when looking at these PDFs (e.g., why are there up to 3 C > bindings?), and/or if you weren't at the Virtual Meeting / didn't watch the > Webex after the fact, the feedback we received from the Virtual Meeting is > summarized below. It is a lot of wordswordswords and is somewhat difficult > to follow -- I highly suggest reading the rules below while simultaneously > examining the attached PDFs. The summary below should make much more sense > when looking at concrete examples. > > ----- > > The overall intent is: > > A. In MPI-4.0, expose "BigCount" functionality through language polymorphism > in the C bindings and the mpi_f08 module (we are not updating mpif.h or the > mpi module). > > B. C11 _Generic polymorphism kinda sucks, *and* we're in a transition period > where not all C compilers are C11-capable. Hence, we're exposing up to *3* C > bindings per MPI procedure to applications (including explicitly exposing the > "_x" variant where relevant). > > C. Fortran polymorphism "just works" (skipping a longer explanation here -- > ask Rolf/Puri if you're interested in the details), so there will only be up > to *2* F08 bindings per MPI procedure. > > ----- > > For each binding in the main text of the document: > > 1. Show the "plain" MPI_Foo(...) C binding (e.g., as it appeared in MPI-3.1) > > 2. If the binding has count or displacement arguments: > 2a. Show a second MPI_Foo() C binding with count and displacement > arguments as MPI_Count and MPI_Aint, respectively. > 2b. If MPI_Foo() DOES NOT HAVE a corresponding MPI_Foo_x() in MPI-3.1, > show a third MPI_Foo_x(...) C binding with count/displacement as > MPI_Count/MPI_Aint. > > 3. Show the "plain" MPI_Foo(...) F08 binding (e.g., as it appeared in MPI-3.1) > > 4. If the binding has count or displacement arguments: > 4a. Show a second MPI_Foo() F08 binding with count and displacement > arguments as INTEGER(KIND=MPI_COUNT_KIND) and INTEGER(MPI_ADDRESS_KIND), > respectively. > > 5. Show the "plain" F90 binding > > ----- > > References: > > - Slides we presented at the BigCount Virtual Meeting: > https://docs.google.com/presentation/d/10D_ws5NYAOI8m6KZKb31s9HxiSSmc_k5C620Cuy3brY/edit > > - Webex Recording of the BigCount Virtual Meeting: > https://www.mpi-forum.org/virtual_meetings/ > > - Froozle MPI, a no-op MPI implementation showing a bindings implementation > of BigCount: https://github.com/jsquyres/froozle-mpi > > If you have read all the way down to this point, comments and feedback are > welcome. :-) > > -- > Jeff Squyres > jsquy...@cisco.com > -- Jeff Squyres jsquy...@cisco.com _______________________________________________ mpi-forum mailing list mpi-forum@lists.mpi-forum.org https://lists.mpi-forum.org/mailman/listinfo/mpi-forum