<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman",serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
p.msonormal0, li.msonormal0, div.msonormal0
        {mso-style-name:msonormal;
        mso-margin-top-alt:auto;
        margin-right:0cm;
        mso-margin-bottom-alt:auto;
        margin-left:0cm;
        font-size:12.0pt;
        font-family:"Times New Roman",serif;}
span.EmailStyle18
        {mso-style-type:personal-reply;
        font-family:"Calibri",sans-serif;
        color:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-NZ" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US">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></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US">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></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US">Cheers,<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US">-Fab<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US"><o:p> </o:p></span></p>
<div>
<div style="border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0cm 0cm 0cm">
<p class="MsoNormal"><b><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif">From:</span></b><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif"> mpi-forum [mailto:mpi-forum-bounces@lists.mpi-forum.org]
<b>On Behalf Of </b>William Gropp<br>
<b>Sent:</b> Wednesday, 13 January 2016 4:52 p.m.<br>
<b>To:</b> Main MPI Forum mailing list <mpi-forum@lists.mpi-forum.org><br>
<b>Subject:</b> Re: [Mpi-forum] MPI_DATATYPE_NULL when count=0<o:p></o:p></span></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">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></p>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">Bill<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt">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>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div>
<p class="MsoNormal">On Jan 12, 2016, at 9:49 PM, Jeff Hammond <<a href="mailto:jeff.science@gmail.com">jeff.science@gmail.com</a>> wrote:<o:p></o:p></p>
</div>
<p class="MsoNormal"><br>
<br>
<o:p></o:p></p>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<p class="MsoNormal"><span style="font-size:10.0pt">Who wrote Example 4.23 of MPI 3.1?</span><o:p></o:p></p>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.0pt">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></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.0pt">Is NULL a valid buffer handle? Can I pass null pointers when count=0?<br>
<br>
</span><o:p></o:p></p>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.0pt">Jeff <br>
<br>
</span><o:p></o:p></p>
<div>
<p class="MsoNormal"><br>
On Tuesday, January 12, 2016, William Gropp <<a href="mailto:wgropp@illinois.edu">wgropp@illinois.edu</a>> wrote:<o:p></o:p></p>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0cm 0cm 0cm 6.0pt;margin-left:4.8pt;margin-right:0cm">
<div>
<p class="MsoNormal">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></p>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">Bill<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt">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>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div>
<p class="MsoNormal">On Jan 12, 2016, at 9:26 PM, Jeff Hammond <<a href="javascript:_e(%7B%7D,'cvml','jeff.science@gmail.com');" target="_blank">jeff.science@gmail.com</a>> wrote:<o:p></o:p></p>
</div>
<p class="MsoNormal"><br>
<br>
<o:p></o:p></p>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<div>
<p class="MsoNormal">Is it allowed to communicate messages with (buffer=NULL,count=0,type=MPI_DATATYPE_NULL)?<o:p></o:p></p>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">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></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">See <a href="https://na01.safelinks.protection.outlook.com/?url=https%3a%2f%2furldefense.proofpoint.com%2fv2%2furl%3fu%3dhttp-3A__www.open-2Dmpi.org_community_lists_users_2016_01_28255.php%26d%3dBQMFaQ%26c%3d8hUWFZcy2Z-Za5rBPlktOQ%26r%3d195OD1c98cxYlIPBUDzl00KueizThEKs34a9DvL37eY%26m%3dtWmZZT774xAE-RjUpTuHeZ0-hHkwEoE5sQADPmobarg%26s%3d7rkfIDjMiCphV1WD00EIRKeH44dIa97JAz6C3HTPF7M%26e%3d&data=01%7c01%7cFTILLIER%40exchange.microsoft.com%7c9b61fb2b8f7c45c2fb0e08d31bcced13%7c72f988bf86f141af91ab2d7cd011db47%7c1&sdata=UjhSvh%2fNiolRuN%2bvHUJc7YppwVTJK%2bbCedSNkpq2iYo%3d" target="_blank">http://www.open-mpi.org/community/lists/users/2016/01/28255.php</a>
 for the thread in question.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">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></p>
</div>
<div>
<p class="MsoNormal"><br>
Jeff<br clear="all">
<o:p></o:p></p>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<p class="MsoNormal">-- <o:p></o:p></p>
<div>
<p class="MsoNormal">Jeff Hammond<br>
<a href="javascript:_e(%7B%7D,'cvml','jeff.science@gmail.com');" target="_blank">jeff.science@gmail.com</a><br>
<a href="https://na01.safelinks.protection.outlook.com/?url=https%3a%2f%2furldefense.proofpoint.com%2fv2%2furl%3fu%3dhttp-3A__jeffhammond.github.io_%26d%3dBQMFaQ%26c%3d8hUWFZcy2Z-Za5rBPlktOQ%26r%3d195OD1c98cxYlIPBUDzl00KueizThEKs34a9DvL37eY%26m%3dtWmZZT774xAE-RjUpTuHeZ0-hHkwEoE5sQADPmobarg%26s%3dl_bf2ha5FZxeiaQWAM3hSLdzVFrXjR7lP6X99U3j8Yo%26e%3d&data=01%7c01%7cFTILLIER%40exchange.microsoft.com%7c9b61fb2b8f7c45c2fb0e08d31bcced13%7c72f988bf86f141af91ab2d7cd011db47%7c1&sdata=rDL5xchAfjl%2bZ78pap0CoBqeA1mTY%2fP1TR%2bR3bS9O4U%3d" target="_blank">http://jeffhammond.github.io/</a><o:p></o:p></p>
</div>
</div>
</div>
<p class="MsoNormal">_______________________________________________<br>
mpi-forum mailing list<br>
<a href="javascript:_e(%7B%7D,'cvml','mpi-forum@lists.mpi-forum.org');" target="_blank">mpi-forum@lists.mpi-forum.org</a><br>
<a href="https://na01.safelinks.protection.outlook.com/?url=https%3a%2f%2furldefense.proofpoint.com%2fv2%2furl%3fu%3dhttp-3A__lists.mpi-2Dforum.org_mailman_listinfo.cgi_mpi-2Dforum%26d%3dBQMFaQ%26c%3d8hUWFZcy2Z-Za5rBPlktOQ%26r%3d195OD1c98cxYlIPBUDzl00KueizThEKs34a9DvL37eY%26m%3dWmu6aeEpNfbRkhCoCXwh90QkD-Ztu59Ei30APosLG80%26s%3ddYDLJ4Oab5_LyCaITy8knLTMhrw6dXW8Ry7V9buTsrE%26e%3d&data=01%7c01%7cFTILLIER%40exchange.microsoft.com%7c9b61fb2b8f7c45c2fb0e08d31bcced13%7c72f988bf86f141af91ab2d7cd011db47%7c1&sdata=ecxlWptNnCnEkA2ciHW6zIekxfmR7k8nH3SAt89RxWA%3d" target="_blank">http://lists.mpi-forum.org/mailman/listinfo.cgi/mpi-forum</a><o:p></o:p></p>
</blockquote>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</div>
</blockquote>
</div>
</div>
</div>
<p class="MsoNormal"><br>
<br>
-- <br>
Jeff Hammond<br>
<a href="mailto:jeff.science@gmail.com" target="_blank">jeff.science@gmail.com</a><br>
<a href="https://na01.safelinks.protection.outlook.com/?url=https%3a%2f%2furldefense.proofpoint.com%2fv2%2furl%3fu%3dhttp-3A__jeffhammond.github.io_%26d%3dBQMFaQ%26c%3d8hUWFZcy2Z-Za5rBPlktOQ%26r%3d195OD1c98cxYlIPBUDzl00KueizThEKs34a9DvL37eY%26m%3dWmu6aeEpNfbRkhCoCXwh90QkD-Ztu59Ei30APosLG80%26s%3dR0kDXAHJcNQ0KlEDXZgbFYadSfH6Zn2jb-IW4lqLGPk%26e%3d&data=01%7c01%7cFTILLIER%40exchange.microsoft.com%7c9b61fb2b8f7c45c2fb0e08d31bcced13%7c72f988bf86f141af91ab2d7cd011db47%7c1&sdata=yRa3%2bxycihybY4SJ0m9i0Dg%2fl2BE%2bGvaZFv3WSDGFAQ%3d" target="_blank">http://jeffhammond.github.io/</a><br>
_______________________________________________<br>
mpi-forum mailing list<br>
<a href="mailto:mpi-forum@lists.mpi-forum.org">mpi-forum@lists.mpi-forum.org</a><br>
<a href="http://lists.mpi-forum.org/mailman/listinfo.cgi/mpi-forum">http://lists.mpi-forum.org/mailman/listinfo.cgi/mpi-forum</a><o:p></o:p></p>
</blockquote>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</div>
</body>
</html>