Re: new version of threads section

Jean-Pierre Prost (jpprost@watson.ibm.com)
Fri, 14 Mar 1997 23:19:35 -0400

--0__=vRPtppngQ4jCAlDKG2THlXoXXRa2dGyLmZGtN5O0zrYUe132ogwCPB1x
Content-type: text/plain; charset=US-ASCII

I would propose the following names:

MPI_THREAD_SINGLE
MPI_THREAD_MAIN_OUTOF_MANY
MPI_THREAD_ONE_OUTOF_MANY
MPI_THREAD_ALL_OUTOF_MANY or MPI_THREAD_ANY_OUTOF_MANY

Jean-Pierre


(Embedded
image moved snir @ watson.ibm.com
to file: 03/14/97 06:04 PM
PIC19740.PCX)

To: salo @ mrjones.engr.sgi.com
cc: Mpi-External @ mcs.anl.gov (bcc: Jean-Pierre Prost/Watson/IBM
Research)
Subject: Re: new version of threads
section

To: mpi-external @ mcs.anl.gov
cc: (bcc: Marc Snir/Watson/IBM Research)
Subject: Re: new version of threads section

I really like defining the new MPI_THREAD_INIT() routine as an alternative
to MPI_INIT(). Some random thoughts:

- What happens if MPI is unable to provide the requested level of
strictness? Is this an error?

***
MPI should provide as much strictness as it can, and let the user abort if
this is not enough. I shall clarify
****

- The names for the different degees of strictness are a bit of a mess; it
would not be immediately obvious to the casual observer that they are
related. So I would propose the following (still imperfect) names instead:

MPI_THREAD_SINGLE
MPI_THREAD_MULTIPLE_MAIN
MPI_THREAD_MULTIPLE_ONE
MPI_THREAD_MULTIPLE_MANY
MPI_THREAD_QUERY (see below)

*****
I am not sure these names are obvious either. Should think about it.
*****

I think it would also be nice if we specified that these values should
translate to integers with increasing values, so that programmers can just
use a simple greater-than/less-than test instead of a switch/case
statement.

***
OK
****

- Adding yet another flavor of MPI_INITIALIZED() is ugly, especially since
it breaks the symmetry that we just gave ourselves by adding
MPI_FINALIZED(). Instead, I propose that we add a MPI_THREAD_QUERY value,
which simply asks MPI_THREAD_INIT() to return the current level of
strictness, or MPI_UNDEFINED if MPI has not yet been initialized.

****
Either is OK by me -- can have a beauty contest. I have replaced the pair
INIT/INITIALIZED by THREAD_INIT/THREAD_INITIALIZED. If we go back to
MPI_THREAD_QUERY, then there is no need to allow this call before INIT.
****

- The new MPI_THREAD_MAIN() routine should more properly be named
MPI_THREAD_IS_MAIN()

*****
OK
****

- Let's do keep the argc/argv arguments out, please!

****
OK
*****

--
Eric Salo    Silicon Graphics Inc.    salo@sgi.com

########################################## Jean-Pierre Prost IBM T.J. Watson Research Center PO Box 218 Yorktown Heights, NY 10598 USA Phone: (914) 945 3225 - Fax: (914) 945 2141 Lotus Notes: Jean-Pierre Prost @ IBM Research Internet: jpprost@watson.ibm.com URL: http://www.research.ibm.com/people/p/prost/ ##########################################

--0__=vRPtppngQ4jCAlDKG2THlXoXXRa2dGyLmZGtN5O0zrYUe132ogwCPB1x Content-type: application/octet-stream; name="PIC19740.PCX" Content-transfer-encoding: base64

CgUBCAAAAABoACwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAABaQABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAD1E9sTzRPHE8MTwhP1E9sTzRPHE8MTwhP1E9sTzRPHE8MTwhP1E9sTzRPH E8MTwhP1E9sTzRPHE8MTwhP1E9sTzRPHE8MTwhP1E9sTzRPHE8MTwhP1E9sTzRPHE8MTwhP1E9sT zRPHE8MTwhPwEwzIBgzYE8wTxhPDE8IT7hPOBtcTzBPGE8MTE+wTwgbCBwbCEgbCEgbCEsUG1hPL E8YTwxMT6hMMwgYHwgLCAwISwgfEEsMCwwbVE8sTxRPDExPpE8MGAwcCBwMCwhLDB8ISwgISwgLD BtUTyhPFE8MTE+gTwgIHA8ICEw4DDgLDE8USwwLCEMIG1BPKE8UTwxMT5xMCAwcDAg4TDgITwgIS D8ISD8ISBRICEcICwwbUE8oTxRPCExPmEwYCBwMCDgIOwgLDExITEhPCEg8GxgLDBtMMDAfJE8QT whMT5hMGwwITBgMCDhLFEw8SE8ISBgIDwhIDEsMGB9MDxwwHxRPDExPlEwYHAhESAg8CwhMPwhMP xBMPxRIQwgIDAgMCBtMDxwPEDAfDE8IT4RMHwwzCBgLCEhMCDxLIE8MSD8MSwwIQAwIDBgfSDMkD wgPCDAfCExPbEwfGDMIDDAIHERITEhMSwxMPwxMPwxPDEgIDAgMCwwMCBgzREwfHDMYDDMITE9YT B8UMyAMGB8ICBhLDAsYTEhMSExIPwhIHAgcCAwUQAgYRBgfSE8UTB8QMwgMMwhMT0hMHxAzLA8IM BsISDxESExITAw4DxBMSExITwxICBwPCAsMDDMIGB9ITyRMHwwzCExPPEwfDDMkDxQwHwhMGBxIT AhECEwMOAg7DExITDxMPwxIDAgMCBwMCDAYRBgfSE8kTwhPCDMITE8wTB8MMxwPEDMIHxxMGxBLD Ag4DDgIGwg/IEgIDwgIDAgwCEMIGB9ITyRMHDAcMwhMTyhMHwgzGA8MMwgfMEwYHwhLCEAIOAg4C DhDDAhIPxhIFAgXDAgUCEQYH0hPHEwfCDAcPDMITE8gTB8IMxQPDDAfQEwbDEhDEAhAOEA4QwgLG EgcSBhIGBcMCBcIGB9ATB8UMEwfCDA8HDwwHwhMTxhMHwgzEA8MMB9MTBgfCEhADEMICDhAOEMIC EQIDxxIGBwbCAgUCEQYHyxMHxAwHwhMHEwzCEwcPBw8MB8MTE8UTBwzEA8IMB9YTBsQSEAMCA8UC EQIDAgPDEgcSBgfCBgUQAhDCBgfGEwfEDAfGE8INEwzCEw8HwgwHwxPCE8QTBwzDA8IMB9gTBgfE EhACEMYCEQIDAsQSBhLDBsICEALCBgfCEwfDDAfKEwfCDRMHwhPCDAfEE8ITE8MTBwzCA8IMB9oT DBIHwxLDDBEDxQIDAgPDEgYSBgfCBgIQAhAGDAfCEwzDE8MHyRMHwhPCBxMHxRPDExPDEwzCAwwH 3RMGxxICEQPDAgMCA8MSBhIGBwYMBhACEAIGDMMTDBPCB8YTwwfHEwfGE8MTwhPDEwwDDAfeEwYH xxICEQPDAgMCwhIGEgYHBgwGEAIQAsIGB8MTDMYTwwfKEwzGE8MTwhPDE8IMB98TDBLCB8USAgMR xAISB8ISBgcGDAYQBhAGEAYMB8MMB8kTwwfHEwzGE8MTwhPDEwwPwgzfEwYSB8ISB8ISAhECAwID EgcSBwYHBgwGEAYQxgzDD8IHxRPDB8kTBwzGE8MTwhPDEwzDD8QM3BPCBhIGwxIGAhECAwIHBgcG yAzJDxMHzRMHwwwHxxPDE8ITwxMHDMYPxwwH1BMGEgYSBhLLDM4PwwwTDMcTwgfEDAfJE8QTwhMT xBMHwgzLD9sM0w/GDAfDEwzDEwfEDAfLE8YTwxMTxhMHxAztD8gMBgfIE8QMB84TxxPDE8ITyhMH xwzbD8sMEAUMBcIMwgYH1RPKE8UTwxMT0RMH2wwGEAYQBhACBQwFDAUMBgwHBgfWE8sTxRPDExPu EwYMBhAGEAIGDAYMwwYH1xPLE8YTwxMT8BPKBgfYE8wTxhPDExP1E9sTzRPHE8MTwhP1E9sTzRPH E8MTwhMMAAAAgAAAAIAAgIAAAACAgACAAICAwMDAwNzApsrw//vwoKCkgICA/wAAAP8A//8AAAD/ /wD/AP//////AAAAgAAAAIAAgIAAAACAgACAAICAwMDAwNzApsrw//vwoKCkgICA/wAAAP8A//8A AAD//wD/AP//////AAAAgAAAAIAAgIAAAACAgACAAICAwMDAwNzApsrw//vwoKCkgICA/wAAAP8A //8AAAD//wD/AP//////AAAAgAAAAIAAgIAAAACAgACAAICAwMDAwNzApsrw//vwoKCkgICA/wAA AP8A//8AAAD//wD/AP//////AAAAgAAAAIAAgIAAAACAgACAAICAwMDAwNzApsrw//vwoKCkgICA /wAAAP8A//8AAAD//wD/AP//////AAAAgAAAAIAAgIAAAACAgACAAICAwMDAwNzApsrw//vwoKCk gICA/wAAAP8A//8AAAD//wD/AP//////AAAAgAAAAIAAgIAAAACAgACAAICAwMDAwNzApsrw//vw oKCkgICA/wAAAP8A//8AAAD//wD/AP//////AAAAgAAAAIAAgIAAAACAgACAAICAwMDAwNzApsrw //vwoKCkgICA/wAAAP8A//8AAAD//wD/AP//////AAAAgAAAAIAAgIAAAACAgACAAICAwMDAwNzA psrw//vwoKCkgICA/wAAAP8A//8AAAD//wD/AP//////AAAAgAAAAIAAgIAAAACAgACAAICAwMDA wNzApsrw//vwoKCkgICA/wAAAP8A//8AAAD//wD/AP//////AAAAgAAAAIAAgIAAAACAgACAAICA wMDAwNzApsrw//vwoKCkgICA/wAAAP8A//8AAAD//wD/AP//////AAAAgAAAAIAAgIAAAACAgACA AICAwMDAwNzApsrw//vwoKCkgICA/wAAAP8A//8AAAD//wD/AP//////AAAAgAAAAIAAgIAAAACA gACA//vwoKCkgICA/wAAAP8A//8AAAD//wD/AP//////

--0__=vRPtppngQ4jCAlDKG2THlXoXXRa2dGyLmZGtN5O0zrYUe132ogwCPB1x--