Spack 和 Conda 包管理器之间的主要区别是什么? 哪一种应用更适合其中一种?
根据 Spack 文档,它旨在用于超级计算机。 但它具体带来了哪些好处呢?
个人使用时使用 Spack 而不是 Conda 有意义吗?
我猜 Conda 更专注于 Python,而spack 更通用? 但我找不到任何有关实际差异的详细信息。
两者之间的一个更深层次的区别是 Conda 安装预编译的软件包,而使用 Spack,软件是在您的计算机上编译的(除非您碰巧使用构建缓存,但没关系)。这意味着,如果您想要一组与 Conda 自洽的软件包,您的选择可能会受到限制,因为它们是以有限数量的方式编译的。如果您只需要几个软件包,和/或您打算使用单独安装的软件包,因为它们彼此不依赖,那么 Conda 可能是一个不错的选择。另一方面,如果您想使用具有特定 MPI 风格的特定编译器来构建 HDF5,然后您想用它以内部一致的方式构建您自己的软件,那么 Spack 是一个强大的选择。粗略地说,Conda 可以更简单、更快地完成安装,但 Spack 提供灵活性和可定制性(因为其构建是为了支持 HPC 系统上的复杂软件堆栈)。