[SCore-users-jp] SCore7 beta5における並列実行で停止する現象について教えてください

Hiroaki Shibata shibata.hiroaki @ jp.fujitsu.com
2010年 10月 27日 (水) 16:02:58 JST


亀山様

柴田です。
ご対応いただきありがとうございます。

>対症療法ですが, 送信バッファ及び受信バッファを MTU * senddesc, MTU * recvdesc 
>以上
>確保してみてください.
>MTU が 1460 の場合, sendbufsize と recvbufsize を 374784 に
>設定してみてください.

自分では上記の通り設定したと思うのですが、状況が改善しないため
対応方法につきまして、確認させてください。

MTUを確認したところ1500でしたので、SCoreサーバのscorehosts.dbに
ethernet sendbufsize=385024 recvbufsize=385024
を追記いたしました。
scorehosts --checkの結果は以下のようになります。
-------------------------
ethernet  recvbufsize=385024
ethernet  sendbufsize=385024
comp02  group=_scoreall_,pcc
comp02  network=etherhxb,ethernet,sctp
comp02  speed=1600
comp02  cores=8
comp02  socks=2
comp03  socks=2
comp03  cores=8
comp03  speed=1600
comp03  network=etherhxb,ethernet,sctp
comp03  group=_scoreall_,pcc
comp04  socks=2
comp04  cores=8
comp04  speed=1600
comp04  network=etherhxb,ethernet,sctp
comp04  group=_scoreall_,pcc
#### $SCBDSERV=comp01 ####
-------------------------
その後、念のため計算ノード、管理ノードを全て再起動し、
$ scrun -nodes=2x8 -group=./machinefile2_4 -network=ethernet ./test
を実行したのですが、現象が変わりませんでした。
RANK13が表示されずに停止した状態となります。

念のため、sendbufsize,recvbufsizeを徐々に大きくして最大4000000まで
試したのですが、現象は同じでした。

コメントいただきました設定が上記で間違いがないかを教えていただけ
ますよう、お願いいたします。


しかし、色々と試している過程で、以下の事象が確認できました。

0. $ scrun -nodes=2x8 -group=./machinefile2_4 -network=ethernet ./test
  を実行すると、途中で停止することを確認する。
1. scorehosts.dbのsendbufsize,recvbufsizeに5000000を指定する
 (サービスやノードの再起動はしない)
2. $ scrun -nodes=2x8 -group=./machinefile2_4 -network=ethernet ./test
 を実行する。実行すると以下のエラーが発生する。
-------------------------
$ scrun -nodes=2x8 -group=./machinefile2_4 -network=ethernet ./test
SCORED.EXE @ comp02#7750:ERROR: open_pmx_context() at mpcrt.c:151: pmxAddMember
(ethernet): Cannot allocate memory
SCORED.EXE @ comp03#7725:ERROR: open_pmx_context() at mpcrt.c:151: pmxAddMember
(ethernet): Cannot allocate memory
SCOUT(comp03): Process 7725 exited with a non-zero exit code (9).
$
-------------------------
3. scorehosts.dbのsendbufsize,recvbufsizeを元の値に戻す。
 (サービスやノードの再起動はしない)
4. それ以降、2. の実行が、エラーにもならず、停止もせず、正常に終了する。

scorehosts.dbのsendbufsize,recvbufsizeを書いていない状態からでも、上記の動作
になりました。

正常に終了するようになったというのは、それまでかなりの割合で停止していた
ものが50回連続して実行しても停止しなかったということです。
何度か、全てのマシンを再起動して、0. から再度実施するということをしたのですが
毎回同じ現象になります。

この現象が、回避策として有効なものなのか(エラーを起こすことで停止しなくなる
ことが起こりえるものなのか)、それとも偶然の出来事なのかがよくわかりません。
何かお分かりになるようでしたら、コメントいただけますと幸いです。


以上、お忙しい中お手数をおかけいたしますが
よろしくお願いいたします。

---
柴田 裕昭(shibata.hiroaki @ jp.fujitsu.com)






SCore-users-jp メーリングリストの案内