トップページ⇒tech
500コメント204KB

Message Passing Interface (MPI) 統合スレ

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさんNGNG
MPIによる並列プログラミングについて話し合う統合スレッドです。

とりあえず本家
http://www-unix.mcs.anl.gov/mpi/

01161142006/03/03(金) 17:57:11
>>115
ありがとう!
やってみるね!
0117デフォルトの名無しさん2006/03/07(火) 16:00:54
独学でisend bcastなどの基本的な関数は一通り使い方がわかったのですが、
なんか練習問題みたいなのはないですか?

そんな大規模演算をする機会もないし、
練習用に何かお勧めなものはありますか?
0118デフォルトの名無しさん2006/03/07(火) 17:20:48
sendとrecvだけでbcast,scatter,gather,allgatherと同じ機能を作る
ヤコビ法の並列化
LU分解の並列化
2次元FFTの並列化
0119デフォルトの名無しさん2006/03/07(火) 17:27:38
π計算の並列化
e計算の並列化
0120デフォルトの名無しさん2006/03/07(火) 19:24:56
実用的なのは、

コマンド1
コマンド2
.
.
.
コマンドN
という独立したジョブが書いてあるテキストファイルを読み込んで、
P個のプロセッサで実行させるプログラム。
コマンドに依存関係つけるとなおよし。
0121デフォルトの名無しさん2006/03/12(日) 16:05:09
MPI_Sendで送る際、相手が受け取るまでプログラムの実行を停止するにはどうしたらよいのでしょうか?
0122デフォルトの名無しさん2006/03/12(日) 16:09:32
synchronous sendにすりゃいいのと違う?
0123デフォルトの名無しさん2006/03/12(日) 21:03:03
MPI_Sendだと送信バッファにコピーした状態で戻る実装が多いっぽいね。
↓にモードの説明が。
http://www.mpi-forum.org/docs/mpi-11-html/node40.html

MPI_Ssendがない実装もあるようだし、返答をMPI_RecvかMPI_Barrierするのが確実じゃない?
バンド幅を測るとかの場合、受信が完全に終了したのを確認するにはこれしか方法がなさげ。
0124http://www.vector.co.jp/soft/win95/util/se072729.html2006/03/18(土) 21:10:21
TextSS のWindowsXP(Professional)64bit化おながいします

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

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



0125デフォルトの名無しさん2006/03/19(日) 11:52:28
C++BuilderでMPIを使うにはどうしたらよいのでしょうか?
0126デフォルトの名無しさん2006/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;
}
0127デフォルトの名無しさん2006/04/13(木) 06:48:21
ノンブロッキング通信というのは、簡単に言うとどういうものなのでしょうか?
0128デフォルトの名無しさん2006/04/13(木) 08:13:11
バックグラウンドで通信処理をさせることで
一度に複数の相手と通信したり、
通信中に別の計算させたりするもの
0129デフォルトの名無しさん2006/05/08(月) 21:15:20
ほしゅしゅ
0130デフォルトの名無しさん2006/05/11(木) 15:37:35
hoshu
0131デフォルトの名無しさん2006/06/02(金) 08:31:40
あまり大きなサイズで一度に通信しようとすると、デッドロックするのは仕様ですか?
0132デフォルトの名無しさん2006/06/03(土) 01:56:38
実装によるだろ
そんな仕様はない
0133デフォルトの名無しさん2006/07/30(日) 21:08:39
ちょ・・・こんな有益なスレがあったなんて。。
明日からmpi使うらしいんで勉強してきます
0134・∀・)っ-○◎● ◆R.I.S.K.0. 2006/07/30(日) 22:45:31
John the RipperのMPI対応版出たけど
アレって単にプロセス間通信やるだけよね?

プロセスレベルマルチタスクであってスレッドレベルマルチタスクじゃないよね?
0135デフォルトの名無しさん2006/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と打ち間違えてもいないし……というわけで,原因・解決方法をご存知の方おりましたらご教授くださいませ.
01361352006/09/05(火) 23:46:15
mpich-1.2.7拾ってきてぶっこんだら動きました.
吊ってきます.
0137デフォルトの名無しさん2006/10/25(水) 11:29:00
保守党
0138デフォルトの名無しさん2006/11/16(木) 01:19:10
MPICH2をFedora Core3にて実行しようとしています。
mpdはローカルであれば、正常に起動してicpiなどきちんつ動いているのですが、
ネットワーク越しのリモートで分散させようとすると(mpdboot, rshに書き換え済み)
動作しません。

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

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

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

