如何并行安装/编译pip依赖(相当于make -j)
我有很多需要安装的包在我的pip需求里,我想要同时处理它们。
我知道,比如说,如果我想要从make
中启动n
个并行任务,我需要写make -j n
; 那么pip有没有类似的命令呢?
谢谢!
2 个回答
-4
我觉得提高速度的最好办法就是找出瓶颈在哪里。试着分析一下你在使用pip命令时,哪些过程在运行。
通常,下载PyPI上的内容和将库编译成本地格式(比如PIL)会花费最多时间。你可以尝试自己建立一个PyPI仓库,并提前编译好需要的源代码。过去大家讨论过很多这个话题,但其实如果同时启动多个pip,速度并不会有明显提升。
20
有时候,pip在安装依赖的时候会用到make这个工具。如果在它开始之前,你设置了MAKEFLAGS
,比如:
export MAKEFLAGS="-j$(nproc)"
pip install -r requirements.txt
这样可能会帮助你更顺利地安装本地依赖。
注意:nproc
这个命令会返回你电脑里CPU的数量。