クーの自由研究

マスターのかえるのクーは、弟子達の召喚術により新たな依り代を得てⅡ世として復活しました。

ISSUE CODE:[ Maple_syrup_cookie_02]An incident that causes an error when executing mpiexec (MPICH) including other node specification from macOS

macOSから他ノード指定を含むmpiexec(MPICH)実行を行う時、実行エラーとなるインシデントの解決

Hello there, this is Karen, Itonaka speaking.
こんにちは(wa)、こんばんは(wa)。当局は(wa)井戸中 花蓮です。

f:id:UriKaren:20200726011044p:plainf:id:UriKaren:20200805223522p:plainf:id:UriKaren:20200805223536p:plain

リクエストで、タイトルは(wa)すべて英語になりました。海外検索サイトでの当ページの検索実験のためです。

This page will be updated from time to time until it is resolved or the labyrinth is entered.

このページは(wa)解決するまで、もしくは(wa)迷宮入りするまで、随時更新されます。

(additional) This ISSUE has been resolved.


Status/Feedback

状態/饋還

[Close] / [Thank you for the solution]


Environment

環境

hostname=CatalinaBearish
macOS(10.15.6):Catalina(VMWare)
IP=192.168.16.11</9>

hostname=CatalinaChair
macOS(10.15.6):Catalina(VMWare)
IP=192.168.16.10

 


Incident

事件

An execution error occurs when executing mpiexec(MPICH) including other node specification from macOS.

macOSで他のノード指定を含むmpiexec(MPICH)を実行すると実行エラーが発生する。


Errors

エラー

CatalinaBearish:source mariel$ mpiexec -n 2 -host CatalinaChair ./a.sh

[proxy:0:0@CatalinaChair.local] HYDU_sock_connect (utils/sock/sock.c:145): unable to connect from "CatalinaChair.local" to "CatalinaBearish.local" (Invalid argument)
[proxy:0:0@CatalinaChair.local] main (pm/pmiserv/pmip.c:183): unable to connect to server CatalinaBearish.local at port 49415 (check for firewalls!)

data
Packet capture of CatalinaBearish(IP:192.*.*.11/18), and CatalinaChair(IP:192.*.*.10/18):Wireshark

 


Probable cause

推定原因

As far as I can see from the packet capture, there is no evidence of packet filtering, and ssh communication is open and closed without any problems.

パケットキャプチャから見る限り、パケットフィルタリングの証拠はなく、ssh通信は問題なく開いたり閉じたりされています。

There may be some internal data handling problem. (It looks like a name resolution problem.)

内部データ処理に問題がある可能性があります。 (名前解決の問題のようです。)


The comparison with the capture revealed that the port number in the error message was incorrect. It was port 49416 that was actually used. Also, there was no sign of trying to use the 49415.

キャプチャと比較すると、エラーメッセージのポート番号が正しくないことがわかりました。実際に使用されたのはポート49416でした。また、49415を使おうとする気配はありませんでした。

 


1st Answer(Request for additional confirmation)

第一回答

Please specify the IP address directly instead of the name and check if the error continues. Try specifying your own host name with a unique IP address, not "localhost".

名前の代わりにIPアドレスを直接指定して、エラーが続くかどうかを確認してください。 「localhost」ではなく、固有のIPアドレスを使用して独自のホスト名を指定してみてください。


The -host option is incorrect. It operates with the same meaning as the -hosts option. Use -hosts. (check with man)

-hostオプションが正しくありません。 -hostsオプションと同じ意味で動作します。 -hostsを使用します。 (男性に確認)


It seems that the name server function is used for name resolution, but try writing it directly in the /etc/hosts file to see if the phenomenon changes.

 ネームサーバー機能は名前解決に使用されているようですが、/etc/hostsファイルに直接書き込んで、現象が変化するかどうかを確認してください。

 

1st Response

第一応答

When I specified the IP address for the local host, it worked fine!!

ローカルホストのIPアドレスを指定したところ、問題なく動作しました!!

