<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<style type="text/css" style="display:none;"> P {margin-top:0;margin-bottom:0;} </style>
</head>
<body dir="ltr">
<div style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
Hi Martin,</div>
<div style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<br>
</div>
<div style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
Could you try the patch in <a href="https://urldefense.us/v3/__https://github.com/pmodels/mpich/pull/7047__;!!G_uCfscf7eWS!bdBfNtswmXiGNRmHAbm5F4OqebCOzMdjnw1OCHLYwWev0BDBpFX1N2_NtVhd53COJcs4iLd86rUz$" id="LPlnk">
https://github.com/pmodels/mpich/pull/7047</a>?</div>
<div style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<br>
</div>
<div style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
--</div>
<div style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
Hui</div>
<div style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<br>
</div>
<div id="appendonsend"></div>
<hr style="display:inline-block;width:98%" tabindex="-1">
<div id="divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" style="font-size:11pt" color="#000000"><b>From:</b> Audet, Martin via discuss <discuss@mpich.org><br>
<b>Sent:</b> Wednesday, April 16, 2025 11:13 AM<br>
<b>To:</b> discuss@mpich.org <discuss@mpich.org><br>
<b>Cc:</b> Audet, Martin <Martin.Audet@cnrc-nrc.gc.ca><br>
<b>Subject:</b> [mpich-discuss] mpich 4.3.0 compilation problem when using --with-hcoll=/opt/mellanox/hcoll</font>
<div> </div>
</div>
<div>
<div style="display:none!important; display:none; visibility:hidden; font-size:1px; color:#ffffff; line-height:1px; height:0px; max-height:0px; opacity:0; overflow:hidden">
Hello mpich community, When I try to compile mpich 4. 3. 0 configured with --with-hcoll=/opt/mellanox/hcoll option, I get a compilation error because the hcoll_do_progress() function is defined with two arguments in hcoll_init. c but it is called</div>
<div style="display:none!important; display:none; visibility:hidden; font-size:1px; color:#ffffff; line-height:1px; max-height:0px; opacity:0; overflow:hidden">
ZjQcmQRYFpfptBannerStart</div>
<div dir="ltr" id="x_pfptBannert6an0yf" style="display:block!important; text-align:left!important; margin:16px 0px 16px 0px!important; padding:8px 16px 8px 16px!important; border-radius:4px!important; min-width:200px!important; background-color:#D0D8DC!important; background-color:#D0D8DC; border-top:4px solid #90a4ae!important; border-top:4px solid #90a4ae">
<div id="x_pfptBannert6an0yf" style="float:left!important; display:block!important; margin:0px 0px 1px 0px!important; max-width:600px!important">
<div id="x_pfptBannert6an0yf" style="display:block!important; visibility:visible!important; background-color:#D0D8DC!important; color:#000000!important; color:#000000; font-family:'Arial',sans-serif!important; font-family:'Arial',sans-serif; font-weight:bold!important; font-weight:bold; font-size:14px!important; line-height:18px!important; line-height:18px">
This Message Is From an External Sender </div>
<div id="x_pfptBannert6an0yf" style="display:block!important; visibility:visible!important; background-color:#D0D8DC!important; color:#000000!important; color:#000000; font-weight:normal; font-family:'Arial',sans-serif!important; font-family:'Arial',sans-serif; font-size:12px!important; line-height:18px!important; line-height:18px; margin-top:2px!important">
This message came from outside your organization. </div>
</div>
<div style="clear:both!important; display:block!important; visibility:hidden!important; line-height:0!important; font-size:0.01px!important; height:0px">
 </div>
</div>
<div style="display:none!important; display:none; visibility:hidden; font-size:1px; color:#ffffff; line-height:1px; max-height:0px; opacity:0; overflow:hidden">
ZjQcmQRYFpfptBannerEnd</div>
<style>
<!--
#x_pfptBannert6an0yf
        {display:block!important;
        visibility:visible!important;
        opacity:1!important;
        background-color:#D0D8DC!important;
        max-width:none!important;
        max-height:none!important}
-->
</style><style type="text/css" style="display:none">
<!--
p
        {margin-top:0;
        margin-bottom:0}
-->
</style>
<div id="x_divtagdefaultwrapper" dir="ltr" style="font-size:12pt; color:#000000; font-family:Calibri,Helvetica,sans-serif">
<p>Hello mpich community,</p>
<p><br>
</p>
<p>When I try to compile mpich 4.3.0 configured with <span>--with-hcoll=/opt/mellanox/hcoll option, I get a compilation error because the <span>hcoll_do_progress()
<span style="font-family:Calibri,Helvetica,sans-serif,EmojiFont,"Apple Color Emoji","Segoe UI Emoji",NotoColorEmoji,"Segoe UI Symbol","Android Emoji",EmojiSymbols; font-size:16px">
function </span>is defined with two arguments in <span>hcoll_init.c but it is called only with one in  <span>hcoll_rte.c </span>!</span></span></span></p>
<p><span><span><span><br>
</span></span></span></p>
<p><span><span><span>Here is the error message I get:</span></span></span></p>
<p><span><span><span><br>
</span></span></span></p>
<blockquote style="margin:0 0 0 40px; border:none; padding:0px">
<p><span><span><span></p>
<div><span style="font-family:Consolas,Courier,monospace">s</span><span style="font-family:Consolas,Courier,monospace">rc/mpid/common/hcoll/hcoll_rte.c: In function 'progress':</span></div>
</span></span></span>
<p></p>
<p><span><span><span></p>
<div><span style="font-family:Consolas,Courier,monospace">src/mpid/common/hcoll/hcoll_rte.c:58:33: warning: passing argument 1 of 'hcoll_do_progress' makes integer from pointer without a cast [-Wint-conversion]</span></div>
</span></span></span>
<p></p>
<p><span><span><span></p>
<div><span style="font-family:Consolas,Courier,monospace">   58 |         ret = hcoll_do_progress(&made_progress);</span></div>
</span></span></span>
<p></p>
<p><span><span><span></p>
<div><span style="font-family:Consolas,Courier,monospace">      |                                 ^~~~~~~~~~~~~~</span></div>
</span></span></span>
<p></p>
<p><span><span><span></p>
<div><span style="font-family:Consolas,Courier,monospace">      |                                 |</span></div>
</span></span></span>
<p></p>
<p><span><span><span></p>
<div><span style="font-family:Consolas,Courier,monospace">      |                                 int *</span></div>
</span></span></span>
<p></p>
<p><span><span><span></p>
<div><span style="font-family:Consolas,Courier,monospace">In file included from ./src/mpid/ch4/netmod/include/../ucx/ucx_coll.h:11,</span></div>
</span></span></span>
<p></p>
<p><span><span><span></p>
<div><span style="font-family:Consolas,Courier,monospace">                 from ./src/mpid/ch4/netmod/include/../ucx/netmod_inline.h:15,</span></div>
</span></span></span>
<p></p>
<p><span><span><span></p>
<div><span style="font-family:Consolas,Courier,monospace">                 from ./src/mpid/ch4/netmod/include/netmod_impl.h:1589,</span></div>
</span></span></span>
<p></p>
<p><span><span><span></p>
<div><span style="font-family:Consolas,Courier,monospace">                 from ./src/mpid/ch4/include/mpidch4.h:448,</span></div>
</span></span></span>
<p></p>
<p><span><span><span></p>
<div><span style="font-family:Consolas,Courier,monospace">                 from ./src/mpid/ch4/include/mpidpost.h:10,</span></div>
</span></span></span>
<p></p>
<p><span><span><span></p>
<div><span style="font-family:Consolas,Courier,monospace">                 from ./src/include/mpiimpl.h:232,</span></div>
</span></span></span>
<p></p>
<p><span><span><span></p>
<div><span style="font-family:Consolas,Courier,monospace">                 from src/mpid/common/hcoll/hcoll_rte.c:6:</span></div>
</span></span></span>
<p></p>
<p><span><span><span></p>
<div><span style="font-family:Consolas,Courier,monospace">./src/mpid/ch4/netmod/include/../ucx/../../../common/hcoll/hcoll.h:42:27: note: expected 'int' but argument is of type 'int *'</span></div>
</span></span></span>
<p></p>
<p><span><span><span></p>
<div><span style="font-family:Consolas,Courier,monospace">   42 | int hcoll_do_progress(int vci, int *made_progress);</span></div>
</span></span></span>
<p></p>
<p><span><span><span></p>
<div><span style="font-family:Consolas,Courier,monospace">      |                       ~~~~^~~</span></div>
</span></span></span>
<p></p>
<p><span><span><span></p>
<div><span style="font-family:Consolas,Courier,monospace">src/mpid/common/hcoll/hcoll_rte.c:58:15: error: too few arguments to function 'hcoll_do_progress'</span></div>
</span></span></span>
<p></p>
<p><span><span><span></p>
<div><span style="font-family:Consolas,Courier,monospace">   58 |         ret = hcoll_do_progress(&made_progress);</span></div>
</span></span></span>
<p></p>
<p><span><span><span></p>
<div><span style="font-family:Consolas,Courier,monospace">      |               ^~~~~~~~~~~~~~~~~</span></div>
</span></span></span>
<p></p>
<p><span><span><span></p>
<div><span style="font-family:Consolas,Courier,monospace">In file included from ./src/mpid/ch4/netmod/include/../ucx/ucx_coll.h:11,</span></div>
</span></span></span>
<p></p>
<p><span><span><span></p>
<div><span style="font-family:Consolas,Courier,monospace">                 from ./src/mpid/ch4/netmod/include/../ucx/netmod_inline.h:15,</span></div>
</span></span></span>
<p></p>
<p><span><span><span></p>
<div><span style="font-family:Consolas,Courier,monospace">                 from ./src/mpid/ch4/netmod/include/netmod_impl.h:1589,</span></div>
</span></span></span>
<p></p>
<p><span><span><span></p>
<div><span style="font-family:Consolas,Courier,monospace">                 from ./src/mpid/ch4/include/mpidch4.h:448,</span></div>
</span></span></span>
<p></p>
<p><span><span><span></p>
<div><span style="font-family:Consolas,Courier,monospace">                 from ./src/mpid/ch4/include/mpidpost.h:10,</span></div>
</span></span></span>
<p></p>
<p><span><span><span></p>
<div><span style="font-family:Consolas,Courier,monospace">                 from ./src/include/mpiimpl.h:232,</span></div>
</span></span></span>
<p></p>
<p><span><span><span></p>
<div><span style="font-family:Consolas,Courier,monospace">                 from src/mpid/common/hcoll/hcoll_rte.c:6:</span></div>
</span></span></span>
<p></p>
<p><span><span><span></p>
<div><span style="font-family:Consolas,Courier,monospace">./src/mpid/ch4/netmod/include/../ucx/../../../common/hcoll/hcoll.h:42:5: note: declared here</span></div>
</span></span></span>
<p></p>
<p><span><span><span></p>
<div><span style="font-family:Consolas,Courier,monospace">   42 | int hcoll_do_progress(int vci, int *made_progress);</span></div>
</span></span></span>
<p></p>
<p><span><span><span></p>
<div><span style="font-family:Consolas,Courier,monospace">      |     ^~~~~~~~~~~~~~~~~</span></div>
</span></span></span>
<p></p>
</blockquote>
<p><span><span><span></p>
<div><br>
</div>
<br>
</span></span></span>
<p></p>
<p>I use to compile mpich <span style="font-family:Calibri,Helvetica,sans-serif,EmojiFont,"Apple Color Emoji","Segoe UI Emoji",NotoColorEmoji,"Segoe UI Symbol","Android Emoji",EmojiSymbols; font-size:16px">versions 3.4,x, 4.1.x, and 4.2.x</span> configured with
 this option (--with-hcoll=) in the past without any problems. It looks like some recent changes in the related files introduced a problem that slip into 4.3.0 and makes compilation impossible.<br>
