2016-08-20 13 views
1

私はMPI_COMM_WORLDを使用するアプリケーションを持っています。私は、HPC Pack 2008 R2 MPIを使ってアプリケーションを構築しています。ローカルと大部分のPCですべて正常に動作します。私のアプリケーションは複数のバージョンのMPIと互換性があります

時折、別のPCにインストールすると、競合するバージョンのMPI(Intelなど)で問題が発生することがあります。これは、通常HPCバージョンをPATHに追加することで解決されます。

私は最近、私が回避できない問題を突きつけました。

私のMPIは最初のパスですが、リンクライブラリmkl_intel_thread.dllが見つかりませんでした。これは、アプリがインテルのバージョンを見ていることを私に伝えます。

where mpiexec mkl_thread not found

だから私の一般的な質問は以下のとおりです。

  1. は、他のすべてと互換性であるMPIのバージョンはありますか?
  2. または、 という方法でアプリケーションをコンパイルして、適切なMPIライブラリを確認する方法がありますか?
  3. アプリケーションをMPIに無関係にするためにコンパイルする方法はありますか?

事前

+0

インテルMPIの依存性ではないインテルMKL(Intel Math Kernel Library)を見つけることができません(むしろ、BLACSコンポーネントをどのようにリンクするかによって、逆のことです)。 –

答えて

0

のおかげでは、MPIの利点がMPI standardです。これは、あるバージョンのMPI標準に固執している限り、あなたのプログラムはMPI標準に準拠した実装と互換性があることを意味します。

欠落している数学カーネルライブラリは、MPIの非互換性とは関係ありません。

関連する問題