【问题标题】:Re-translating pypy for old CPU为旧 CPU 重新翻译 pypy
【发布时间】:2015-04-12 03:52:09
【问题描述】:

我在具有 384MB RAM 的 PIII 机器上运行 32 位 Windows XP SP3。

我已使用 pypy.org 安装页面中的链接下载并安装了 Microsoft Visual C++ 2008 SP1 Redistributable Package (x86)(又名 vcredist_x86.exe)。

我已经从 pypy.org 下载并解压了 pypy-2.5.0-win32.zip。我已将新 pypy 目录的位置添加到我的 PATH 变量中。

我可以打开一个 CMD 窗口并键入 pypy.exe,pypy 开始运行,然后抛出错误消息“不支持 SSE2 的旧 CPU,无法继续。您需要使用 '--jit-backend 重新翻译=x86-没有 sse2'"。如果我在资源管理器中单击 pypy.exe,也会发生同样的情况。

我认为我的 CPU 确实太旧了,但我从 pypy 文档中不明白如何使用“--jit-backend=x86-without sse2”重新翻译 pypy。

我想一种方法是购买并学习如何使用 Windows C 编译器。如果那是正确的,那么最容易使用的编译器是什么?我过去在 PC 上使用过 Fortran 编译器,所以我有一点经验。然而,对我来说,这将是一个一次性的练习,只是为了让 pypy 在我的 PC 上运行,这样我就可以使用其他人编写的一些 pypy 代码。从整套源代码完全重建 pypy 可能超出我的能力,或者我需要数周时间。

有没有什么地方可以为我的旧盒子找到预编译的“--jit-backend=x86-without sse2”版本?或者,我可以看到所有旧的 pypy 上传,谁能告诉我需要多远才能获得没有 JIT 的预编译版本?我随机选择了 pypy-1.9 并安装了它,但它产生了相同的错误消息。

【问题讨论】:

    标签: python windows windows-xp pypy


    【解决方案1】:

    将网页更新为:“如果您的 CPU 非常非常旧,它可能是没有 SSE2 的 x86-32。 我们可以在某个时候使用没有 SSE2 的 JIT 制作 PyPy ---问我们 如果您真的想了解更多信息,请在 IRC 上查看 --- 但请注意您的机器 可能是低规格的,因此在其上运行 CPython 会更好 首先是想法。”

    为了好玩,我正在制作一个没有 JIT 的 Windows 版本的 PyPy 2.5:它应该会在一段时间后以“pypy-c-nojit-...”开头的名称显示在 http://buildbot.pypy.org/nightly/release-2.5.x/。请注意,它会比 CPython 慢,几乎没有任何好处。只需使用 CPython。

    【讨论】:

    • 非常感谢。您的有趣构建在我的机器上完美运行,让我开始使用 pypy,而无需大量使用编译器(或 CPython)。现在我可以开始弄清楚我的代码在做什么,并根据我的问题进行调整。如果你曾经做过没有 SSE2 的 JIT,请告诉我。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-17
    • 2020-12-14
    • 2019-06-14
    • 2012-05-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多