<br>
Could it be fixed ? Or could the --with-hcoll option be removed if it is no longer relevant (I guess that if we use ch4:ucx, ucx may itself use hcoll internally to optimize collective operations when running on hierarchical environment) ?<br>
<br>
Here are some details:<br>
<br>
</p>
<blockquote style="margin:0 0 0 40px; border:none; padding:0px">
<p>arch: x86_64</p>
<p>OS: RHEL 9.5 (up to date except kernel)</p>
<p>MOFED: <span>24.10-2.1.8.0-LTS</span></p>
<p><span>hcoll: <span>4.8.3230-1.2410068</span></span></p>
<p><span><span>ucx: <span>1.18.0-1.2410068</span></span></span></p>
<p><span><span><span><br>
</span></span></span></p>
</blockquote>
The complete configuration line:<br>
<br>
<blockquote style="margin:0 0 0 40px; border:none; padding:0px"><span style="font-family:Consolas,Courier,monospace">./configure --with-device=ch4:ucx --with-hcoll=/opt/mellanox/hcoll --prefix=/work/software/x86_64/mpich/mpich-ch4_ucx-4.3.0  --with-xpmem --enable-g=none
 --enable-fast=all --enable-romio --with-file-system=ufs+nfs+lustre --enable-shared --enable-sharedlibs=gcc</span><br>
</blockquote>
<br>
Thanks,<br>
<br>
Martin Audet</div>
</div>
</body>
</html>