Message Passing Inte ..
[2ch|▼Menu]
2:デフォルトの名無しさん
04/11/07 18:26:35
MPIってなんだ? 

URLリンク(www.h7.dion.ne.jp)


3:デフォルトの名無しさん
04/11/07 18:29:00
MPI(Message Passing Interface)での並列計算
URLリンク(p-grp.nucleng.kyoto-u.ac.jp)

4:デフォルトの名無しさん
04/11/07 18:31:57
CORBAとかでできないの?

5:デフォルトの名無しさん
04/11/09 17:28:21
初心者ですが何かよい参考書はありませんか?

6:デフォルトの名無しさん
04/11/09 17:31:56
URLリンク(slashdot.jp)

7:デフォルトの名無しさん
04/11/09 18:32:22
>>6
高校生でもこれほどの環境を手に入れられる時代になったのですね。
素晴らしい。

8:デフォルトの名無しさん
04/11/14 01:07:13
LAM/MPI Parallel Computing
URLリンク(www.lam-mpi.org)

SMPP > PCクラスタ超入門
URLリンク(mikilab.doshisha.ac.jp)

「スカラー・チューニング講習会」 「並列プログラミング(MPI)講習会」で配布したテキスト
URLリンク(accc.riken.jp)

OOMPI
URLリンク(www.osl.iu.edu)


9:デフォルトの名無しさん
04/11/22 16:29:37


10:デフォルトの名無しさん
04/11/25 13:28:07
例とかが載っているサイトとかがあったら教えてください

11:デフォルトの名無しさん
04/11/25 13:58:06
>>10
とりあえず9までにいくつかある


12:デフォルトの名無しさん
04/11/25 19:55:03
MPIは使い方は簡単だけど、問題はアルゴリズムの並列化だよね。
MPI自体はほんとに難しいことはないから、リンク先でも読めばすぐにわかるよ。

13:デフォルトの名無しさん
04/12/17 18:03:55
MPI始めたばかりなんですが
mpiccを実行した後、mpirunすると
0 - MPI_SEND : Invalid rank 2
p0_23956: p4_error: : 8262
[0] Aborting program !
[0] Aborting program!
パイプ破壊
とエラーがでてしまいます。
何がいけないのでしょうか?;;


14:デフォルトの名無しさん
04/12/17 18:15:19
>>13
他のMPIプログラムはちゃんと動いたの?
もし動いたのなら、今回動かなかったプログラムのソースは載せられる?

15:デフォルトの名無しさん
04/12/17 18:34:03
>>13
> 0 - MPI_SEND : Invalid rank 2
Invalid rankなんだから、"2" に対応するpeがMPI_Sendで使用したコミュニケー
タに無いんじゃないの?


16:13
04/12/17 19:54:48
早速のレスありがとうございます
>>14
他のプログラム(πの計算)などはできました。
今回のは↓にUPしました。
URLリンク(www.geocities.jp)

>>15
ちょっと

17:13
04/12/17 20:01:13
うわ・・書いてる途中で
>>15
知識が足りなくて理解できない…
本でも買って出直してきます;;

