【问题标题】:Installed python 3.5.2 under win 10 64bits, cloned numpy and scipy, how to build them?win 10 64bits下安装python 3.5.2,克隆numpy和scipy,如何构建?
【发布时间】:2017-03-26 13:49:12
【问题描述】:

我已经通过官方安装程序找到了here 安装了 python 3.5.2,并且我克隆了 numpy 和 scipy(参见 here)。我安装了 Intel parallel studio 2017,所以我有 Intel 的 blas 和 lapack 版本(它们在数学内核库 (MKL) 中),并且我知道构建 numpy 和 scipy 需要这些(我错过了其他需要的东西吗? ) 我想从源代码构建 numpy 和 scipy,而不使用 anaconda 或 wheel 或其他任何东西。我通常想诉诸诸如

之类的东西

Installing SciPy with pip

(即使我遇到了与那里描述的相同的 pip 问题)并且我想自己构建库,因为我希望为 my 系统优化二进制文件和库。 (我将不胜感激。)

我该怎么办?

备注。 我在 win10 64 位下,有 Visual Studio 2013 和 2015 以及英特尔并行工作室 2017,最后一个英特尔 MKL 版本。我也有 python 2.7.12,现在我也对能够使用 python 2.7.12 构建 numpy 和 scipy 感到满意。 (我可能错了,但我认为使用 python 和 intel MKL 的 blas 和 lapack 构建 numpy 和 scipy 的正确程序很大程度上取决于使用 python 2.7.12 或 3.5.2 的事实。)

【问题讨论】:

  • 那么为什么没有 anaconda 和为什么没有 pip?经典的非 pip 方法是调用 setup.py。但这在 windows 上可能会很痛苦(numpy 比 scipy 痛苦小)。
  • 我发现了这个:software.intel.com/en-us/articles/… 我认为它至少可以解决我的 numpy 问题
  • 英特尔免费分发 Python 真是个不错的选择
  • 为什么没有 anaconda 和为什么没有 pip ?因为即使在 Windows 上,我也会尽可能地坚持我在 *nix 上所做的事情:我可以自己构建一切。

标签: python numpy scipy intel-mkl


【解决方案1】:

对于 Windows,我更喜欢从 Christoph Gohlke 的 LFD 页面下载轮子 (.whl) 文件。他使用 MKL 数学库进行构建,并在发布时跟踪更新(并跟踪重要软件包的预发布版本)。我可以自己构建这些,但对我来说,改用 Christoph 的伟大作品更有意义。

【讨论】:

  • 虽然我也更喜欢使用预制材料的方式(如果它是高质量的;我不得不承认我更喜欢 anaconda),但这并不能回答问题,因为他明确表示他想从源代码编译。我问了为什么,但没有反应。
  • 这很公平。我写这个作为答案是因为我认为指向 Christoph 的工作的指针对于那些试图让 MKL numpy 和 scipy 工作的人更有用,这些人没有准备好构建它,但不知道任何替代方案。轮子让事情变得更容易 - 我有一个用于 Windows 的 LFD 轮子的本地缓存,但我的 Mac 上有一个完整的 Jupyter/Numpy/Pandas 堆栈,仅使用 pip(MacOS .whl 文件绑定到 Apple 快速数学库也)。
  • 这些二进制文件非常适合您。我切换到 anaconda 很长时间了,因为它更像是二进制文件。它还很好地添加了用于环境封装的工具和一个不错的类似 pip 的安装程序。当然,这些构建是基于英特尔的 MKL(可能不是 Mac 的,但我不确定)。
  • 全部正确。当我开始使用 Numpy 时,Anaconda 没有在 Windows 上使用 MKL,但现在他们使用了(我认为 Mac 也是如此)。我们有多种不错的选择。干杯!
  • 虽然您提出的“非解决方案”(并且您本可以提出作为类似问题的答案而不强调“没有蟒蛇没有点子”)确实具有“连贯”的优势,但是对于您的系统(操作系统等)肯定是非优化的,我什至更喜欢在 Windows 上尽可能地坚持我在 *nix 上所做的事情:我可以自己构建一切,以便我可以拥有尽可能多的二进制文件/为我的系统优化的库。
猜你喜欢
  • 2014-10-24
  • 2017-05-24
  • 2023-03-10
  • 1970-01-01
  • 2021-05-24
  • 2021-11-14
  • 2014-12-12
  • 2016-05-05
  • 1970-01-01
相关资源
最近更新 更多