むしろmpdというよりもFedoraの設定のような気がしますが、同様な症状を
経験された方はおられますでしょうか?
0139デフォルトの名無しさん2006/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でもソースを共通化できるので、楽になると思ったのですが、この作戦、
どうでしょうか?何か注意すべき点などありましたら、アドバイス御願いします。
0140デフォルトの名無しさん2006/11/29(水) 18:55:13
>>139
mpi詳しくないけど
CPU二個とnode二個はぜんぜん違うからできないんじゃないの?
0141デフォルトの名無しさん2006/11/29(水) 20:04:15
例え、1CPUでもたいがいのMPI実装は2プロセスで並列実行できる
0142デフォルトの名無しさん2006/11/30(木) 10:50:29
>141
ありがとございます。やってみます。

ところで、MPIプログラムのデバッグって、皆さんどういうふうにやっていますか?
私にはとても難しいです。というのは、エラー発生しても、どこかのnodeでエラーが
起こった程度のことしかわからないので、怪しげなところにprintfを沢山いれて探し
出すという泥臭い方法でやっています。
一方WindowsのVCの環境だとDebuggerでSTEPで一行ずつ実行できるので、便利なのですが、
MPIプログラム開発でも、でも何かそういう統合的な開発環境や高性能なDebuggerって
あるのでしょうか?
0143デフォルトの名無しさん2006/12/01(金) 00:13:29
VCってMPIサポートしてたよね?確か
0144デフォルトの名無しさん2006/12/02(土) 21:56:05
>143
ほんまかいな?
0145・∀・)っ-○◎● ◆DanGorION6 2006/12/02(土) 22:26:17
MPICH2のWin32バイナリってVC++で使えるんじゃなかったっけ
0146デフォルトの名無しさん2006/12/03(日) 19:00:27
Windows Compute Cluster Server 2003
MS MPI
あたりでぐぐりぇ
0147・∀・)っ-○◎● ◆R.I.S.K.0. 2006/12/03(日) 19:07:05
38度の熱が出てるのに俺元気だよなwwww
0148・∀・)っ-○◎● ◆R.I.S.K.0. 2006/12/03(日) 19:07:20
誤爆しますた><
0149デフォルトの名無しさん2006/12/04(月) 11:56:46
>146
>Windows Compute Cluster Server 2003
これを買わないとWindowsXPでMPIはできないの?
0150デフォルトの名無しさん2006/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;

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

ご回答よろしくお願いします。
0152デフォルトの名無しさん2006/12/24(日) 14:18:16
>>151
スレタイ嫁
0153デフォルトの名無しさん2007/01/03(水) 16:11:55
Mac OS X LAM-MPIの詳しい解説サイトない?
0154デフォルトの名無しさん2007/01/14(日) 01:14:46
MPICH 1.2.5 でWindowsマシン2台でプログラムを動かそうとしたのですが、
以下のようなエラーを吐いてしまいました。
どなたか原因がわかる方いませんでしょうか。
pingでお互いのホストは認識されています。

>ERROR: The root process on "hostname" has unexpectedly exited. Exit code = -1073741515
0155デフォルトの名無しさん2007/01/14(日) 13:35:32
>>154
[hostname]ユーザーが登録されてるクラスタのプロセスがおかしいって言ってるね
もうちょっと構成とか詳しく
0156デフォルトの名無しさん2007/01/14(日) 16:33:20
>>155
レスありがとうございます。
大学の研究室のマシン(XP)で、お互い同じワークグループに入っているようです。
構成についてもっと詳しく書きたいのですが、
どのように調べてどういった情報を書けばいいのか教えていただけますか?
よろしくお願いします。
01571542007/01/15(月) 19:54:35
154です。
調べたのですがやはりよくわかりません。
>>156で同じワークグループだと書きましたが、それは関係ないみたいですね。
研究室のマシンがどのようにつながっているのか良くわからないのですが、
共有フォルダで互いのファイルを参照できたり同じワークグループに入って
いたりしたので、MPICHも問題なく動くものだと勘違いしていました。
WindowsでMPIを使う場合の構成の仕方が載ってるサイトの情報でも
とてもありがたいので、どなたかご教示願いいたします。
01581552007/01/15(月) 22:07:54
>>157
ttp://www.google.co.jp/search?num=100&hl=ja&rls=GGGL%2CGGGL%3A2006-29%2CGGGL%3Aja&as_qdr=all&q=MPI+windows+filetype%3Apdf&btnG=Google+%E6%A4%9C%E7%B4%A2&lr=
googleでpdf検索すればどう設定すればいいか結構でてくるよ
あとMPIプログラミングやるなら虎の巻は読んどいた方がいいね、まあ健闘を祈る!
ところでCPUは何使ってる?
01591542007/01/16(火) 00:20:12
>>155
レスありがとうございます。
リンクのトップに出てくるサイトで設定をしていてできなかったのです。
で、いじくってて気づいたのですが、ユーザーズガイドのシステム要件を見たら、
WindowsのHOME EDITIONは使えないのですね・・・
これはMPICH2を使えばいいのでしょうか。
MPICH2のほうのユーザーズガイドみたら特にPROに限るような記述はなかったので
HOMEでもいけるのですかね?