18:デフォルトの名無しさん
04/12/18 00:03:34
>>16
for(source=1;source<mb;source++){
多分ここでしょ。でもmbをpに直しても間違いのような・・・
突っ込みどころたくさんあるんだけど、もうちょい勉強してみて。


19:デフォルトの名無しさん
04/12/18 00:41:44
>>16
これでも読んでください。
同志社大学の人が授業で使っている講義資料かな?
あそこは設備があるしね。。
URLリンク(mikilab.doshisha.ac.jp)

20:13
04/12/18 01:40:26
>>16,17
ありがとうございます。
周りに聞ける人いなくて助かりましたー
勉強してがんばります!

21:13
04/12/18 01:41:56
>>18,19でした…ミスばかりですみません;;

22:13
04/12/19 19:09:57
同志社の資料はわかりやすいですね。
「MPI並列プログラミング」(P.パチェコ著)も買ってみたんですが
結構難しくてちゃんと理解できるか不安に・・・。



23:デフォルトの名無しさん
04/12/20 16:49:59
KNOPPIX クラスタ 情報交換会
日時:12月28日 13:30-
場所:同志社大学 京田辺校地 香知館 3F会議場
URLリンク(www.is.doshisha.ac.jp)


24:デフォルトの名無しさん
05/01/06 16:45:54
む〜んエラーばっかだ
かなり行き詰まってきた;;
<NO ERROR MESSAGE> : Internal MPI error! Attribute in commun
icator is not a valid attribute
Special bit pattern 0 in attribute is incorrect.
[0] Aborting program !
[0] Aborting program!

25:デフォルトの名無しさん
05/01/12 16:14:33
プロセス数2以外でやると止まってしまうんですが
原因がわかりません…ご教授のほどを

他のプログラムはプロセス数に限らず動いたんだけどなぁ

26:デフォルトの名無しさん
05/01/13 23:07:13
print文を入れてどこで止まってるか調べたら?
多分MPIの通信ルーチンの所だと思うけどね。

27:デフォルトの名無しさん
05/02/15 02:50:23
>>25
どういう状況でとまるのか書かないとわかりにくいッす。
愚考ながら、1のときと3のときでは止まる原因が違う、ということも。

ところで、MPICHのWIN版設定ってやってるページ少ないですね。
GUIのmpirunは接続異常は表示しないし…


28:デフォルトの名無しさん
05/02/18 03:07:35
ちょいとお尋ねしますが。
MPICHって、GlobalArrays実装してますか?
英文必死こいて読んで見たけど、らしき記述が見当たらないのです。
・・・いや、職場で異様に自信満々で「共有メモリ使える」と逝ってる香具師がいるもんで。
そもそも分散型プロセス通信の為の規格っつーか仕様ですよね?>MPI

29:デフォルトの名無しさん
05/02/18 11:13:13
>>28
まさか「共有メモリ」なんて無いですよ。MPIって "Message Passing Interface" ですもん。
プロセッサ間のやりとりはすべてメッセージの送受信ですよ。

> ・・・いや、職場で異様に自信満々で「共有メモリ使える」と逝ってる香具師がいるもんで。
ずいぶんと不幸な職場環境ですね……


30:28
05/02/18 21:09:43
>>29
・・・やっぱり?
おかしいとは思ったんですわ。
まあ、もうちょっと読み進めては見ますがせっかくだし。

それはそれとして、RMAのある実装って何かありますか?
MPICHにはないようで。
うまく使えばかなりおいしそうなんで、いじってみたい・・・

31:デフォルトの名無しさん
05/02/22 10:09:38
パソコンにインストールしたいのだけどどこから手をつけていいかわからん

32:デフォルトの名無しさん
05/02/24 03:22:52
とりあえず、
ハード的にはネットワークの使えるパソコン数台と、ルーター
ソフト系は上のほうの紹介サイトぐるっと回ってライブラリをとってくる。
あとはメインのプログラムの開発環境、これぐらい?

33:デフォルトの名無しさん
05/03/09 17:16:27
bcc32で使える?

34:デフォルトの名無しさん
05/03/28 08:43:19
拡張子が.cの場合は問題ないのに、.cppにすると下記のようなエラーが出ます。
何がいけないのでしょうか?解決方法を教えてください。
/tmp/ccGU5ztX.o(.eh_frame+0x11): undefined reference to `__gxx_personality_v0'
collect2: ld returned 1 exit status

35:デフォルトの名無しさん
05/03/28 08:45:49
拡張子を.cにする。


36:デフォルトの名無しさん
05/03/28 08:57:36
c++を使用したい場合は?

37:デフォルトの名無しさん
05/03/28 09:11:02
>>36
g++でコンパイルやリンクしてる?

38:デフォルトの名無しさん
05/03/28 09:12:40
mpiccです。


39:デフォルトの名無しさん
05/03/28 16:28:41
MPIつかったプログラムを走らせた場合、すべてのプロセスは終わるときも同時に終わるのですか?

40:デフォルトの名無しさん
05/03/28 16:30:00
同時に終わるようにプログラムしないと同時には終わらないよ


41:デフォルトの名無しさん
05/03/29 02:56:38
プログラム中で、クラスを作成し、プログラム終了時に、ブロックから抜けることによって破棄されます。
このクラスのデストラクタがランク0以外働かないのですが、何故なのでしょうか?

42:デフォルトの名無しさん
05/03/29 10:25:22
>38
mpiCCでいける

43:デフォルトの名無しさん
05/03/29 11:17:29
受け取る側のプロセスがまだrecv関数に到達していないときに、送信側がsendを送った場合、メッセージは破棄されてしまうのでしょうか?

44:デフォルトの名無しさん
05/03/29 11:53:30
>>43
まずはMPIの仕様書を読もうよ


45:デフォルトの名無しさん
05/03/31 07:23:49
MPIはC++には対応しているの?

46:デフォルトの名無しさん
05/04/06 14:28:48
G77などのフリーソフトでMPI関数で書かれたプログラム文を
コンパイルする詳しい方法分かりますか?

47:46
05/04/06 14:40:00
OSはwindowsXPです。
include 'mpif.h'で定義ファイルを読み込むんですよね?

48:デフォルトの名無しさん
05/04/06 15:41:26
>>47
Unixは使えないのですか?

49:46
05/04/06 16:07:03
>>48
使えないです。unixでないとできませんか?

50:デフォルトの名無しさん
05/04/06 16:30:58
G77ってgnuのfortran?

51:46
05/04/06 16:33:04
そうです。無理ですか?

52:デフォルトの名無しさん
05/04/06 22:37:29
Windows上でのfortranコンパイラは何使ってるの?

53:46
05/04/06 23:35:21
主にG77でコンパイルしています。

54:デフォルトの名無しさん
05/04/07 14:03:18
MPIを使ってPDEを解きたいのですが、データはそれぞれのノードがデータの一部分を持つのでしょうか?
threadを使ったプログラムは経験があるのですが、MPIでの作成方法がよくわかりません。


55:デフォルトの名無しさん
05/04/11 00:23:11
MPICH2使った人いる?MPICHは普通に動くのだけれどMIPCH2が全然機能してくれない。


56:デフォルトの名無しさん
05/04/16 01:49:10
mpichについていたπの計算するプログラムが理解できません。
なんでwhile(!done){}あたりのギミックが必要なの?


57:デフォルトの名無しさん
05/04/16 13:14:57
   _、 _ ∩
 ( ∀`) 彡 >>56 教えてやってもいいが
