0

icc と -mmic オプションを指定して GMP をコンパイルしましたが、MIC にインストールできません。どのようにインストールすればよいですか? icc でコンパイルしたデモ プログラムを作成しました。gmp.h が見つからないと表示されます。MIC に GMP ライブラリをインストールする方法と、gmp.h を配置する場所を教えてください。

4

2 に答える 2

0

Xeon Phi や ICC の専門知識はありませんが、Unix ライクな環境で実行している場合は、デフォルトの GCC ではなく ICC コンパイラを指す GMP ソースで通常の構成/作成手順を実行してみてください。生成されたgmp.hヘッダーとともに静的および/または共有ライブラリを構築し、アプリケーションとリンクできます。それに関するGMP ドキュメントを見たいと思うかもしれません。NVIDIA CUDA 用にコンパイルしようとしたときのアドバイスを次に示します。

  1. ./configure に CC 変数と CFLAGS 変数を指定して、目的のコンパイラと必要なオプションを指定します。
  2. ホストと Xeon Phi デバイスの間、特に 32 ビット アーキテクチャと 64 ビット アーキテクチャの間で ABI の非互換性がないことを確認してください。
  3. 「pure-C」ビルドを生成するオプションを追加することを検討してください--disable-assembly(私は Xeon Phi アセンブリに精通しておらず、x86 と互換性があるかどうか/どのように互換性があるか)
  4. make checkGMP をコンパイルした後、テストがパスしているかどうかを確認するために(おそらくパラメーターを使用して)実行することを忘れないでください-j。専門的な目的で使用する場合、これは非常に重要なステップです。

ライブラリは、make installコマンドによって OS にインストールされます。デフォルトでは、/usr/localディレクトリの下にインストールされます (--prefix別の場所に必要な場合は、オプションを追加できます)。具体的には、次のとおりです。

  • /usr/local/includegmp.h ヘッダー ファイルの場合
  • /usr/local/lib静的および/または共有 libgmp バイナリ用

GMP ソース (mini-gmp ディレクトリの下にあります) に含まれているmini-gmpパッケージを使用してアプリケーションをコンパイルすることもできます。mpz_*これはandルーチンのサブセットでありmpn_*、通常の GMP ほど洗練されておらず高速ではありません (また、深刻なテスト カバレッジはそれほど多くありません) が、小さなフットプリントでジョブを実行できます(ヘッダーと C ソース ファイルに含まれています)。そのようなオプションについては、必ず最新バージョンの GMP を入手してください (またはリポジトリから入手することもできます)。

于 2014-02-26T14:08:09.440 に答える