0

私のopenmpi(使用のためにコンパイルされたinfiniband)コードには、進行状況の出力がなくstrace、プロセスの1つに次のように表示される場所があります。

poll([{fd=5, events=POLLIN}, {fd=14, events=POLLIN}, {fd=23, events=POLLIN}], 3, 0) = 0 (Timeout)

何度も何度も。この質問に従って実行ls -l /proc/<pid>/fdしたところ、いくつかsocketの と/dev/infiniband/リンクが表示されます。このシステムコールはプロセス間通信を示していinfinibandますか? これを確認したり、現時点でコードで何が起こっているかをさらにデバッグしたりするにはどうすればよいですか?

4

1 に答える 1

0

poll がタイムアウトで返されるという事実は、プロセスが何らかの通信イベントが発生するのを待っていることを意味します。このopenmpi faq ページには、デバッグする方法がいくつかリストされています。

于 2015-08-21T10:33:13.473 に答える