あと、CPUですがPentium4を使っています。
0160デフォルトの名無しさん2007/01/16(火) 02:37:19
>>159
Homeか・・・そりゃ無理だ
デュアルブートでLinux入れる気無い?何に使うかわからんがWindows環境を捨てるのも
一つの手だよ、ただMPIを動かしたいんならKnoppix MPIとか使うと簡単に起動できる
ttp://kagakububuturi.hp.infoseek.co.jp/
・・・つーかこれ高校生が作ったにしちゃあよくできてるよな
後Knoppix-MPIで使ってるMPIはLAM-MPIのほうだからMPICH使いたいならあわないかも
ttp://www20.atwiki.jp/mynote/?page=mpi
適当ですまん (;´Д`)/
01611542007/01/23(火) 03:52:37
>>160
レス遅れてごめんなさい。
実はあれからMPICH2でやってみたところ、WindowsHomeでも動かすことができました!
たくさん相談にのっていただきありがとうございました。
ただ、今回4台で並列化行う予定なんですけど、
1台だけうまくいかないマシンがあってまた困っています。
他のマシンで2台でやってみると正常に実行できるのに、そのマシンを入れて行うと
"abort: Unable to connect to <hostname>"と出てしまいます。
設定は他のマシンと同じようにしてるつもりなのですが。
ようやくできるようになったと思ったのに、色々問題出てきますね・・・
0162デフォルトの名無しさん2007/01/23(火) 15:13:21
>>161
WinのMPICH2は使った事無いが<hostname>って言うノードが登録されてないんじゃないか?
ttp://www.imslab.co.jp/Product/eem/parallel/faq.htm
上のページの一番下が原因かも
あとMPI組んだならHPL(Linpack)ベンチマーク走らせて結果うp!
01631542007/01/24(水) 02:08:24
>>162
レスありがとうございます!
ご指摘のとおり、アカウント名が原因でした。
あとベンチマークですが、、、余裕があったらやってみます、スミマセン^^;
0164デフォルトの名無しさん2007/01/30(火) 17:50:05
あるプロセッサが持っている行列内の1列をまとめて別のプロセッサに送りたいんですが
どのような関数を使えばいいでしょうか?
0165デフォルトの名無しさん2007/01/30(火) 22:47:50
Parallel Virtual Machine (PVM) 統合スレ
http://pc10.2ch.net/test/read.cgi/tech/1170150974/
0166デフォルトの名無しさん2007/01/31(水) 15:24:23
共有変数を用意したいのですがどうすればいいですか?
0167デフォルトの名無しさん2007/02/02(金) 19:26:04
>>166
つ ny
0168デフォルトの名無しさん2007/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
です
0169デフォルトの名無しさん2007/02/26(月) 22:15:01
MPI_Finalizeを呼んだら制御が返ってこなくなったんですが、
何か原因に心当たりのある方はおられませんか。

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

ちなみに[email protected]です。
0170デフォルトの名無しさん2007/02/27(火) 01:07:31
設定がうまくいってないんだろ?
01711692007/02/27(火) 03:48:13
NFSで共有していないファイルから問題設定を読んでいて、
PC毎にパラメタが変わってこけていたという罠。

吊ってきます
Λ||Λ
0172デフォルトの名無しさん2007/03/13(火) 00:51:59
並列計算に興味あるのですが、単に処理するデータを分割、各PCで計算、最後に統合するのでは
なく、PC毎に別のデータを別の処理方法で行っていて、あるPCの処理結果が別の処理中のPCの処
理に割り込んで処理方法を変えるなどということは出来るのでしょうか?
0173デフォルトの名無しさん2007/03/20(火) 23:06:11
自作のC++プログラムの並列化をしています。
MPI_Finalizeを呼ぶタイミングについて疑問があります。

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

main を抜けた後に呼んではいけないでんしょうか?
環境は、MPICH2、Win XP SP2、Visual Studio 2005 です。
0174デフォルトの名無しさん2007/05/06(日) 03:28:13
MPI_Gatherなどで、転送するデータタイプはMPI_DOUBLEなどで指定しますが、
データタイプがテンプレートに指定されたデータタイプによって変わる場合、
どのように設定したらよいのでしょうか?
0175デフォルトの名無しさん2007/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
{ ... };

0176デフォルトの名無しさん2007/05/19(土) 09:14:10
↑すみません。class Base の中の
static const ... の行を消し忘れました。
0177デフォルトの名無しさん2007/05/21(月) 07:56:54
openmpの場合、#ifdef _OPENMPでopenmpを使ってコンパイルしている
場合とそうでない場合に別々のコードを書くことができますが、
MPIの場合はどのようにしたらよいのでしょうか?
0178デフォルトの名無しさん2007/06/09(土) 16:58:36
このスレではPCクラスタのシステム障害(とくにハード)について経験ある方も
少なくないと思うので、お尋ねします。

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

ちなみに1年間はほぼ問題なく使えており、他の計算機でも実績があるので
プログラム側の問題ではないです。
0179デフォルトの名無しさん2007/06/22(金) 11:04:41
MPI_Finalizeを行わずに終了した場合、どのような問題が起きる可能性がありますか?
0180デフォルトの名無しさん2007/06/23(土) 23:33:50
MPI_Finalize のソース読んだらいいんじゃね??
0181デフォルトの名無しさん2007/06/24(日) 14:51:42
>>178
今頃気付いたが、ギザイーサワロス
巨大王墓間を高速インターコネクトで結んで世界の七不思議にでも入れたいノケ?
0182デフォルトの名無しさん2007/06/24(日) 15:17:25
デッドロックを発生させない定石のようなものはありますか?
0183デフォルトの名無しさん2007/06/26(火) 08:00:52
>>181
中川しょ(ry
0184デフォルトの名無しさん2007/06/27(水) 15:30:14
>>181
日本語でおk
0185デフォルトの名無しさん2007/06/27(水) 23:51:22
巨大王墓=ピラミッド
0186デフォルトの名無しさん2007/06/28(木) 02:15:45
わかんねーよハゲwww
0187デフォルトの名無しさん2007/06/28(木) 22:45:57
世界の七不思議=ギザのピラミッド他
0188・∀・)っ-○◎●2007/06/29(金) 02:42:04
ギザかわゆすwwwwwww
0189デフォルトの名無しさん2007/07/02(月) 16:57:33
現在boostのuBlasを使って逆行列を解いています。
MPIを使ってさらに大規模な行列を計算させたいのですが、お薦めのライブラリを教えてください
0190デフォルトの名無しさん2007/08/12(日) 20:42:39
どなたかPS3でmpich2やってるひといません?

fedora5でひととおりmpich2をインストール、設定後に実行するとこんなんで
て困ってます。

# mpirun -n 1 date
mpiexec_ps3slave1 (send_dict_msg 632):send_dict_msg: sock= errmsg=:(32, 'Broken pipe'):
mpdtb:
/usr/local/bin/mpdlib.py, 632, send_dict_msg
/usr/local/bin/mpirun, 250, mpiexec
/usr/local/bin/mpirun, 1399, ?

mpiexec_ps3slave1: mpd_uncaught_except_tb handling:
exceptions.KeyError: 'cmd'
/usr/local/bin/mpirun 255 mpiexec
elif msg['cmd'] != 'response_get_mpdrun_values':
/usr/local/bin/mpirun 1399 ?
mpiexec()

どなたか御力をおかしください。
01911902007/09/03(月) 22:06:14
自己解決しました。Fedoroa 6を入れなおして、mpich2を入れなおしたら
いけました。

他にps3でクラスタやってる人の例をネットなどでみていると、結構Fedora 5で
やってる人がいるから、OSの違いでうまくいったというよりも、初回のmpiの
インストール時の設定に問題があったのかもしれません。以上。
0192デフォルトの名無しさん2007/09/10(月) 01:30:38
MPIでJUnitみないなテストできんの?
知ってるひといたら教えてくれい
0193デフォルトの名無しさん2007/09/12(水) 04:50:40
>>192
こんなのあった
自分は使ったことないが

ttps://sourceforge.jp/projects/mpiunit/
0194デフォルトの名無しさん2007/09/23(日) 03:05:43
>>193
つかってみたぞ
いがいとべんりだった
0195デフォルトの名無しさん2007/09/24(月) 00:57:56
誰かまともなチュートリアル書いてくれよ
0196デフォルトの名無しさん2007/09/26(水) 16:47:33
>>195
チュートリアル書きたいが
どんな機能があるのがよくわからん
0197デフォルトの名無しさん2007/09/27(木) 00:30:55
>>195
虎の巻じゃだめかね
0198デフォルトの名無しさん2007/09/27(木) 01:59:38
>>197
虎の巻をたのむ
0199デフォルトの名無しさん2007/09/27(木) 09:50:27
>>198
ttp://accc.riken.jp/HPC/training/text.html
0200デフォルトの名無しさん2007/09/27(木) 15:07:25
>>199
すまねえ
193の虎の巻がほしかったんだ
0201デフォルトの名無しさん2007/09/30(日) 00:21:40
>>200
パッケージの中にあるじゃん
0202デフォルトの名無しさん2007/09/30(日) 12:28:39
>>201
あるけどわかりにくくない?
0203デフォルトの名無しさん2007/09/30(日) 21:15:53
>>200

http://sourceforge.jp/projects/mpiunit/wiki/Tutorial
0204デフォルトの名無しさん2007/09/30(日) 21:37:27
もっぺん書くけどさ、

ま と も な

チュートリアルが欲しいんだよ。
0205デフォルトの名無しさん2007/10/01(月) 03:36:48
>>204
作者に直で言うしかないな
0206デフォルトの名無しさん2007/10/01(月) 23:01:28
みんなここで勉強したのかえ?
0207デフォルトの名無しさん2007/10/04(木) 21:05:22
203のチュートリアルを直そうと思うんだけどここにはっていいよね?
どうせLGPLだし

204氏はどんなチュートリアルが欲しいんだい?
0208デフォルトの名無しさん2007/10/05(金) 12:19:32
boostにmpi入るからそれでいいじゃん
0209デフォルトの名無しさん2007/10/11(木) 00:03:40
だれか>>193使った人いる?
0210デフォルトの名無しさん2007/10/17(水) 09:58:07
>>209
使ってるよ
プログラミングの効率が上がった
0211デフォルトの名無しさん2007/10/20(土) 20:55:50
作者は岩手大学の学生か?
0212デフォルトの名無しさん2007/10/26(金) 21:09:07
AUTHORSにそう書いてあるね
0213デフォルトの名無しさん2007/11/02(金) 21:07:27
CentOS5.0にrpmで入ってたOpenMPIを使ってます。

$ rpm -qa |grep mpi
openmpi-devel-1.1.1-5.el5
openmpi-libs-1.1.1-5.el5
openmpi-libs-1.1.1-5.el5
openmpi-1.1.1-5.el5
openmpi-devel-1.1.1-5.el5

手元にX86_64のPCが2台とi386のPCがあるのですが、

異種アーキテクチャのバイナリの自動選択はどうやってするのでしょうか?

全部i386で揃えろって意見もあるかもしれませんが、64bit整数演算をする
ので64bitで動かしたいんですよね。

mpichは出来るみたいですね。

http://enrico.phys.cmu.edu/QCDcluster/mpi/mpirun_mpich.html

というかOpenMPIはman マニュアル無くて悲しい。
0214デフォルトの名無しさん2007/11/04(日) 15:00:58
Debian 4.0 etch AMD64のマシンを2台用意してMPICHで環境を整えようとしています。
2台ともデュアルコアなので、

/etc/mpich/machines.LINUX   に
cluster1:2
cluster2:2

と記述しています。
テストを行おうと
mpirun -np 4 cpi
をしてみたのですが、1分以上待ってもプロンプトが帰ってきません。しかし
mpirun -np 3 cpi
とするとcluster1に2スレッド、cluster2に1スレッド割り当てられ計算結果がすぐ返ってきます?

4コア使い切るためにはどうしたら良いでしょうか?
02152132007/11/07(水) 00:40:14
色々試したが諦めた。次はPVMを試そうと思う。
■ このスレッドは過去ログ倉庫に格納されています