((≡O  ⊃
  |   |   おまい!左腕を上下 右腕を前後
  し⌒J   同時にやってみろ!話はそれからだ!

58:デフォルトの名無しさん
05/04/16 13:52:56
CPUは別々に稼動してるだろ。CPU1個が処理終わったからといって
他のn個のCPUが処理が完全同期で終わる保証はどこにもないだろ。
だったら全部の処理が終わるまで待つのは当たり前だろ。
 それともそんなことすら解らないのか?プログラム組むの辞めろ。お前は
もう、日本から出て行け

59:デフォルトの名無しさん
05/04/16 16:24:45
>>56
> なんでwhile(!done){}あたりのギミックが必要なの?
単にコードの書き方がまずいだけと思われ。
この内容ならもっと見やすくシンプルにできるよね。

60:デフォルトの名無しさん
05/04/16 21:35:10
56です。
なんかわかったような気がする。
コメントアウトの部分のソースを無視していました。
頭悪くてすみませんでした。

>>58さん
MPI_Reduce()で全プロセスが終わるの待ってるのかと思ってたんですけど
違うんですか?


61:デフォルトの名無しさん
05/04/30 18:49:38
CPUが空いているマシンから優先的にジョブを割り当てるにはどうしたらよいのでしょうか?


62:デフォルトの名無しさん
05/05/01 01:56:36
エラーもなくコンパイルが終わり、プログラムを実行すると、ある時点で

p5_30033:  p4_error: interrupt SIGSEGV: 11
Broken pipe
Broken pipe

というエラーが出ます。これは何がいけないのでしょうか?
個人的には、ファイルアクセスで問題が起きていると思っているのですが、エラーの原因が未だつかめません。

63:デフォルトの名無しさん
05/05/01 02:18:46
>>60
 >>58 そいつ、単なるバカだから相手にすんな

64:デフォルトの名無しさん
05/05/03 11:48:06
>>62
配列の範囲外にアクセスしているとか
MPI以外のエラーを疑え

65:デフォルトの名無しさん
05/05/05 11:48:10
gccのバージョンの違うコンパイラでmakeしたMPIを別のバージョンgccでコンパイルするCプログラムで利用しても問題ないですか?
問題ないと思っていたのですが、gcc4にアップデートして以来、原因不明で0番プロセス以外が実行中に落ちます。

66:デフォルトの名無しさん
05/05/07 03:33:52
x86 向け gcc4 はまだバグありで危険じゃないのかな。
gcc3 を使ってた方が安全だよ。

67:デフォルトの名無しさん
05/08/19 18:09:30
MPICH2をインストールするのにちょっと苦戦してるんですが
mpd.confにsecretwordを書いた後どうすればいいかちょっと分かりません
教えてもらえないでしょうか?

68:デフォルトの名無しさん
05/08/19 18:42:55
× 教えてもらえないでしょうか?
○ ちょっと教えてもらえないでしょうか?

69:デフォルトの名無しさん
05/08/22 05:24:37
これがちょっち?

70:デフォルトの名無しさん
05/09/09 19:38:13
SCore使って上げてヽ(;´Д`)ノ

71:デフォルトの名無しさん
05/09/12 22:52:56
ググってみましたが、情報が少ないですね。
C++でサーバアプリで計算しながら、クライアントアプリにソケット通信するようなシステムに
適用できますか?
サーバー側は1000件/分ぐらいのトランザクションで、クライアント側はサマリー情報を
半リアルで表示させるだけといったかんじです。

72:デフォルトの名無しさん
05/09/13 07:18:44
余裕


73:デフォルトの名無しさん
05/11/06 16:40:07
mpiプログラミングの前にmpiの勉強をした方が(w

74:デフォルトの名無しさん
05/11/17 11:20:42
実行時に使用するコンピュータを指定することは出来ないのでしょうか?


75:デフォルトの名無しさん
05/11/17 13:12:49
できますよ

76:デフォルトの名無しさん
05/11/17 16:19:52
やり方を教えてください

77:デフォルトの名無しさん
05/11/17 16:56:14
方法はMPIの実装に依る


78:デフォルトの名無しさん
05/12/21 23:26:52
>>67
URLリンク(www-lab.imr.tohoku.ac.jp)

79:デフォルトの名無しさん
06/01/12 23:20:44
お客さんの16CPUマシン(8node, SMP 2way)向けにC言語でMPIプログラムを書いています。単純に差分法で計算するプログラムです。でも私の開発環境は、Pen4の1CPU、fedora3マシンなのです。その1CPUマシンで

mpirun -c 16 myprog.exe

で実行すると、16個のプロセスが動き始めるのですが、問題があります。
それは、プログラムを実行すると、データファイルを読み込んで、処理が始まるのですが、データファイルはいくつかの大きさのものを用意しているのですが、
あるデータファイルでは、正しく計算が完了するのですが、あるデータファイルでは
計算開始直後にエラーで終了してしまいます。調べたところ、MPI_Bcast()で
エラーしていました。
また、正しく計算できるデータファイルを使って、
mpirun -c 8 myprog.exe
のように変えるとエラーする場合もあります。
そこで教えていただきたいのですが、そもそも1CPUマシンで、このような並列計算を
実行することは、何か問題がありますでしょうか?
よろしく。

80:デフォルトの名無しさん
06/01/13 06:41:19
基本的に動かないとまずい。
メモリ不足とかじゃなきゃ、プログラムのバグだろうね


81:デフォルトの名無しさん
06/01/13 11:50:49
アドバイスありがとうございます。
>基本的に動かないとまずい。
>メモリ不足とかじゃなきゃ、プログラムのバグだろうね
やはりそうですか。
実際、プログラムを単純化して、単に16プロセスでMPI_Bcast()するだけというプログラムでは、問題なく動きます。
16以外のどんな数字でも問題ありません。なので、プログラムのバグの可能性が高いのですが、一つ気になる点は、
エラーするケースでも、エラーしないケースでも、いずれの場合でもプロセスをps -ef などでモニタしていると、
実行中に16プロセスそれぞれの親プロセスIDがころころ変わっているのが確認できるのですが、何かそのあたり
に関係しているのではと思うのですが、どなたか詳しい方、ヒントなどお願いします。


82:デフォルトの名無しさん
06/01/15 08:59:30
mpichでもlamでも、実機でもなるってんだったら、
プログラムのバグ。
MPI_Barrier()で、きちんと同期とって
MPI_Bcast()で起こってるなら
MPI実装を疑ってもいい。

まあ、なんだ。
漏れには「FedoraのMPIでエラー終了」じゃ、
どのMPI環境なのかも
どんな異常終了かもサパーリですよ。


83:デフォルトの名無しさん
06/01/15 14:56:36
>実際プログラムを単純化して、単に16プロセスでMPI_Bcast()するだけというプログラムでは、問題なく動きます

(1) 単純化したプログラムと、エラーが起こる実プログラムで、
送信データの大きさは同じですか?

(2)どういうエラーメッセージが出ますか?

(3)mpi_bcastの前後にprintfでランクの値を書き出した場合、
どうなりますか?
(全プロセスがmpi_bcast前しか表示しないのか、
それともプロセスによってはmpi_bcast後も表示するのか)

(4)エラーが起こるデータファイルで、プロセス数が16より少ないときは
どうなりますか?

84:デフォルトの名無しさん
06/01/16 00:57:31
皆さん、アドバイスありがとうございます。
>(1) 単純化したプログラムと、エラーが起こる実プログラムで、
>送信データの大きさは同じですか?
はい。MPI_INTを一個です。

>(2)どういうエラーメッセージが出ますか?
今自宅なので、正確には覚えていませんが、英語のメッセージで、
『どれかのプロセスでエラーしました』とか言う感じだったと思います。

>(3)mpi_bcastの前後にprintfでランクの値を書き出した場合、
>どうなりますか?
正しく、自分のランク値が表示されます。

>(全プロセスがmpi_bcast前しか表示しないのか、
>それともプロセスによってはmpi_bcast後も表示するのか)
全プロセスで、MPI_Bcast前に正しいランク値が表示されますが、
MPI_Bcast後には、どのプロセスも何も表示されません。


85:デフォルトの名無しさん
06/01/16 00:58:31
>(4)エラーが起こるデータファイルで、プロセス数が16より少ないときは
>どうなりますか?
ええっと、その後、いろいろ試してみたら以下のようになりました。
分割数    大きいデータ  小さいデータ
2       OK       エラー
4       OK       OK
5       エラー     エラー
6       エラー     エラー
7       エラー     エラー
8       エラー     OK
9       エラー     OK
10       エラー     OK
11       エラー     OK
12       OK      OK
13       エラー     OK
14       OK      OK
15       エラー     OK
16       エラー     OK
20       エラー     OK
というわけで、よく分かりません。
ちなみに、MPI_Barrier同期は、まったく問題なく動きます。
今のところ、MPI_Bcastを使うのをやめて、MPI_Send/MPI_Recvで同等の処理を
することで、エラーを回避できたようなのですが、MPI_Bcastがエラーする
原因が分からないので、ちょっと気がかりです。

86:デフォルトの名無しさん
06/01/16 04:45:45
(5)
>はい。MPI_INTを一個です。
確認ですが、一個というのは、下記の2つ目の引数が1という意味ですか?
MPI_Bcast(a,1,MPI_INT,〜);

(6) 上記MPI_BCASTの4つ目の引数(送信元プロセスのランク値)は、
全プロセスで同じ値になっていますか?
また、2,3つ目の引数(送受信バッファーの個数と型)も
全プロセスで同じ値になっていますか?

(7)下記の表の意味ですが、1CPUで2プロセス(mpirun -np 2)で実行し、
小さいデータを入力させた場合でもエラーになるという意味ですか?
またこれは何度やっても同じ結果ですか?
(つまり同じケースでもOKになったりエラーになったりすることはないか)

分割数    大きいデータ  小さいデータ
2       OK       エラー



87:デフォルトの名無しさん
06/01/16 04:50:20
(8) 問題のMPI_Bcastに到達する前に、MPIの他の通信は行っていますか?

(9) 実プログラムが下記のような構成になっているとして
(a)の部分をすべてコメントにすれば、
  (単純化したプログラムではうまくいくとのことなので)
  うまく動くと思いますが、
  その後で、(a)の部分を前半から少しずつ
  コメントをはずしてはテストしを繰り返せば、
  どこかで再びエラーとなるはずです。
  それによって、エラーの原因となっている個所が特定できるかもしれません。

あるいは逆に、(b)と同等の通信を(送信バッファーの中身は空でも可)
  まず(a)の直前で行い、うまくいったら、
  (a)内を少しずつ後ろへずらしていっても同じテストができます。

MPI_Init();
(a) 入力ファイルの読み込み等
(b) MPI_Bcast(a,1,MPI_INT,〜);
(c) 計算
MPI_Finalize();

88:デフォルトの名無しさん
06/01/16 05:13:37
(5)の訂正

>はい。MPI_INTを一個です。
確認ですが、一個というのは、下記の2つ目の引数が1という意味ですか?
MPI_Bcast(a,1,MPI_INT,〜);
また、下記の大きいデータの場合も小さいデータの場合も1ですか?

分割数    大きいデータ  小さいデータ
2       OK       エラー


89:デフォルトの名無しさん
06/01/16 18:19:54
長文のアドバイスありがとうございます。
>(5)の訂正
>確認ですが、一個というのは、下記の2つ目の引数が1という意味ですか?
>MPI_Bcast(a,1,MPI_INT,〜);
はい、そうです。
>また、下記の大きいデータの場合も小さいデータの場合も1ですか?
>分割数    大きいデータ  小さいデータ
>2       OK       エラー
はい。
>(6) 上記MPI_BCASTの4つ目の引数(送信元プロセスのランク値)は、
>全プロセスで同じ値になっていますか?
はい、そうなっています。printfで確認しました。
>また、2,3つ目の引数(送受信バッファーの個数と型)も
>全プロセスで同じ値になっていますか?
はい、同じです。
>(7)下記の表の意味ですが、1CPUで2プロセス(mpirun -np 2)で実行し、
>小さいデータを入力させた場合でもエラーになるという意味ですか?
はいそうです。
>またこれは何度やっても同じ結果ですか?
>(つまり同じケースでもOKになったりエラーになったりすることはないか)
再現されます。同じデータ、同じ分割数で、数回実験しましたが、その時は再現しました。
でも、何十回も同じ条件でテストしたわけではありません。
>(8) 問題のMPI_Bcastに到達する前に、MPIの他の通信は行っていますか?
他に行っているのは、MPI_Barrierのみです。同期をたくさん入れれば問題が解決するんじゃあ
ないかと思って、たくさん入れました。
>(9) 実プログラムが下記のような構成になっているとして
>(a)の部分をすべてコメントにすれば、
これらのテスト結果の報告は、後日させていただきます。

90:sage
06/01/19 03:41:50
mpichをインストールをしたいのですがconfigureで指定しなければならない
オプションをちょっと教えていただけないでしょうか?
osはfedora core4  コンパイラーにintel fortran compilar 9.0
mpich-1.2.7p1 を使用しています。
よろしくおねがいします。



91:デフォルトの名無しさん
06/01/19 17:54:06
こんなふうに、実数型と整数型を一緒にするとエラーがでます。
if ( myid .eq. 0 ) then
call MPI_IRecv(retunum,90,MPI_REAL8,1,itag(myid+2),MPI_COMM_WORLD,ireq2,ierr)
elseif ( myid .eq. 1 ) then
call MPI_ISend(retunum,60,MPI_REAL8,0,itag(myid+1),MPI_COMM_WORLD,ireq2,ierr)
end if
if ( myid .eq. 0 ) then
call MPI_IRecv(iretunum,90,MPI_INTEGER,1,itag(myid+2),MPI_COMM_WORLD,istaus,ierr)
elseif ( myid .eq. 1 ) then
call MPI_ISend(iretunum,60,MPI_INTEGER,0,itag(myid+1),MPI_COMM_WORLD,ierr)
end if
以下のように、何故ですか?わかる人教えて下さい。
test-calcul2.f:99: warning:
call MPI_IRecv(retunum,90,MPI_REAL8,
1
test-calcul2.f:106: (continued):
call MPI_IRecv(iretunum,90,MPI_INTEGER,
2
Argument #1 of `mpi_irecv' is one type at (2) but is some other type at (1) [info -f g77 M GLOBALS]

92:デフォルトの名無しさん
06/01/19 17:56:58
あ、タイプミスだ。
> if ( myid .eq. 0 ) then
> call MPI_IRecv(iretunum,90,MPI_INTEGER,1,itag(myid+2),MPI_COMM_WORLD,istaus,ierr)
> elseif ( myid .eq. 1 ) then
> call MPI_ISend(iretunum,60,MPI_INTEGER,0,itag(myid+1),MPI_COMM_WORLD,ierr)
> end if
if ( myid .eq. 0 ) then
call MPI_IRecv(iretunum,90,MPI_INTEGER,1,itag(myid+2),MPI_COMM_WORLD,ireq2,ierr)
elseif ( myid .eq. 1 ) then
call MPI_ISend(iretunum,60,MPI_INTEGER,0,itag(myid+1),MPI_COMM_WORLD,ireq2,ierr)
end if
です。

93:デフォルトの名無しさん
06/01/20 00:14:20
下記のプログラムでも同じエラーが出ますか?
もし同じエラーが出たとしたら、
同じサブルーチンの同じ引数に異なる型を指定しているという
警告で、MPIとは関係ないと思います。

program test
call sub(a)
call sub(i)
end
subroutine sub(a)
a=1
end

94:デフォルトの名無しさん
06/01/20 00:21:15
それから念のため補足ですが
-2つのif文を1つにまとめた方がすっきりすると思います。
-例えばランク0プロセスが同じireq2を(mpi_waitする前に)2回使うのはまずいです。
片方を例えばireq1にしてください。
また2回のcall mpi_xxxの後でmpi_waitが2回必要となります。
あるいはmpi_sendrecvを使う手もあります。

95:91
06/01/23 16:20:18
>>93
まさにそれでした。
>>94
なるほど、了解です。
ところで、送信バッファーに3次元の配列を持たせたいのですが
送受信がうまくいきません。何故かわかる方いますか?
if ( myid .eq. 0 ) then
call MPI_Recv(test(i,j,1),3,MPI_REAL8,1,itag,
& MPI_COMM_WORLD,istaus,ierr)
else
call MPI_Send(test(i,j,1),3,MPI_REAL8,0,itag,
& MPI_COMM_WORLD,ierr)
endif
test(1〜50,1〜100,1〜3)です。



96:デフォルトの名無しさん
06/01/23 18:40:47
(1) test(i,j,1)のiとjには何が指定されてますか?
(2) 送る要素数は3個ですか?
(3) istatusは大きさmpi_status_sizeで配列宣言してますか?
(4) itagには何が指定されてますか?
(5) 実行するとどういうエラーになりますか?

97:91
06/01/24 11:15:33
>>96
(1) test(i,j,1)のiとjには何が指定されてますか?
i=1,100とj=1,300です。DOループで指定されます。
(2) 送る要素数は3個ですか?
はい、南北方向・東西方向・上下方向の意味なので、3個です。
(3) istatusは大きさmpi_status_sizeで配列宣言してますか?
integer istatus(MPI_STATUS_SIZE)で宣言しています。
(4) itagには何が指定されてますか?
itag=1です。
(5) 実行するとどういうエラーになりますか?
テストプログラムで行った結果、エラー文は出ませんでしたが
入っているはずの値が入っていませんでした。
たとえば、10.5が入るはずなのに、0.0のままであったりします。



98:デフォルトの名無しさん
06/01/24 18:43:50
動かない並列プログラムを無料でデバッグしてくれるスレはここですか?

99:デフォルトの名無しさん
06/01/24 18:46:04
例えばi=1,j=1のとき、送りたいデータは以下(A)(B)のどちらですか?
(Fortranの場合は(A)が送られます。)

(A)
test(1,1,1)
test(2,1,1)
test(3,1,1)

(B)
test(1,1,1)
test(1,1,2)
test(1,1,3)

余談ですが、通信回数が多いと通信時間がかかるので、
普通は送りたいデータをまとめて1回で送るようにします。
従ってループ内で通信を行うということはあまりしません。

100:デフォルトの名無しさん
06/01/26 13:56:53
MPIf77でコンパイルできても
MPIf90でコンパイルできねー!!
↓こんな感じのエラーしかでねー!!
IPO Error: unresolved : mpi_type_dup_fn_
Referenced in newfile.o
IPO Error: unresolved : mpi_win_dup_fn_
Referenced in newfile.o
newfile.o(.text+0x20): In function `MAIN__':
: undefined reference to `mpi_init_'
newfile.o(.text+0x34): In function `MAIN__':
: undefined reference to `mpi_comm_rank_'
MPIのインストールの時おかしな事したのか?おれ


101:デフォルトの名無しさん
06/01/31 15:53:13
age

102:デフォルトの名無しさん
06/01/31 19:28:15
こんなエラーがでるんだが誰れか原因解かりますか?
[root@clust-gri00 test]# mpif90 -o testfile testfile.f
/usr/local/mpich-1.2.6/lib/libmpich.a(farg.o)(.text+0x7): In function `mpir_iargc__':
: undefined reference to `f__xargc'


103:デフォルトの名無しさん
06/02/01 06:24:47
まあせめて中のコンパイラぐらい書こうな

104:デフォルトの名無しさん
06/02/01 08:24:55
あと大学名と担当教官名も

105:デフォルトの名無しさん
06/02/01 18:04:38
Intel Fortran Compiler 8.1 から Intel Fortran Compiler 9.0に入れ換えたらこんなのがでるようになった.
glibcのヴァージョンが古いのか?動くっちゃ動くし結果も間違っていないが、何か気持ちわるい。
誰れか改善方法しりませんか?
/opt/intel/fc/9.0/lib/libifcore.a(for_open_proc.o)(.text+0xc14): In function `for__compute_filename.':
: warning: Using 'getpwnam' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/local/mpich-1.2.6/lib/libmpich.a(p4_secure.o)(.text+0x87): In function `start_slave':
: warning: Using 'getpwuid' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/local/mpich-1.2.6/lib/libmpich.a(chnodename.o)(.text+0x29): In function `MPID_Node_name':
: warning: Using 'gethostbyname' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking


106:デフォルトの名無しさん
06/02/02 04:11:56
めっせーじぱっしんぐってなあに?

107:デフォルトの名無しさん
06/02/02 04:29:29
読んで字の如く

108:デフォルトの名無しさん
06/02/02 05:39:40
いじわる><

109:デフォルトの名無しさん
06/02/02 19:20:57
>>105
>103-104

110:デフォルトの名無しさん
06/02/06 13:03:09
>>109

何が言いたいの?日本語わかる?
せめて会話くらいしろよ。キチガイ

111:デフォルトの名無しさん
06/02/09 13:02:07
age

112:デフォルトの名無しさん
06/02/09 14:40:46
MPICH2のC++バインドのクラス一覧が載ってるサイト知りませんか?
ユーザーガイドにも載ってないし。


113:デフォルトの名無しさん
06/03/01 11:53:27
>>105
インテルのサイトにも書いた?
URLリンク(softwareforums.intel.com)

114:デフォルトの名無しさん
06/03/02 23:48:55
MPI初心者なんですけど、
MPICHダウンロードして、一緒についてきたサンプルプログラムを
MPICH Configurationで参加するノードを設定してから実行すると

Failed to launch the root process:
"C:\Documents and Settings\XXXXX\cpi"
LaunchProcess failed, LogonUser failed, ログオン失敗: ユーザー名を認識できないか
、またはパスワードが間違っています。

というエラーが返ってきます。
設定しなければローカルで動くんだけど、何でだろう?



115:デフォルトの名無しさん
06/03/03 10:12:08
URLリンク(www-unix.mcs.anl.gov)

Q. Why do I get this error, "Logon failure: unknown user name or bad password"?

Q. Why do I get this error, "LaunchProcess failed, CreateProcessAsUser failed, The system cannot find the file specified."?


116:114
06/03/03 17:57:11
>>115
ありがとう!
やってみるね!


117:デフォルトの名無しさん
06/03/07 16:00:54
独学でisend bcastなどの基本的な関数は一通り使い方がわかったのですが、
なんか練習問題みたいなのはないですか?

そんな大規模演算をする機会もないし、
練習用に何かお勧めなものはありますか?

118:デフォルトの名無しさん
06/03/07 17:20:48
sendとrecvだけでbcast,scatter,gather,allgatherと同じ機能を作る
ヤコビ法の並列化
LU分解の並列化
2次元FFTの並列化

119:デフォルトの名無しさん
06/03/07 17:27:38
π計算の並列化
e計算の並列化

120:デフォルトの名無しさん
06/03/07 19:24:56
実用的なのは、

コマンド1
コマンド2
.
.
.
コマンドN
という独立したジョブが書いてあるテキストファイルを読み込んで、
P個のプロセッサで実行させるプログラム。
コマンドに依存関係つけるとなおよし。


121:デフォルトの名無しさん
06/03/12 16:05:09
MPI_Sendで送る際、相手が受け取るまでプログラムの実行を停止するにはどうしたらよいのでしょうか?

122:デフォルトの名無しさん
06/03/12 16:09:32
synchronous sendにすりゃいいのと違う?

123:デフォルトの名無しさん
06/03/12 21:03:03
MPI_Sendだと送信バッファにコピーした状態で戻る実装が多いっぽいね。
↓にモードの説明が。
URLリンク(www.mpi-forum.org)

MPI_Ssendがない実装もあるようだし、返答をMPI_RecvかMPI_Barrierするのが確実じゃない?
バンド幅を測るとかの場合、受信が完全に終了したのを確認するにはこれしか方法がなさげ。


124:http://www.vector.co.jp/soft/win95/util/se072729.html
06/03/18 21:10:21
TextSS のWindowsXP(Professional)64bit化おながいします

もしくは64bitにネイティブ対応したテキスト置換ソフトありますか?

そういや64bitにネイティブ対応している2chブラウザてありましたっけ?





125:デフォルトの名無しさん
06/03/19 11:52:28
C++BuilderでMPIを使うにはどうしたらよいのでしょうか?

126:デフォルトの名無しさん
06/03/24 20:00:53
MPICH2のWindows版を使っているのですが、
以下のようなプログラムでも時間が3秒かかります。(VC++、IntelC++とも)
MPI_Finalizeの終了処理に時間がかかっているようですけど
対策をご存知の方いっらいしゃますすか。

#include "mpi.h"
int main(int argc, char **argv) {
MPI_Init(&argc, &argv);
MPI_Finalize();
return 0;
}

127:デフォルトの名無しさん
06/04/13 06:48:21
ノンブロッキング通信というのは、簡単に言うとどういうものなのでしょうか?

128:デフォルトの名無しさん
06/04/13 08:13:11
バックグラウンドで通信処理をさせることで
一度に複数の相手と通信したり、
通信中に別の計算させたりするもの


129:デフォルトの名無しさん
06/05/08 21:15:20
ほしゅしゅ

130:デフォルトの名無しさん
06/05/11 15:37:35
hoshu

131:デフォルトの名無しさん
06/06/02 08:31:40
あまり大きなサイズで一度に通信しようとすると、デッドロックするのは仕様ですか?

132:デフォルトの名無しさん
06/06/03 01:56:38
実装によるだろ
そんな仕様はない

133:デフォルトの名無しさん
06/07/30 21:08:39
ちょ・・・こんな有益なスレがあったなんて。。
明日からmpi使うらしいんで勉強してきます

134:・∀・)っ-○◎● ◆R.I.S.K.0.
06/07/30 22:45:31
John the RipperのMPI対応版出たけど
アレって単にプロセス間通信やるだけよね?

プロセスレベルマルチタスクであってスレッドレベルマルチタスクじゃないよね?


135:デフォルトの名無しさん
06/09/05 22:49:52
Linuxにmpich-1.2.3を突っ込んで
int main(int argc, char **argv){
int procs, id;
MPI_Init(&argc, &argv);
MPI_Comm_rank(MPI_COMM_WORLD, &id);
MPI_Comm_size(MPI_COMM_WORLD, &procs);
printf("#### %d, %d ####\n", id, procs);
MPI_Finalize();
return 0;
}
なmain.cソースファイルを生成し,
mpicc main.c
mpirun -np 1 a.out
したところ
0 - <NO ERROR MESSAGE> : Could not convert index 1140850688 into a pointer
The index may be an incorrect argument.
Possible sources of this problem are a missing "include 'mpif.h'",
a misspelled MPI object (e.g., MPI_COM_WORLD instead of MPI_COMM_WORLD)
or a misspelled user variable for an MPI object (e.g.,
com instead of comm).
[0] Aborting program !
[0] Aborting program!
p0_11706: p4_error: : 9039
と言われてしまいました.
fortranプログラムでもないし,COMMをCOMと打ち間違えてもいないし……というわけで,原因・解決方法をご存知の方おりましたらご教授くださいませ.

136:135
06/09/05 23:46:15
mpich-1.2.7拾ってきてぶっこんだら動きました.
吊ってきます.

137:デフォルトの名無しさん
06/10/25 11:29:00
保守党

138:デフォルトの名無しさん
06/11/16 01:19:10
MPICH2をFedora Core3にて実行しようとしています。
mpdはローカルであれば、正常に起動してicpiなどきちんつ動いているのですが、
ネットワーク越しのリモートで分散させようとすると(mpdboot, rshに書き換え済み)
動作しません。

failed to ping mpd ...といったエラーがでます。

ちなみにrshは単体ではパスワードなしで動作しています。

Fedoreの設定はファイヤーウォールはインストールしていますが、
「ファイヤーウォールは無効」でやっています。

むしろmpdというよりもFedoraの設定のような気がしますが、同様な症状を
経験された方はおられますでしょうか?

139:デフォルトの名無しさん
06/11/28 16:48:25
WindowsXPのVC環境で、3次元空間内におけるある種のシミュレーションプログラムを作って、
それをLinux fedora3のgccとMPI環境で並列化しました。
いまのところWin1CPU版とFedoraMPI版は同じ結果を出してくれるので、いいのですが、
ソースをメンテナンスするときに、まず1CPU版で試して、それをMPI版に移植する作業
が結構わずらわしいので困っています。
MPI版はシミュレーション空間をn分割(n≧2)する仕様になっているので、n=1として
Windows上で動かすことはできません。
そこで思ったのですが、DUAL COREのWindowsマシンならば、そこにMPICH2をインストールして、
n=2で動かせば、CPUも2個使えるし、今後、MPI版のみメンテナンスすれば、fedoraでも
Windowsでもソースを共通化できるので、楽になると思ったのですが、この作戦、
どうでしょうか?何か注意すべき点などありましたら、アドバイス御願いします。


140:デフォルトの名無しさん
06/11/29 18:55:13
>>139
mpi詳しくないけど
CPU二個とnode二個はぜんぜん違うからできないんじゃないの?

141:デフォルトの名無しさん
06/11/29 20:04:15
例え、1CPUでもたいがいのMPI実装は2プロセスで並列実行できる

142:デフォルトの名無しさん
06/11/30 10:50:29
>141
ありがとございます。やってみます。

ところで、MPIプログラムのデバッグって、皆さんどういうふうにやっていますか?
私にはとても難しいです。というのは、エラー発生しても、どこかのnodeでエラーが
起こった程度のことしかわからないので、怪しげなところにprintfを沢山いれて探し
出すという泥臭い方法でやっています。
一方WindowsのVCの環境だとDebuggerでSTEPで一行ずつ実行できるので、便利なのですが、
MPIプログラム開発でも、でも何かそういう統合的な開発環境や高性能なDebuggerって
あるのでしょうか?

143:デフォルトの名無しさん
06/12/01 00:13:29
VCってMPIサポートしてたよね?確か

144:デフォルトの名無しさん
06/12/02 21:56:05
>143
ほんまかいな?

145:・∀・)っ-○◎● ◆DanGorION6
06/12/02 22:26:17
MPICH2のWin32バイナリってVC++で使えるんじゃなかったっけ

146:デフォルトの名無しさん
06/12/03 19:00:27
Windows Compute Cluster Server 2003
MS MPI
あたりでぐぐりぇ


147:・∀・)っ-○◎● ◆R.I.S.K.0.
06/12/03 19:07:05
38度の熱が出てるのに俺元気だよなwwww

148:・∀・)っ-○◎● ◆R.I.S.K.0.
06/12/03 19:07:20
誤爆しますた><

149:デフォルトの名無しさん
06/12/04 11:56:46
>146
>Windows Compute Cluster Server 2003
これを買わないとWindowsXPでMPIはできないの?

150:デフォルトの名無しさん
06/12/04 15:24:37
mpiCCでHUGE_VALがあると、

huge-test.cpp(11): warning #1188: floating-point value cannot be represented exactly
double a=HUGE_VAL;

とワーニングが出るんだけど、どうしたらいいかな??

151:デフォルトの名無しさん
06/12/24 01:09:15
関数の引数として自分のタスクIDを渡して、その関数の中で受け取ったIDによって
判別して処理を書き換えるという方法に問題はあるでしょうか?
また一般的ですか?
それとも処理ごとに書き換えた関数を用意して、
呼び出す側でIDによって呼び出す関数を変えた方が良いのでしょうか?

ご回答よろしくお願いします。

152:デフォルトの名無しさん
06/12/24 14:18:16
>>151
スレタイ嫁


153:デフォルトの名無しさん
07/01/03 16:11:55
Mac OS X LAM-MPIの詳しい解説サイトない?

154:デフォルトの名無しさん
07/01/14 01:14:46
MPICH 1.2.5 でWindowsマシン2台でプログラムを動かそうとしたのですが、
以下のようなエラーを吐いてしまいました。
どなたか原因がわかる方いませんでしょうか。
pingでお互いのホストは認識されています。

>ERROR: The root process on "hostname" has unexpectedly exited. Exit code = -1073741515

155:デフォルトの名無しさん
07/01/14 13:35:32
>>154
[hostname]ユーザーが登録されてるクラスタのプロセスがおかしいって言ってるね
もうちょっと構成とか詳しく

156:デフォルトの名無しさん
07/01/14 16:33:20
>>155
レスありがとうございます。
大学の研究室のマシン(XP)で、お互い同じワークグループに入っているようです。
構成についてもっと詳しく書きたいのですが、
どのように調べてどういった情報を書けばいいのか教えていただけますか?
よろしくお願いします。

157:154
07/01/15 19:54:35
154です。
調べたのですがやはりよくわかりません。
>>156で同じワークグループだと書きましたが、それは関係ないみたいですね。
研究室のマシンがどのようにつながっているのか良くわからないのですが、
共有フォルダで互いのファイルを参照できたり同じワークグループに入って
いたりしたので、MPICHも問題なく動くものだと勘違いしていました。
WindowsでMPIを使う場合の構成の仕方が載ってるサイトの情報でも
とてもありがたいので、どなたかご教示願いいたします。

158:155
07/01/15 22:07:54
>>157
URLリンク(www.google.co.jp)
googleでpdf検索すればどう設定すればいいか結構でてくるよ
あとMPIプログラミングやるなら虎の巻は読んどいた方がいいね、まあ健闘を祈る!
ところでCPUは何使ってる?

159:154
07/01/16 00:20:12
>>155
レスありがとうございます。
リンクのトップに出てくるサイトで設定をしていてできなかったのです。
で、いじくってて気づいたのですが、ユーザーズガイドのシステム要件を見たら、
WindowsのHOME EDITIONは使えないのですね・・・
これはMPICH2を使えばいいのでしょうか。
MPICH2のほうのユーザーズガイドみたら特にPROに限るような記述はなかったので
HOMEでもいけるのですかね?

あと、CPUですがPentium4を使っています。

160:デフォルトの名無しさん
07/01/16 02:37:19
>>159
Homeか・・・そりゃ無理だ
デュアルブートでLinux入れる気無い?何に使うかわからんがWindows環境を捨てるのも
一つの手だよ、ただMPIを動かしたいんならKnoppix MPIとか使うと簡単に起動できる
URLリンク(kagakububuturi.hp.infoseek.co.jp)
・・・つーかこれ高校生が作ったにしちゃあよくできてるよな
後Knoppix-MPIで使ってるMPIはLAM-MPIのほうだからMPICH使いたいならあわないかも
URLリンク(www20.atwiki.jp)
適当ですまん (;´Д`)/

161:154
07/01/23 03:52:37
>>160
レス遅れてごめんなさい。
実はあれからMPICH2でやってみたところ、WindowsHomeでも動かすことができました!
たくさん相談にのっていただきありがとうございました。
ただ、今回4台で並列化行う予定なんですけど、
1台だけうまくいかないマシンがあってまた困っています。
他のマシンで2台でやってみると正常に実行できるのに、そのマシンを入れて行うと
"abort: Unable to connect to <hostname>"と出てしまいます。
設定は他のマシンと同じようにしてるつもりなのですが。
ようやくできるようになったと思ったのに、色々問題出てきますね・・・

162:デフォルトの名無しさん
07/01/23 15:13:21
>>161
WinのMPICH2は使った事無いが<hostname>って言うノードが登録されてないんじゃないか?
URLリンク(www.imslab.co.jp)
上のページの一番下が原因かも
あとMPI組んだならHPL(Linpack)ベンチマーク走らせて結果うp!

163:154
07/01/24 02:08:24
>>162
レスありがとうございます!
ご指摘のとおり、アカウント名が原因でした。
あとベンチマークですが、、、余裕があったらやってみます、スミマセン^^;

164:デフォルトの名無しさん
07/01/30 17:50:05
あるプロセッサが持っている行列内の1列をまとめて別のプロセッサに送りたいんですが
どのような関数を使えばいいでしょうか?

165:デフォルトの名無しさん
07/01/30 22:47:50
Parallel Virtual Machine (PVM) 統合スレ
スレリンク(tech板)


166:デフォルトの名無しさん
07/01/31 15:24:23
共有変数を用意したいのですがどうすればいいですか?

167:デフォルトの名無しさん
07/02/02 19:26:04
>>166
つ ny

168:デフォルトの名無しさん
07/02/05 09:33:01
MPICH2でwindowsを2台動かそうとしているんですが、
wmpiconfig.exeでapplyボタンを押しても

<ホスト名>
Credentials for <アカウント名> rejected connecting to <ホスト名>
Aborting: Unable to connect to <ホスト名>

と表示されて設定できません。
アカウント名とパスワードは2台とも同じものを設定していて、
ファイアーウォールも切っています。
pingでもお互いを認識しています。
どなたか原因分かる方よろしくおねがいしますm(_ _ )m

マシン構成は
winXP HOME PEN4 1.6GHz
winXP PRO PENIII 800MHz
です

169:デフォルトの名無しさん
07/02/26 22:15:01
MPI_Finalizeを呼んだら制御が返ってこなくなったんですが、
何か原因に心当たりのある方はおられませんか。

printf("before\n");
MPI_Finalize();
printf("after\n");
これをやったらbeforeしか表示されません。

ちなみにmpich-1.2.7@SUSELinux10.2です。

170:デフォルトの名無しさん
07/02/27 01:07:31
設定がうまくいってないんだろ?

171:169
07/02/27 03:48:13
NFSで共有していないファイルから問題設定を読んでいて、
PC毎にパラメタが変わってこけていたという罠。

吊ってきます
Λ||Λ

172:デフォルトの名無しさん
07/03/13 00:51:59
並列計算に興味あるのですが、単に処理するデータを分割、各PCで計算、最後に統合するのでは
なく、PC毎に別のデータを別の処理方法で行っていて、あるPCの処理結果が別の処理中のPCの処
理に割り込んで処理方法を変えるなどということは出来るのでしょうか?

173:デフォルトの名無しさん
07/03/20 23:06:11
自作のC++プログラムの並列化をしています。
MPI_Finalizeを呼ぶタイミングについて疑問があります。

MPI_Finalizeをmainの末尾で呼べば無事に終わるのですが、
Singletonクラスのデストラクタの中で呼んだら落ちてしまいました。

main を抜けた後に呼んではいけないでんしょうか?
環境は、MPICH2、Win XP SP2、Visual Studio 2005 です。


174:デフォルトの名無しさん
07/05/06 03:28:13
MPI_Gatherなどで、転送するデータタイプはMPI_DOUBLEなどで指定しますが、
データタイプがテンプレートに指定されたデータタイプによって変わる場合、
どのように設定したらよいのでしょうか?


175:デフォルトの名無しさん
07/05/19 08:51:23
平凡な方法ですが、
template<typename T> class MpiConst{};
template<double> struct MpiConst
{
  static const int TYPE = MPI_DOUBLE;
};

と特殊化をしておいてから、目的の template を作る
のは、どうでしょう。

これは、MpiConstを隠蔽する改良案です。
class Base
{
protected:
  Base();
  ~Base();

  static const int TYPE = MPI_DOUBLE;
   // 以下、MpiConst の定義・特殊化
};

template<typename T> TargetClass: protected Base
{ ... };



176:デフォルトの名無しさん
07/05/19 09:14:10
↑すみません。class Base の中の
static const ... の行を消し忘れました。

177:デフォルトの名無しさん
07/05/21 07:56:54
openmpの場合、#ifdef _OPENMPでopenmpを使ってコンパイルしている
場合とそうでない場合に別々のコードを書くことができますが、
MPIの場合はどのようにしたらよいのでしょうか?


178:デフォルトの名無しさん
07/06/09 16:58:36
このスレではPCクラスタのシステム障害(とくにハード)について経験ある方も
少なくないと思うので、お尋ねします。

1年前に構築した16ノードクラスタ(ディスクはNFS共有、ギザイーサ)が、
最近頻繁にp4_errorを起こすようになりました。
とりあえず疑わしいところからパーツを取り替えまくったのですが、全く改善しません。
特定ノードというより全体的にパラパラと障害が発生してるので、もしやネットワークかな
と思ったのですが、ネットワークに問題があるなら、rloginやsshのセッションやNFS
の読み書きにも障害が出ると思うのですが、特に問題は出ていないようです。
MPIで並列したときに限って発生します。
これからネットワークの交換を検討していますが、何かアドバイス頂けいたら幸いです。

ちなみに1年間はほぼ問題なく使えており、他の計算機でも実績があるので
プログラム側の問題ではないです。


次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

5154日前に更新/124 KB
担当:undef