如何并行安装/编译 pip 要求(make -j 等效)

Row*_*ish 6 python parallel-processing pip

我有很多包要安装在我的 pip 要求中,我想并行处理它们。

我知道,例如,如果我想要n并行作业,make我必须编写make -j n;是否有针对 pip 要求的等效命令?

谢谢!

小智 6

有时 pip 使用 make 来构建依赖项。如果在它开始之前你设置MAKEFLAGS如下:

export MAKEFLAGS="-j$(nproc)"
pip install -r requirements.txt
Run Code Online (Sandbox Code Playgroud)

这可能有助于构建本机依赖项。

注意:nprocresovles 作为系统中 CPU 的数量。


Mak*_*sim -4

我认为获得更好速度的最佳方法是看看瓶颈在哪里。尝试分析使用 pip 命令时正在发生哪些进程。

可能大部分时间都花在从 PyPI 下载以及将库编译为本机(例如 PIL)上。您可以尝试创建自己的 PyPI 存储库并预编译需要编译的源代码。过去对此有很多讨论,但如果并行启动 pip 并没有真正的加速。

  • 好的,然后只需安装该软件包一次,然后转到 site_packages 并在需要时复制它。操作系统和架构必须匹配才能实现它,然后调用 pip install 以便它可以找到已经安装的。 (2认同)