[表示 : 全て 最新50 1-99 101- 201- 301- 2chのread.cgiへ]
Update time : 12/14 09:11 / Filesize : 124 KB / Number-of Response : 392
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Message Passing Interface (MPI) 統合スレ



1 名前:デフォルトの名無しさん [04/11/07 18:25:56]
MPIによる並列プログラミングについて話し合う統合スレッドです。

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



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

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

160 名前:デフォルトの名無しさん mailto:sage [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
適当ですまん (;´Д`)/

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

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

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

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

165 名前:デフォルトの名無しさん [2007/01/30(火) 22:47:50 ]
Parallel Virtual Machine (PVM) 統合スレ
pc10.2ch.net/test/read.cgi/tech/1170150974/


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

167 名前:デフォルトの名無しさん mailto:sage [2007/02/02(金) 19:26:04 ]
>>166
つ ny



168 名前:デフォルトの名無しさん mailto:sage [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
です

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

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

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

170 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 01:07:31 ]
設定がうまくいってないんだろ?

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

吊ってきます
Λ||Λ

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

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

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

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


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


175 名前:デフォルトの名無しさん [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
{ ... };



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

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




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

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

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

179 名前:デフォルトの名無しさん [2007/06/22(金) 11:04:41 ]
MPI_Finalizeを行わずに終了した場合、どのような問題が起きる可能性がありますか?

180 名前:デフォルトの名無しさん mailto:sage [2007/06/23(土) 23:33:50 ]
MPI_Finalize のソース読んだらいいんじゃね??


181 名前:デフォルトの名無しさん mailto:sage [2007/06/24(日) 14:51:42 ]
>>178
今頃気付いたが、ギザイーサワロス
巨大王墓間を高速インターコネクトで結んで世界の七不思議にでも入れたいノケ?

182 名前:デフォルトの名無しさん mailto:sage [2007/06/24(日) 15:17:25 ]
デッドロックを発生させない定石のようなものはありますか?

183 名前:デフォルトの名無しさん mailto:sage [2007/06/26(火) 08:00:52 ]
>>181
中川しょ(ry

184 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 15:30:14 ]
>>181
日本語でおk

185 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 23:51:22 ]
巨大王墓=ピラミッド

186 名前:デフォルトの名無しさん mailto:sage [2007/06/28(木) 02:15:45 ]
わかんねーよハゲwww

187 名前:デフォルトの名無しさん mailto:sage [2007/06/28(木) 22:45:57 ]
世界の七不思議=ギザのピラミッド他



188 名前:・∀・)っ-○◎● mailto:sage [2007/06/29(金) 02:42:04 ]
ギザかわゆすwwwwwww

189 名前:デフォルトの名無しさん [2007/07/02(月) 16:57:33 ]
現在boostのuBlasを使って逆行列を解いています。
MPIを使ってさらに大規模な行列を計算させたいのですが、お薦めのライブラリを教えてください

190 名前:デフォルトの名無しさん mailto:sage [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()

どなたか御力をおかしください。

191 名前:190 mailto:sage [2007/09/03(月) 22:06:14 ]
自己解決しました。Fedoroa 6を入れなおして、mpich2を入れなおしたら
いけました。

他にps3でクラスタやってる人の例をネットなどでみていると、結構Fedora 5で
やってる人がいるから、OSの違いでうまくいったというよりも、初回のmpiの
インストール時の設定に問題があったのかもしれません。以上。

192 名前:デフォルトの名無しさん [2007/09/10(月) 01:30:38 ]
MPIでJUnitみないなテストできんの?
知ってるひといたら教えてくれい

193 名前:デフォルトの名無しさん [2007/09/12(水) 04:50:40 ]
>>192
こんなのあった
自分は使ったことないが

ttps://sourceforge.jp/projects/mpiunit/

194 名前:デフォルトの名無しさん [2007/09/23(日) 03:05:43 ]
>>193
つかってみたぞ
いがいとべんりだった


195 名前:デフォルトの名無しさん mailto:sage [2007/09/24(月) 00:57:56 ]
誰かまともなチュートリアル書いてくれよ

196 名前:デフォルトの名無しさん mailto:sage [2007/09/26(水) 16:47:33 ]
>>195
チュートリアル書きたいが
どんな機能があるのがよくわからん

197 名前:デフォルトの名無しさん mailto:sage [2007/09/27(木) 00:30:55 ]
>>195
虎の巻じゃだめかね



198 名前:デフォルトの名無しさん mailto:sage [2007/09/27(木) 01:59:38 ]
>>197
虎の巻をたのむ


199 名前:デフォルトの名無しさん mailto:sage [2007/09/27(木) 09:50:27 ]
>>198
ttp://accc.riken.jp/HPC/training/text.html

200 名前:デフォルトの名無しさん mailto:sage [2007/09/27(木) 15:07:25 ]
>>199
すまねえ
193の虎の巻がほしかったんだ


201 名前:デフォルトの名無しさん mailto:sage [2007/09/30(日) 00:21:40 ]
>>200
パッケージの中にあるじゃん


202 名前:デフォルトの名無しさん mailto:sage [2007/09/30(日) 12:28:39 ]
>>201
あるけどわかりにくくない?


203 名前:デフォルトの名無しさん [2007/09/30(日) 21:15:53 ]
>>200

sourceforge.jp/projects/mpiunit/wiki/Tutorial

204 名前:デフォルトの名無しさん mailto:sage [2007/09/30(日) 21:37:27 ]
もっぺん書くけどさ、

ま と も な

チュートリアルが欲しいんだよ。


205 名前:デフォルトの名無しさん [2007/10/01(月) 03:36:48 ]
>>204
作者に直で言うしかないな


206 名前:デフォルトの名無しさん mailto:sage [2007/10/01(月) 23:01:28 ]
みんなここで勉強したのかえ?

207 名前:デフォルトの名無しさん [2007/10/04(木) 21:05:22 ]
203のチュートリアルを直そうと思うんだけどここにはっていいよね?
どうせLGPLだし

204氏はどんなチュートリアルが欲しいんだい?




208 名前:デフォルトの名無しさん mailto:sage [2007/10/05(金) 12:19:32 ]
boostにmpi入るからそれでいいじゃん

209 名前:デフォルトの名無しさん [2007/10/11(木) 00:03:40 ]
だれか>>193使った人いる?


210 名前:デフォルトの名無しさん [2007/10/17(水) 09:58:07 ]
>>209
使ってるよ
プログラミングの効率が上がった


211 名前:デフォルトの名無しさん mailto:sage [2007/10/20(土) 20:55:50 ]
作者は岩手大学の学生か?


212 名前:デフォルトの名無しさん [2007/10/26(金) 21:09:07 ]
AUTHORSにそう書いてあるね


213 名前:デフォルトの名無しさん [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は出来るみたいですね。

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

というかOpenMPIはman マニュアル無くて悲しい。

214 名前:デフォルトの名無しさん mailto:sage [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コア使い切るためにはどうしたら良いでしょうか?


215 名前:213 mailto:sage [2007/11/07(水) 00:40:14 ]
色々試したが諦めた。次はPVMを試そうと思う。

216 名前:デフォルトの名無しさん mailto:sage [2007/11/07(水) 11:28:47 ]
SuSE Linux9.3
mpich-1.2.7p1
gcc, pgi 7.1
を使用していますが、emacsでmpiデバッグできませんかね。
gdbとpgdbgを使ってデバッグできますが、
pgdbgは使いにくいし、gdb単体も使いにくいので、できれば
emacsからgdbを起動したいなと。


217 名前:デフォルトの名無しさん mailto:sage [2007/11/07(水) 13:26:16 ]
PVMってまだ使われてるの?



218 名前:213 mailto:sage [2007/11/07(水) 14:06:12 ]
>>217
しらんけど、CentOSに標準でパッケージが入ってたよ。


219 名前:デフォルトの名無しさん mailto:sage [2007/11/07(水) 15:42:53 ]
>>213
ローカルマシンに同じ名前のディレクトリを作る。
そこに機種毎のバイナリを置く。
これで桶。

220 名前:デフォルトの名無しさん mailto:sage [2007/11/07(水) 15:44:35 ]
>>219
補足。
機種毎のバイナリは同じ名前で作っておく。

mpirunはデフォでは同じ名前のユーザーの同じ名前のディレクトリにある
同じ名前のコマンドを実行するだけなので。

221 名前:デフォルトの名無しさん mailto:sage [2007/11/07(水) 15:59:06 ]
>>218
標準で入ってるんだ
昔はPVMが主流だったそうだけど、今はほとんどがMPIだよね

222 名前:213 mailto:sage [2007/11/08(木) 00:36:34 ]
>>219
ありがとう。しかしPVMのマニュアルをせっかく読み始めたので
こっちで行ってみます。MPIは出鼻をくじかれたので気に入らない。

223 名前:214 mailto:sage [2007/11/10(土) 21:37:30 ]
/etc/mpich/machines.LINUX   の
localhost:2
cluster2:2

となっていたのを

cluster1:2
cluster2:2

にしたらいけました。3スレッドはできるので machines.LINUXは悪くないと決め付けてました。



224 名前:デフォルトの名無しさん [2007/12/12(水) 06:13:16 ]
MPIの並列計算で困っています。アドバイスお願いいたします。

・4CPU/共有メモリの計算機でMPIによる並列計算を行っています。
しかし
・この計算機の場合、計算実時間が1CPUで計算している場合よりも
大幅に増えてしまいます。
(大学の大型計算機等で計算した場合、計算実時間は4CPUの場合、
1CPUの1/3.4ぐらいに短縮されますのでプログラム的には問題ないと考えています。)
・top コマンドで計算状況を監視していると、使用CPUが変動し、しばしば
同じCPUを2つのスレッドで競合しているようです。
・使用CPUの数をいろいろと変えてみましたが必ず競合してしまうようです。
・従って時間計測コマンドでCPU時間を測定すると、
下記のようにCPU時間は短縮されているが、実時間は増えてしまうという結果になるようです。
real time 1000.0
user time 250.0
・計算機を納品した会社(H○C systems)に質問したところ、
設定は問題はない。プログラムの問題、あるいは通信時間がかかってしまうので
実時間が増える、といういい加減な返答しかきません。

似たような症状を経験したことのある方、対処法をご存知でしたら
教えてもらえないでしょうか。

225 名前:デフォルトの名無しさん mailto:sage [2007/12/13(木) 07:08:53 ]
sched_setaffinity(2) を使うと幸せになれるかも。

226 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 14:48:26 ]
>>224
MPICHならconfigure時に --mem=shared を付けて構築すべし
通信が共有メモリを介したものになる(異ノード間は当然sshやrsh経由)。
実行時に ps -x してsshやrshでプロセスが起動してたら、わざわざ同一計算機内でTCP/IP通信しちゃってるので損。
OSやコンパイラに付属のMPICHはsharedで構築されていない例が多いので自分で構築してみよう。


227 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 14:59:25 ]
4CPU/共有メモリって、いわゆる普通のマルチプロセッサのことだよね
今時シングルコアはないから、2コアの2CPUなんだろう



228 名前:デフォルトの名無しさん [2007/12/28(金) 20:38:39 ]
みなさまご助言ありがとうございます。
>>225
検索すると状況としてはこれが当てはまる感じなのですが、
私には使い方がよく分かりません。
詳しいサイト等ありましたら教えてもらえないでしょうか。

>>226
確かにps x コマンドで確認すると(ノード内の場合でも)
rsh が動いていました。
このコンピュータはMPIのインストール及び設定済みのものを
購入したのですが、業者がいいかげんということなのでしょうか?
複数ノード構成なのですが、この場合はどうなのでしょうか
業者の説明では例えば、machinefile に
node00:2 とすればSMPとなるとのことでした。
node00 node00 とすれば通信が発生するとのことでした。

>>227
シングルコアのItanium2:4CPUx4ノードの構成です。
(年度でわけて増設して購入したのでちょっと古いCPUになっています)
納品されたのは1年以上前なのですが、不具合ばかりです。

229 名前:225 mailto:sage [2007/12/29(土) 00:39:48 ]
こんな感じ。

#include <mpi.h>
#include <sched.h>
#include <stdio.h>

int
main(int argc, char *argv[])
{
  int rank;
  cpu_set_t mask;
  double t;

  MPI_Init(&argc, &argv);
  MPI_Comm_rank(MPI_COMM_WORLD, &rank);
  __CPU_ZERO(&mask);
  __CPU_SET(rank, &mask);
  if (sched_setaffinity(0, sizeof(mask), &mask) == -1) {
    perror("Failed to set CPU affinity");
    goto error;
  }
  t = MPI_Wtime();
  while (MPI_Wtime() - t < 10 + rank * 5)
    ;
  MPI_Finalize();
  return 0;

 error:
  MPI_Finalize();
  return -1;
}

230 名前:225 mailto:sage [2007/12/29(土) 00:46:50 ]
>>229のプログラムは各プロセスが (10 + rank * 5) 秒後に終了する。
sar コマンドを使って、例えば

> sar -P ALL 1 1000

とやると各プロセスがランクと同じ番号の CPU で走り続けてランク順に終了していく様子が観察できる。

参考にしたページ:d.hatena.ne.jp/naoya/20070824/1187945715

231 名前:デフォルトの名無しさん mailto:sage [2008/01/08(火) 18:31:33 ]
>>226
の書き込み見て、--with-comm=shared というオプションをつけてMPICHを
コンパイルしてみたんだけど、逆に遅くなりました。共有メモリのほうが早く
なると思うんですけど、どうしてだろう?
CPUは Core 2 Quad 2.4GHz を使っています。

232 名前:デフォルトの名無しさん [2008/01/09(水) 01:43:00 ]
GridMPIについて、質問です。

GridMPIのMPI関数は、通信先によって、リモートノードなら、IMPI、
自ノードなら自ノード内のMPI(ベンダMPIなど)を呼び出して通信
するはずですが、GridMPIが提供しているMPI関数と(自ノードの)
ベンダMPIの関数のシンボルが重複しないのはなぜでしょう?

(最初は、GridMPIから発行するベンダMPIの関数は、MPI関数では
なく、PMPI関数と思っていましたが、これは違いますよね・・・)


233 名前:デフォルトの名無しさん [2008/01/10(木) 00:07:05 ]
MPICH1.2.5について質問です。
MPICHのブロードキャストはTCPを用いて行われているようなのですが、
UDPによるブロードキャストを使用することはできるのでしょうか?
ご存知の方がいらっしゃれば、よろしくお願いします。

234 名前:デフォルトの名無しさん [2008/01/11(金) 10:27:42 ]
普段はPVMでプログラミングをしているのですが、MPIでは

1.スレーブ(MPIでもこういう表現するんですかね)のマシンに
 計算領域を割り当てて計算させる

2.マスタに計算結果を返す

1と2を繰り返す

という流れはどういう風にソース上で実現させているのでしょうか。


235 名前:デフォルトの名無しさん mailto:sage [2008/01/11(金) 20:48:46 ]
>>234
スレーブとか言いません。
全く同じプログラムが複数走ります。
主従はなく、皆平等です。

MPI_Comm_rank関数を呼び出すと自分のノード番号がわかるので、
その番号に応じた振舞いをするようにプログラムを書きます。
たとえば、0から100までの足し算を2台の計算機でするときに、
ノード番号0なら0から49まで、ノード番号1なら50から100まで計算するようにしておきます。
通信は送信したいノード番号に向けて送信し、受信したいノード番号を指定して受信します。


236 名前:デフォルトの名無しさん mailto:sage [2008/01/12(土) 20:56:17 ]
WindowsCCSでHPLのベンチ取りたいんだけど参考になるwebとかありませんか?

237 名前:デフォルトの名無しさん [2008/01/13(日) 11:21:47 ]
>>235
そうやるんですか

PVMで同じようにする方法がさっぱりわからんもんで
参考になるかな、とは考えたのですが・・・



238 名前:デフォルトの名無しさん mailto:sage [2008/01/16(水) 23:13:34 ]
PVMってまだ使われてるのか?

239 名前:デフォルトの名無しさん [2008/02/07(木) 17:31:34 ]
おーい、このスレ生きてますか?

質問です。

class base {
...
};

class derived1: base{
...
};

class derived2: base{
...
};

があって、
vector<base*> v;
にノード0で
v.push_back(new derived1());
v.push_back(new derived2());
...
などとして配列を作ります。
で、作った物を他のノードに配信したいのですが、どうやれば良いでしょうか?
newで生成したderived1などのオブジェクトも一緒に配信したいわけで、単純にvのバイト列を送れば良いというわけには行かないわけで。
実際にはderived1等にもnewしたオブジェクトのポインタが存在して、それも他のノードで再現したいわけで...

240 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 18:19:40 ]
死んでます

241 名前:239 mailto:sage [2008/02/07(木) 20:05:46 ]
死んでるのかよ!

って、まあ置いといて、STLのstringなんかもオブジェクトのバイナリ丸コピじゃだめなんだよな。
ヒープからバッファ取ってるから。
となると、シリアライズして送信、受信側で再構築なんだろうけど、正直面倒臭いな。


242 名前:デフォルトの名無しさん mailto:sage [2008/03/01(土) 05:39:37 ]
MPI_File_xxでテキストファイルは扱えないのでしょうか?

243 名前:デフォルトの名無しさん mailto:sage [2008/03/06(木) 23:33:27 ]
学科の演習用端末更新終わった〜

Linux / Cele 420 / MEM 2GB / 26台 /hdd less

という構成なんだが、手軽に遊ばせるMPIのサンプルないかな?

ちなみに、午後6時に強制shutdownの設定になってるので、
長くても8時間程度のジョブの奴を頼む。

244 名前:デフォルトの名無しさん mailto:sage [2008/03/18(火) 08:12:50 ]
MPIプログラムによってネットワークがどのくらい使用されているかは、どのようにしてわかりますか?
環境はFedora8+Intel C++ 10です。

245 名前:デフォルトの名無しさん mailto:sage [2008/03/29(土) 13:32:00 ]
Windows用のものはありませんか?

246 名前:デフォルトの名無しさん mailto:sage [2008/04/05(土) 15:00:58 ]
MPICHにWindows版があるyp!

247 名前:デフォルトの名無しさん [2008/04/17(木) 17:12:34 ]
プログラムをコンパイルし実行するとsignal 6というエラーが出るのですが、これはどのようなエラーなのでしょうか?



248 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 18:43:41 ]
どっかでabort()してるんじゃないの

249 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 21:06:07 ]
MPIにおけるシグナルの使い方は実装依存なのじゃ。
同じエラーが出るミニプログラムを作ってうp汁

250 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 00:04:00 ]
NPACI Rocksつこうてる人おる?
どこのスレいけばいいか解らんくて
迷子してる

251 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 23:38:11 ]
計算の進行状況をファイルに書いてたのだが、
ファイルがバッファリングされる関係で
リアルタイムで更新されないので、fflushを
つっこんだら、計算時間が倍になったぞ。

こういうのは難しいなぁ。


252 名前:デフォルトの名無しさん mailto:sage [2008/05/22(木) 06:37:45 ]
>>251
NFSとかSambaでリモートのファイルシステムに書いてない?
ローカルの /tmp あたりに書くようにすると速くなるかも。

253 名前:デフォルトの名無しさん mailto:sage [2008/05/22(木) 09:17:59 ]
というか、頻繁に確認しない限りそんな遅くならないんじゃないの?

254 名前:251 mailto:sage [2008/05/23(金) 00:45:22 ]
>>252
リモートファイルシステムです。
多分それで速くなると思いますが/tmpとか勝手に
使ったら怒られそう。大学共同利用のシステムなんで。

>>253
かなり頻繁に更新してますた。数秒に1回ぐらい。

進行状況を書いてただけなので、flush頻度を1/100
にしたら速度がだいたい元に戻りました。

255 名前:デフォルトの名無しさん [2008/05/23(金) 01:30:25 ]
>>254
普通の大学の計算機センターならローカルディスクぐらい用意してるよ。
聞いてみな

256 名前:251 mailto:sage [2008/05/24(土) 18:29:49 ]
計算の進行状況をlogに書くってのも一歩間違うと大変な事になるな。

計算で64bit Intetgerを使って、桁あふれ(2^64)が起きたら
「SKIPしますた」とlogファイルに書いて次ぎのデータ処理に入る
ようにしてたんだ。

今まで深さ4の処理をしてたんだが桁あふれが起きてなかった。

次に深さ5の処理に入ったんだ。とたんに桁あふれが増えて
「SKIPしますた。」でdisk使用制限が超えそうになっちまった。

テラヤバスで、20時間実行したjobを強制停止…

>>255
いや、他大学システムなんで、あまりくだらない質問したく
なくて。利用料金も私が出したんじゃなくて、教授のだし。

257 名前:デフォルトの名無しさん mailto:sage [2008/05/26(月) 19:24:36 ]
MPICHのMPI_Finalizeって常時ポーリングしてんのかな?
処理が終ってFinalize待ちのプロセッサの負荷が100%になってやがる。
割り込み使ってくだちゃい。



258 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 21:52:46 ]
負荷100%といえば、

rank=0のタスクをjobのマネージメントだけにつかって
rank=1以降を計算に使うプログラムを書いた。

rank=0とrank=1以降でも大してCPU使用率がかわらん
かった。rank=0のタスクはMPI_RECVで待機してただけ
なんだがな。

259 名前:デフォルトの名無しさん mailto:sage [2008/06/20(金) 22:58:08 ]
MPIで複数のCPUを使って計算させたときに、計算の速さ(結果)を秒数などで表示する
何か良いプログラムは無いでしょうか?

姫野ベンチやHPLだと、結果がFLOPSでしかでないので分かりにくいと言われ
体感的(秒数なもの)にわかるものにしてほしいと(´・ω・`)

思いつく簡単なベンチマークを例であげると、例えばスーパーπの104万桁を2つのCPUで
計算した場合は○○秒かかったけど、4つだと○秒だったよ!という感じです。(ベンチマーク
じゃなくてもいいです。)

よろしくお願いします。






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<124KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef