<html><head><meta http-equiv="Content-Type" content="text/html charset=windows-1252"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">True, MPI_BOTTOM need not be null, but it might be, so the standard doesn’t prohibit it.<div><br></div><div>A carefully worded exception to the general rule for NULL handles would be ok.  I would still make it narrow; for example, just for the use of MPI_DATATYPE_NULL in communication operations with a zero count.</div><div><br></div><div>Bill</div><div><br><div>
William Gropp<br>Director, Parallel Computing Institute<br>Thomas M. Siebel Chair in Computer Science<br>Chief Scientist, NCSA<br>University of Illinois Urbana-Champaign<br><br><br><br><br>

</div>
<br><div><div>On Jan 12, 2016, at 11:22 PM, Fab Tillier <<a href="mailto:ftillier@microsoft.com">ftillier@microsoft.com</a>> wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div lang="EN-NZ" link="blue" vlink="purple" style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;"><div class="WordSection1" style="page: WordSection1;"><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;"><span style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125);">Don’t datatypes with absolute addresses rely on MPI_BOTTOM, and a portable program can’t assume that MPI_BOTTOM == NULL?<o:p></o:p></span></div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;"><span style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125);"> </span></div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;"><span style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125);">I think from an ease of use perspective, if I have a count of zero, having to pick an arbitrary committed datatype is non-intuitive.  If count is zero, there is no buffer or datatype, and there should be no requirement such non-existent datatype be committed.<o:p></o:p></span></div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;"><span style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125);"> </span></div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;"><span style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125);">Cheers,<o:p></o:p></span></div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;"><span style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125);">-Fab<o:p></o:p></span></div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;"><span style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125);"> </span></div><div><div style="border-style: solid none none; border-top-color: rgb(225, 225, 225); border-top-width: 1pt; padding: 3pt 0cm 0cm;"><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;"><b><span lang="EN-US" style="font-size: 11pt; font-family: Calibri, sans-serif;">From:</span></b><span lang="EN-US" style="font-size: 11pt; font-family: Calibri, sans-serif;"><span class="Apple-converted-space"> </span>mpi-forum [<a href="mailto:mpi-forum-bounces@lists.mpi-forum.org">mailto:mpi-forum-bounces@lists.mpi-forum.org</a>]<span class="Apple-converted-space"> </span><b>On Behalf Of<span class="Apple-converted-space"> </span></b>William Gropp<br><b>Sent:</b><span class="Apple-converted-space"> </span>Wednesday, 13 January 2016 4:52 p.m.<br><b>To:</b><span class="Apple-converted-space"> </span>Main MPI Forum mailing list <<a href="mailto:mpi-forum@lists.mpi-forum.org">mpi-forum@lists.mpi-forum.org</a>><br><b>Subject:</b><span class="Apple-converted-space"> </span>Re: [Mpi-forum] MPI_DATATYPE_NULL when count=0<o:p></o:p></span></div></div></div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;"><o:p> </o:p></div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;">Yes, NULL buffers are valid - they aren’t an MPI object.  There is no prohibition about passing them; only if they are used to form an invalid address (note that a datatype with absolute addresses relies on NULL as the buffer address).<o:p></o:p></div><div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;"><o:p> </o:p></div></div><div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;">Bill<o:p></o:p></div></div><div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;"><o:p> </o:p></div><div><p class="MsoNormal" style="margin: 0cm 0cm 12pt; font-size: 12pt; font-family: 'Times New Roman', serif;">William Gropp<br>Director, Parallel Computing Institute<br>Thomas M. Siebel Chair in Computer Science<br>Chief Scientist, NCSA<br>University of Illinois Urbana-Champaign<br><br><br><br><o:p></o:p></p></div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;"><o:p> </o:p></div><div><div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;">On Jan 12, 2016, at 9:49 PM, Jeff Hammond <<a href="mailto:jeff.science@gmail.com" style="color: purple; text-decoration: underline;">jeff.science@gmail.com</a>> wrote:<o:p></o:p></div></div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;"><br><br><o:p></o:p></div><blockquote style="margin-top: 5pt; margin-bottom: 5pt;"><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;"><span style="font-size: 10pt;">Who wrote Example 4.23 of MPI 3.1?</span><o:p></o:p></div><div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;"><o:p> </o:p></div></div><div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;"><span style="font-size: 10pt;">I propose to add the exception rather than delete that example. I do not want to have to use real datatypes when sending nothing. </span><o:p></o:p></div></div><div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;"><o:p> </o:p></div></div><div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;"><span style="font-size: 10pt;">Is NULL a valid buffer handle? Can I pass null pointers when count=0?<br><br></span><o:p></o:p></div><div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;"><o:p> </o:p></div></div><div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;"><span style="font-size: 10pt;">Jeff <br><br></span><o:p></o:p></div><div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;"><br>On Tuesday, January 12, 2016, William Gropp <<a href="mailto:wgropp@illinois.edu" style="color: purple; text-decoration: underline;">wgropp@illinois.edu</a>> wrote:<o:p></o:p></div><blockquote style="border-style: none none none solid; border-left-color: rgb(204, 204, 204); border-left-width: 1pt; padding: 0cm 0cm 0cm 6pt; margin-left: 4.8pt; margin-right: 0cm;"><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;">The standard says that the null handles are invalid for input unless explicitly permitted.  There’s no exemption for a datatype argument where the associated count is zero.<o:p></o:p></div><div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;"><o:p> </o:p></div></div><div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;">Bill<o:p></o:p></div></div><div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;"><o:p> </o:p></div><div><p class="MsoNormal" style="margin: 0cm 0cm 12pt; font-size: 12pt; font-family: 'Times New Roman', serif;">William Gropp<br>Director, Parallel Computing Institute<br>Thomas M. Siebel Chair in Computer Science<br>Chief Scientist, NCSA<br>University of Illinois Urbana-Champaign<br><br><br><br><o:p></o:p></p></div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;"><o:p> </o:p></div><div><div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;">On Jan 12, 2016, at 9:26 PM, Jeff Hammond <<a target="_blank">jeff.science@gmail.com</a>> wrote:<o:p></o:p></div></div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;"><br><br><o:p></o:p></div><blockquote style="margin-top: 5pt; margin-bottom: 5pt;"><div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;">Is it allowed to communicate messages with (buffer=NULL,count=0,type=MPI_DATATYPE_NULL)?<o:p></o:p></div><div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;"><o:p> </o:p></div></div><div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;">George thinks MPI_DATATYPE_NULL cannot be used even when count=0, which I think is ridiculous, particularly when one makes the analogy to buffer=NULL.<o:p></o:p></div></div><div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;"><o:p> </o:p></div></div><div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;">See <a href="https://urldefense.proofpoint.com/v2/url?u=https-3A__na01.safelinks.protection.outlook.com_-3Furl-3Dhttps-253a-252f-252furldefense.proofpoint.com-252fv2-252furl-253fu-253dhttp-2D3A-5F-5Fwww.open-2D2Dmpi.org-5Fcommunity-5Flists-5Fusers-5F2016-5F01-5F28255.php-2526d-253dBQMFaQ-2526c-253d8hUWFZcy2Z-2DZa5rBPlktOQ-2526r-253d195OD1c98cxYlIPBUDzl00KueizThEKs34a9DvL37eY-2526m-253dtWmZZT774xAE-2DRjUpTuHeZ0-2DhHkwEoE5sQADPmobarg-2526s-253d7rkfIDjMiCphV1WD00EIRKeH44dIa97JAz6C3HTPF7M-2526e-253d-26data-3D01-257c01-257cFTILLIER-2540exchange.microsoft.com-257c9b61fb2b8f7c45c2fb0e08d31bcced13-257c72f988bf86f141af91ab2d7cd011db47-257c1-26sdata-3DUjhSvh-252fNiolRuN-252bvHUJc7YppwVTJK-252bbCedSNkpq2iYo-253d&d=BQMFAg&c=8hUWFZcy2Z-Za5rBPlktOQ&r=195OD1c98cxYlIPBUDzl00KueizThEKs34a9DvL37eY&m=TVfFm0K99aS11r9rKz-pAke9c_3wS752tr9RlXFqSgE&s=pI5RW2U-SO4n4SVry0s4k8gcGg7ftGtgZXG3R1AIrak&e=" target="_blank" style="color: purple; text-decoration: underline;">http://www.open-mpi.org/community/lists/users/2016/01/28255.php</a><span class="Apple-converted-space"> </span>for the thread in question.<o:p></o:p></div></div><div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;"><o:p> </o:p></div></div><div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;">There is example code in MPI that uses this behavior.  George and I agree that example text is non-normative, but I cannot imagine how this example came to exist without the Forum believing it to be valid.<o:p></o:p></div></div><div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;"><br>Jeff<br clear="all"><o:p></o:p></div><div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;"><o:p> </o:p></div></div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;">--<o:p></o:p></div><div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;">Jeff Hammond<br><a target="_blank">jeff.science@gmail.com</a><br><a href="https://urldefense.proofpoint.com/v2/url?u=https-3A__na01.safelinks.protection.outlook.com_-3Furl-3Dhttps-253a-252f-252furldefense.proofpoint.com-252fv2-252furl-253fu-253dhttp-2D3A-5F-5Fjeffhammond.github.io-5F-2526d-253dBQMFaQ-2526c-253d8hUWFZcy2Z-2DZa5rBPlktOQ-2526r-253d195OD1c98cxYlIPBUDzl00KueizThEKs34a9DvL37eY-2526m-253dtWmZZT774xAE-2DRjUpTuHeZ0-2DhHkwEoE5sQADPmobarg-2526s-253dl-5Fbf2ha5FZxeiaQWAM3hSLdzVFrXjR7lP6X99U3j8Yo-2526e-253d-26data-3D01-257c01-257cFTILLIER-2540exchange.microsoft.com-257c9b61fb2b8f7c45c2fb0e08d31bcced13-257c72f988bf86f141af91ab2d7cd011db47-257c1-26sdata-3DrDL5xchAfjl-252bZ78pap0CoBqeA1mTY-252fP1TR-252bR3bS9O4U-253d&d=BQMFAg&c=8hUWFZcy2Z-Za5rBPlktOQ&r=195OD1c98cxYlIPBUDzl00KueizThEKs34a9DvL37eY&m=TVfFm0K99aS11r9rKz-pAke9c_3wS752tr9RlXFqSgE&s=4SVpMMvQcTxaclagpyqRiPUk7-5-fu0WeVhcJRyvgsw&e=" target="_blank" style="color: purple; text-decoration: underline;">http://jeffhammond.github.io/</a><o:p></o:p></div></div></div></div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;">_______________________________________________<br>mpi-forum mailing list<br><a target="_blank">mpi-forum@lists.mpi-forum.org</a><br><a href="https://urldefense.proofpoint.com/v2/url?u=https-3A__na01.safelinks.protection.outlook.com_-3Furl-3Dhttps-253a-252f-252furldefense.proofpoint.com-252fv2-252furl-253fu-253dhttp-2D3A-5F-5Flists.mpi-2D2Dforum.org-5Fmailman-5Flistinfo.cgi-5Fmpi-2D2Dforum-2526d-253dBQMFaQ-2526c-253d8hUWFZcy2Z-2DZa5rBPlktOQ-2526r-253d195OD1c98cxYlIPBUDzl00KueizThEKs34a9DvL37eY-2526m-253dWmu6aeEpNfbRkhCoCXwh90QkD-2DZtu59Ei30APosLG80-2526s-253ddYDLJ4Oab5-5FLyCaITy8knLTMhrw6dXW8Ry7V9buTsrE-2526e-253d-26data-3D01-257c01-257cFTILLIER-2540exchange.microsoft.com-257c9b61fb2b8f7c45c2fb0e08d31bcced13-257c72f988bf86f141af91ab2d7cd011db47-257c1-26sdata-3DecxlWptNnCnEkA2ciHW6zIekxfmR7k8nH3SAt89RxWA-253d&d=BQMFAg&c=8hUWFZcy2Z-Za5rBPlktOQ&r=195OD1c98cxYlIPBUDzl00KueizThEKs34a9DvL37eY&m=TVfFm0K99aS11r9rKz-pAke9c_3wS752tr9RlXFqSgE&s=uS5UmkMI85GnD930cEt44wg3KbKk8BFG2PtmFe75Ufk&e=" target="_blank" style="color: purple; text-decoration: underline;">http://lists.mpi-forum.org/mailman/listinfo.cgi/mpi-forum</a><o:p></o:p></div></blockquote></div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;"><o:p> </o:p></div></div></blockquote></div></div></div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;"><br><br>--<span class="Apple-converted-space"> </span><br>Jeff Hammond<br><a href="mailto:jeff.science@gmail.com" target="_blank" style="color: purple; text-decoration: underline;">jeff.science@gmail.com</a><br><a href="https://urldefense.proofpoint.com/v2/url?u=https-3A__na01.safelinks.protection.outlook.com_-3Furl-3Dhttps-253a-252f-252furldefense.proofpoint.com-252fv2-252furl-253fu-253dhttp-2D3A-5F-5Fjeffhammond.github.io-5F-2526d-253dBQMFaQ-2526c-253d8hUWFZcy2Z-2DZa5rBPlktOQ-2526r-253d195OD1c98cxYlIPBUDzl00KueizThEKs34a9DvL37eY-2526m-253dWmu6aeEpNfbRkhCoCXwh90QkD-2DZtu59Ei30APosLG80-2526s-253dR0kDXAHJcNQ0KlEDXZgbFYadSfH6Zn2jb-2DIW4lqLGPk-2526e-253d-26data-3D01-257c01-257cFTILLIER-2540exchange.microsoft.com-257c9b61fb2b8f7c45c2fb0e08d31bcced13-257c72f988bf86f141af91ab2d7cd011db47-257c1-26sdata-3DyRa3-252bxycihybY4SJ0m9i0Dg-252fl2BE-252bGvaZFv3WSDGFAQ-253d&d=BQMFAg&c=8hUWFZcy2Z-Za5rBPlktOQ&r=195OD1c98cxYlIPBUDzl00KueizThEKs34a9DvL37eY&m=TVfFm0K99aS11r9rKz-pAke9c_3wS752tr9RlXFqSgE&s=i0i2l-V2cFKptWA7vGzFfo5vU0NkO8D4PsbvPQnp-ck&e=" target="_blank" style="color: purple; text-decoration: underline;">http://jeffhammond.github.io/</a><br>_______________________________________________<br>mpi-forum mailing list<br><a href="mailto:mpi-forum@lists.mpi-forum.org" style="color: purple; text-decoration: underline;">mpi-forum@lists.mpi-forum.org</a><br><a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__lists.mpi-2Dforum.org_mailman_listinfo.cgi_mpi-2Dforum&d=BQMFAg&c=8hUWFZcy2Z-Za5rBPlktOQ&r=195OD1c98cxYlIPBUDzl00KueizThEKs34a9DvL37eY&m=TVfFm0K99aS11r9rKz-pAke9c_3wS752tr9RlXFqSgE&s=KGMMvDb_jjTnOZRi0iuB6IeAReKiv6d7Xn5f6sQsiL8&e=" style="color: purple; text-decoration: underline;">http://lists.mpi-forum.org/mailman/listinfo.cgi/mpi-forum</a><o:p></o:p></div></blockquote></div><div style="margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif;"><o:p> </o:p></div></div></div>_______________________________________________<br>mpi-forum mailing list<br><a href="mailto:mpi-forum@lists.mpi-forum.org" style="color: purple; text-decoration: underline;">mpi-forum@lists.mpi-forum.org</a><br><a href="http://lists.mpi-forum.org/mailman/listinfo.cgi/mpi-forum" style="color: purple; text-decoration: underline;">http://lists.mpi-forum.org/mailman/listinfo.cgi/mpi-forum</a></div></blockquote></div><br></div></body></html>