问题总结:有什么办法可以降低ratarmount的ram使用率吗?哪些因素会影响 ram 的使用(除了 tar 大小)?
编辑/澄清问题:我可以使用什么方法将常驻内存减少到最低限度?
我的情况:
- 我正在使用 ratarmount 挂载大量 tar 文件(例如,800gb 是我拥有的最大的文件)。
- 我有一台带有 6x6tb 驱动器、20 个内核和 256gb 内存的服务器。
- 我安装了大约 20-25tb 的这些类型的 tar 文件
- 安装了上述数量的 tar 文件后,我刚刚达到了服务器上的最大内存量 ~250gb
- tar 文件有大量(可能数亿)小文件和文件夹。
我的问题: Ratarmount 现在已经达到了 240gb 的 ram 使用量,并且几乎耗尽了我的服务器 ram。我仍然需要安装另外 5-10tb 的 tar 文件。
它似乎与它使用多少内存有点不一致。例如,第一次挂载时,它最终会使用比从索引文件挂载更多的内存。对我来说,我可以尝试什么来降低效率,这对我来说有点神秘。接受任何想法。我需要将内存使用量减少约 25% 才能完成我的项目。
旁注......我看到这个用户创建了ratarmount。它是一个非常棒的程序,完全救了我,但我不知道如何抓住他,也不知道如何在此处或 github 上联系到某人的既定/可接受的方式
我刚刚测试
ratarmount
了一个包含 10M 文件的文件。如果您没有主动stat
ing 所有文件,ratarmount
最终将换出。因此,一个非常简单的解决方案是为您的服务器添加交换空间。如果您使用
zswap
,您甚至可以避免接触物理磁盘。我还证实了您的观察,即进行索引+挂载比简单地挂载需要更多的内存。这意味着存在内存泄漏
ratarmount
(可能数据结构被复制并且不需要的副本没有被破坏)。因此,您可以通过 index+mount 将数据使用量降至最低,然后立即 umount 然后再次安装。