問題タブ [mpich]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
process - ヒドラ(mpich)に基づく独自のプロセスマネージャー
ヒドラ (mpich) のソースに基づいて、独自のプロセス マネージャーを作成する難易度をどのように評価しますか? つまり、スケール 1 から 100 の場合は? プロセスのコンピュータへの割り当てに対応する部分を変更します。
c - getdomainname() が MPI で不正なアドレスを返す (PETSc ライブラリのテスト)
ラップトップ (MacBook Pro 10.5.8、MPICH2-1.1) に PETSc-3.2 をインストールしようとしていますが、テストの実行時に問題が発生しています。システム コールでエラーが発生しgetdomainname()
、不正なアドレスが返されます。
getdomainname()
調査するために、 MPI を使用した場合と使用しない場合の機能を確認するために、次のテスト コードを作成しました。
シングル プロセッサ:
平行:
シングル プロセッサ コードは問題なく動作し、並列コードはプロセッサの正しい名前を取得しますが、 でgetdomainname()
実行している場合でもへの呼び出しで不正なアドレスを返しますmpirun -np 1
。
誰もこのような問題に遭遇したことがありますか? mpirun
MPI によって生成された各プロセスにドメイン名が設定されるようにするために必要な構成はありますか? 前もって感謝します!
アップデート:
PETSc でこの問題が発生した場合は、オプションを使用してコンパイルして--with-debugging=0
ください。一部の PETSc デバッグ メッセージなどでは、getdomainname()
ではなくへの呼び出しを使用しているようですMPI_Get_processor_name()
。デバッグなしでコンパイルすると、ライブラリ内のこのブランチが無効になります。
runtime - MPI ランタイム エラー: pmi コンテキストで cmd ヘッダーを読み取れません。エラー = -1
mpich2 に問題があります。MPI を使用して C++ でプログラムを作成しました。プログラムは正常にコンパイルされましたが、プログラムを実行しようとすると、
mpich を再インストールしようとしましたが、問題は解決しませんでした。
誰かが問題を解決する方法を知っていますか? ありがとう!
mpi - MPI、MPICH、および OPENMPI とは正確には何ですか? このコンテキストでの「実装」とはどういう意味ですか?
私の質問は、この分野に長い間携わってきた人にとってはばかげているように思えるかもしれませんが、私のために詳しく説明してくださったことに感謝します。
MPICH は MPI の「実装」であると彼らが言うとき、それはどういう意味ですか?
次のアナロジーは正しいですか?: MPI を FORTRAN コンパイラの標準セットと考えると、MPICH と OPENMPI は、Intel.Fortran、Compaq.Fortran、GNU.Fortran、およびすぐ。
c++ - MPIプログラムからMySQLにアクセスする方法(MPICH2を使用)?
MPIプログラム(MPICH2を使用)からアクセスする巨大なデータベース(DBMS = MySQL)があります。このプログラムでは、SQLクエリを実行する時間について知りたいだけです。それは私の他の並列プログラムへの参照です。
コードをVisualStudioC ++から実行すると、正常に実行されます(出力が得られます)。ただし、useを実行するmpiexec
と、出力もエラーメッセージも表示されません。それ以外の場合、単純なプログラム(mysqlコードなし、mpiexecを使用)を試してみると、正常に実行されます(出力があります)。mysqlライブラリとmpiライブラリを一緒に使用するべきではありませんか?
このようなコード:
前もって感謝します
mpi - mpiexec を別のノードに接続できないのはなぜですか?
Windows XP 上で動作する MPI (MPICH2) 経由で分散コンピューティング クラスターをセットアップしようとしています。次の行に沿って、単一のコマンドを実行しようとしています
考えられる原因は何ですか? ping が機能するため、ネットワークに問題がないことはわかっています。
mpiexec.exe と smtpd.exe は、どちらも Windows ファイアウォールの例外としてリストされています。
この問題の考えられる原因は何ですか? 私のGoogle-fuは私を失敗させました!(認証と関係があるのでしょうか? -logon を使用してみましたが、何も変わりません。認証の問題である可能性がある場合、自分のユーザー名/パスワードを見つけるにはどうすればよいですか (または、コンピューターのユーザー名/パスワード)?)
私はMPIの仕組みに不慣れなため、無知をお許しください。
fortran - MPICH2 で MPI_Allreduce が失敗しました
私は最近MPIで働いています。私はまだMPIに非常に慣れていません。しかし最近、MPICH2 を使用しているときに問題が見つかりました。これは、Hello world プログラムを変更した私の小さな Fortran 90 プログラムです。私はそれのcバージョンをテストしていませんが、それらは非常に似ているはずです(関数名とエラーパラメータが異なります)。
私は Windows 7 64 ビット、MinGW (gcc バージョン 4.6.2、および 32 ビット コンパイラ) で作業しており、MPICH2 1.4.1-p1 32 ビット バージョンを使用しています。簡単なコードをコンパイルするために使用したコマンドは次のとおりです。
そして、ここに簡単なコードがあります:
コンパイルできますが、実行時に失敗しました (無効なメモリ アクセスでしょうか?)。その行を削除すると正常に動作するため、MPI_Allreduce に問題があるはずです。また、マトリックスを小さくしても機能します。同じバージョンのMPIを備えたubuntuマシンでも試しました。Linux では問題ありません。
gdb(MinGWに付属)を使用してチェックする場合(gdb hello.exe、次にバックトレース)。私は意味のないものを手に入れました(または自分のためのようです):
これは、Windows 版の MPI ライブラリに何か問題があるということですか? それを機能させるための解決策は何ですか?
ありがとう。
ubuntu-12.04 - UbuntuでBoost.MPIでMPICHを使用する
Ubuntu12.04でboost.mpiを使おうとしていました。apt-getはopenmpiをインストールしますが、私が実行している他のいくつかのソフトウェア(トルクを含む)はmpich2 / mpichを期待し、
「mpdstartup:コマンドが見つかりません」
私は確かに、openmpiを使用するようにソフトウェアを変更したり、ソフトウェアのアップグレード時に移行の問題を心配したりしたくありません。
私の質問は、Ubuntu(12.04 LTS)にboost.mpi + mpich2をインストールするユーザーフレンドリーな方法はありますか?(例:非公式リポジトリ)。最悪の場合、ソースからブーストをビルドする必要がある場合、新しいブーストバージョンにアップグレードするときにブーストインストールをアンインストールするユーザーフレンドリーな方法はありますか?apt-getがファイルとよく知られた場所へのリンクをインストールし、要求されたときに完全に削除するという事実が気に入りました。
ところで、私は最初にmpich2をインストールしてからlibboost-mpi-devをインストールしようとしましたが、動作するmpi実装がある場合でも、apt-getはopenmpiをインストールします。これはやや制約があるようです。
ありがとう、
r - macports からの MPICH にシンボルがありません
Rmpi を使用してプログラムを作成しようとしていますが、残念ながら必要なシンボルが定義されておらず、otool と nm で追跡するとlibmpich.3.3.dylib
. 残念ながら、シンボルMPI_Comm_dup
, はこの動的ライブラリでは定義されていません。
ただし、私は OSX 動的ライブラリの専門家ではなく、私のアプローチと結論が正しいかどうか疑問に思っています。さらに、この問題を解決するための提案をお待ちしています。
ありがとう、
fortran - 1 台の PC での MPI Fortran コード エラー
最近、単一のマシン (Ubuntu 12.04 - 64 ビット コア i7 2670 QM) で mpi コードをコンパイルして実行しようとしていました。次の構成を使用して mpich2 バージョン 1.2 をインストールしました。
インストールは問題なく、mpd はうまく動作しました。サンプルで mpd をテストしましたが、すべてが完璧です。
mpich2 をコンパイルしたときに mpif90 が作成されなかった理由がわからないため、mpif77 を使用してコードをコンパイルします。しかし、mpif77 を使用しても、エラーなしでコードをコンパイルできました。
コードをコンパイルするために使用しているフラグは次のとおりです。
コンパイラの場合:
MPI リンカーの場合:
問題は、自分のマシンでコードを実行しようとしたときです。
まず、次のように mpd を呼び出します。
次に、コードを次のように実行します。
私は次のように多くのバリエーションを試しました:
そして、すべて同じエラーになります。
自宅で作業するには、このコードを自分のパソコンで実行する必要があるため、この問題を解決するためにほぼ 2 週間を費やしました。私を助けることができるすべてに感謝します!
MPI ライブラリを初期化する方法は次のとおりです。