![Ubuntu 18.04 和大文件数量存在严重性能问题](https://linux22.com/image/1603975/Ubuntu%2018.04%20%E5%92%8C%E5%A4%A7%E6%96%87%E4%BB%B6%E6%95%B0%E9%87%8F%E5%AD%98%E5%9C%A8%E4%B8%A5%E9%87%8D%E6%80%A7%E8%83%BD%E9%97%AE%E9%A2%98.png)
我使用大学网络进行研究工作,并获得了一台装有 Ubuntu 18.04 和 Intel i7-7700 的新 PC。我经常使用机器学习应用程序,因此我经常移动由相对较小文件组成的大型数据集(约 30-50 GB)。使用 Linux 时,我遇到了严重的性能问题,尤其是在使用 Nautilus 时。
例如,在使用 AVA 数据集(255530 张 .jpg 图像)时,Nautilus 需要很长时间(约 3 分钟??)才能打开文件夹并显示内容!请注意,我使用的是列表布局,没有任何必须显示的缩略图或类似内容 - 仅显示文件名,仅此而已。在我的 Windows 计算机上,打开类似的图像文件夹仅需 2-3 秒。是我做错了什么,还是这是 Linux 特有的一般问题?
非常感谢您的帮助和建议!:)
答案1
答案2
我想到两件事可能会对你有帮助:
由于您从事机器学习工作,因此您很可能已经使用过 Python。在一些需要整理大量文件的工作中,我编写了专用的简短 Python 脚本来执行整理任务。据说 Python 的实现(例如获取目录中所有文件的列表)非常高效。这样,您就不必使用 Nautilus 之类的 GUI 或 Shell 命令,您说这两种方法对您来说都不太好用。
您在新电脑上使用哪种文件系统?不同的文件系统在处理大量文件时会表现出不同的性能特征,这是由于内部组织不同,例如二叉树与线性列表,请参见https://unix.stackexchange.com/questions/63250/storing-thousands-of-files-in-one-directory?noredirect=1&lq=1在这个领域,意见和基准测试结果差异很大,也许您可以重新分区您的硬盘或添加外部 SSD 来在您的任务中尝试一些不同的文件系统,例如 BTRFS 与 XFS 与...