详细内容或原文请订阅后点击阅览
不要让Conda吃硬盘
如果您是Anaconda用户,则知道Conda环境可以帮助您管理包装依赖关系,避免兼容性冲突并与他人共享您的项目。不幸的是,他们也可以接管您的计算机硬盘驱动器。我编写了很多计算机教程,并为它们井井有条,每个都有一个专用的文件夹结构,并配有conda环境。这个[…]帖子不要让Conda吃您的硬盘驱动器首先出现在数据科学上。
来源:走向数据科学如果您是Anaconda用户,则知道Conda环境可以帮助您管理包装依赖关系,避免兼容性冲突并与他人共享您的项目。不幸的是,他们也可以接管您的计算机硬盘驱动器。
conda环境 conda环境我编写了许多计算机教程并保持井井有条,每个都有一个专用文件夹结构,并配有conda环境。起初这效果很好,但是很快我的计算机的性能降低了,我注意到我的SSD正在填充。有一次,我只有13 GB。
conda环境conda通过将下载的软件包文件存储在单个“缓存”(pkgs_dirs)中来帮助解决此问题。当您安装软件包时,Conda在下载之前在软件包中检查它。如果找不到,Conda将下载并提取软件包,并将文件链接到活动环境。由于缓存是“共享”的,因此不同的环境可以使用相同的下载文件而无需重复。
pkgs_dirs
由于conda缓存了每个下载的软件包,所以pkgs_dirs可以增长到许多千兆字节。尽管Conda链接到缓存中的共享软件包,但仍然需要在环境文件夹中存储一些软件包。这主要是为了避免版本冲突,其中不同的环境需要相同依赖关系的不同版本(运行另一个软件包所需的软件包)。
每个下载的软件包pkgs_dirs
版本冲突
依赖项
此外,诸如OpenCV之类的大型,编译的二进制文件可能需要在环境目录中的完整副本,并且每个环境都需要Python解释器的副本(100-200 MB)。所有这些问题都可以将Conda环境膨胀到几千兆字节上。
OpenCV 完整副本在这个快速的成功数据科学项目中,我们将研究一些用于减少CONDA环境的存储要求的技术,包括存储在默认位置和专用文件夹中的技术。
快速成功数据科学 内存管理