15

OpenBLAS で Numpy をインストール/コンパイルする簡単な方法を探しましたが、簡単な答えが見つかりませんでした。私が見たすべてのドキュメントは、私のようなソフトウェアのコンパイルに慣れていない人にとって当然のことながら、あまりにも多くの知識を必要とします。Ubuntu には OpenBLAS に関連する 2 つのパッケージがあります:libopenblas-baselibopenblas-dev. それらがインストールされたら、Numpy を再度インストールするにはどうすればよいですか? ありがとう!

これらの OpenBLAS パッケージがインストールされると、Numpy は動作しなくなります: インポートできません: ImportError: /usr/lib/liblapack.so.3gf: undefined symbol: ATL_chemv. この問題は、Theano をUbuntuのWeb サイトの指示に従ってインストールするときにも発生します。

ここはすでに気づいていました。

4

3 に答える 3

13

実行sudo update-alternatives --allして設定liblapack.so.3gfします/usr/lib/lapack/liblapack.so.3gf

于 2012-09-03T16:12:00.517 に答える
11

(使用の)受け入れられた回答に追加するにはupdate-alternatives、これの理由は、OpenBlas が Lapack の Atlas バージョンと互換性がないためです。Blas と Lapack の各バージョン:

  1. デフォルトの Blas + デフォルトの Lapack => OK
  2. OpenBlas + デフォルト Lapack => OK
  3. Atlas-Blas + デフォルトの Lapack => OK
  4. Atlas-Blas + Atlas-Lapack => OK
  5. OpenBlas + Atlas-Lapack => エラー! (以下のケースはこちら)

これは、個人的な経験 (まったく同じ問題) と、この比較ブログでそのような組み合わせが言及されなかった理由の理解の両方からです。

ちなみに、必要なファイルは で見つけることができます。/etc/alternatives/通常、ファイル名はlib*. それぞれに対してsudo update-alternatives --config <filename>. たとえば、次のようにします。

  • sudo update-alternatives --config libblas.so
  • sudo update-alternatives --config libblas.so.3

Blas のバージョンを変更します。

于 2015-09-06T10:22:12.187 に答える
1

ソフトウェアをビルドおよびインストールするためのオープンソース フレームワークであるEasyBuild ( http://hpcugent.github.io/easybuild/ ) の使用を検討してください。

これにより、さまざまなコンパイラーやさまざまな BLAS ライブラリー (ATLAS、OpenBLAS、ACML、Intel MKL など) を使用して (科学的な) ソフトウェアを (非常に簡単に) ビルドおよびインストールできます。

EasyBuild をインストールすると (上級者向けのヒント: https://github.com/hpcugent/easybuild/wiki/Bootstrapping-EasyBuildで説明されているブートストラップ手順を使用してください)、次のような単一のコマンドを実行するだけです。

eb numpy-1.6.2-goolf-1.4.10-Python-2.7.3.eb -ldr

これは、最初に完全なコンパイラ ツールチェーン (goolf: GCC+OpenBLAS+OpenMPI+LAPACK+FFTW) をビルドしてインストールし、続いてそのツールチェーンで Python と numpy をビルドします。そして、あなたが昼食をとっている間、それはすべてです。;-)

免責事項: 私は EasyBuild 開発者の 1 人です。

于 2013-05-20T08:07:39.530 に答える