2014-12-07 94 views
0

我試圖從庫Lapack和Atlas的源代碼安裝python numpy。我意識到Atlas本身包含lapack庫。但是,如果我編譯它(僅限地圖集),它有0.5 MB。當Netlib Lapack部署的比liblapac.a的庫超過13 MB時。這使我以下的問題:關於numpy的/ SciPy的Numpy和Scipy以及它們的Lapack和Atlas依賴關係

問題:

  1. 我可以安裝numpy的/ SciPy的只有NETLIB的LAPACK,或僅與阿特拉斯LIB?
  2. 如果只安裝了Atlas lib(沒有netlib的Lapack) - 有任何缺點(性能,功能不可用,...)
  3. 有沒有任何性能評論numpy/scipy是如何是否安裝了Lapack/Atlas?
  4. Numpy或Scipy確實使用更多Atlas/Lapack?有什麼重大區別?

謝謝!

回答

1

ATLAS不是完整的LAPACK實現。它只提供了一些經過優化的例程。 This ATLAS page解釋瞭如何構建也使用ATLAS的完整LAPACK。

從頁:

ATLAS本身僅提供了包含LAPACK例程的相對少數。

The SciPy Homepage告訴你,你需要LAPACK的SciPy的,而不是numpy的:

建設之前,你還需要安裝與NumPy和SciPy的依賴

  • BLAS包和LAPACK庫(可選,但強烈推薦用於NumPy,爲SciPy所需):通常爲ATLAS + LAPACK或MKL或ACML

[...]

總之,如果你想要SciPy,你需要LAPACK。如果你想要更快的LAPACK,你也可以安裝ATLAS。如果你只想要numpy,LAPACK不是必需的,但被SciPy人認爲是一個好主意。