CatalinaBearish:source mariel$ mpiexec -n 5 -hosts CatalinaChair,192.168.16.11 ./a.sh

From the New World: rank 1 of 5 running on CatalinaBearish.local (NODE rank 0 of 2 ) :I am The Owl that Whispered Love at the Bottom of the World
From the New World: rank 3 of 5 running on CatalinaBearish.local (NODE rank 1 of 2 )
From the New World: rank 0 of 5 running on CatalinaChair.local (NODE rank 0 of 3 ) :I am The Beast that Shouted Love at the Heart of the World
From the New World: rank 2 of 5 running on CatalinaChair.local (NODE rank 1 of 3 )
From the New World: rank 4 of 5 running on CatalinaChair.local (NODE rank 2 of 3 )

CatalinaBearish:source mariel$ mpiexec -n 5 -hosts CatalinaChair,192.168.16.11 python ./MPI_TEST01.py

From the New World: rank 0 of 5 running on CatalinaChair.local (SELF rank 0 of 1) :I am The Beast that Shouted Love at the Heart of the World
From the New World: rank 1 of 5 running on CatalinaBearish.local (SELF rank 0 of 1)
From the New World: rank 2 of 5 running on CatalinaChair.local (SELF rank 0 of 1)
From the New World: rank 3 of 5 running on CatalinaBearish.local (SELF rank 0 of 1)
From the New World: rank 4 of 5 running on CatalinaChair.local (SELF rank 0 of 1)

I have set

192.168.16.11 CatalinaBearish
192.168.16.11 CatalinaBearish.local
192.168.16.10 CatalinaChair
192.168.16.10 CatalinaChair.local

in /etc/hosts, but the situation remains the same when the host name is specified. 

/etc/hostsに設定しましたが、ホスト名を指定しても状況は変わりません。

Like this.

CatalinaBearish:source mariel$ mpiexec -n 5 -hosts CatalinaChair,CatalinaBearish ./a.sh

From the New World: rank 3 of 5 running on CatalinaBearish.local (NODE rank 1 of 2 )
[proxy:0:0@CatalinaChair.local] HYDU_sock_connect (utils/sock/sock.c:145): unable to connect from "CatalinaChair.local" to "CatalinaBearish.local" (Invalid argument)
[proxy:0:0@CatalinaChair.local] main (pm/pmiserv/pmip.c:183): unable to connect to server CatalinaBearish.local at port 49255 (check for firewalls!)
From the New World: rank 1 of 5 running on CatalinaBearish.local (NODE rank 0 of 2 ) :I am The Owl that Whispered Love at the Bottom of the World


2nd Answer

第2回答

Internally, your host name (for example, CatalinaBearish.local) may resolve to the 127.0.0.1 address.

内部的には、ホスト名(たとえば、CatalinaBearish.local)は127.0.0.1アドレスに解決される場合があります。

Even if the external address was set in the /etc/hosts file, the result did not change.

/etc/hostsファイルに外部アドレスが設定されていても、結果は変わりませんでした。

So it seems to be the behavior of the internal OS function related to name resolution.
If there is no problem, please specify the "IP address" of your host.

したがって、名前解決に関連する内部OS関数の動作のようです。
問題がなければ、ホストの「IPアドレス」を指定してください。

If not, you will need to fix the sources individually for this issue.
In that case, a coupon is required.

そうでない場合は、この問題の原因を個別に修正する必要があります。
その場合、クーポンが必要です。

 

2nd Response

第2応答

If it works by specifying the IP address, that is enough.

IPアドレスを指定して機能する場合は、これで十分です。

No separate|branch source fix is required.

個別のソース修正は必要ありません。

Thank you for the solution, so much. It was very helpful.

 解決策をありがとうございます。とても役に立ちました。


ひとこと

If you use coupons, it may be a smoother solution.

もし、あなたがクーポンを使用するなら、よりスムーズに解決する可能性があります。

クーポンよろしくお願いします。「は(wa)≒わ(wa)」であることを学習できました。