我为机器学习项目创建了数百万个图像的数据集(到目前为止,已超过1500万个),占用了超过500GB的存储空间。我在Macbook Pro上创建了它们,但希望以某种方式将它们添加到我们的DGX1(GPU群集)中。我认为复制到快速的外部SSD(在raid0中为2x nvme)然后将驱动器直接插入本地终端并将其复制到网络暂存盘会更快。我现在不太确定了,因为我已经使用cP切换到外部驱动器超过24小时了。
我尝试首先使用finder gui复制(不好的主意!)。对于较小的数据集(200万图像),我使用7zip创建了一些存档。我现在正在MacOS中使用终端使用cp复制文件。
我尝试了“ cp / path / to / dataset / path / to / external-ssd”
Finder绝对不是最好的方法,因为它在“准备”复制阶段花了很长时间。
使用7zip存档数据集可以提高“文件”的传输速度,但是提取文件花了4天以上(!),对于一个数据集来说要小几个数量级。
使用命令行cp可以快速启动,但是速度似乎有所降低。活动监视器说我在磁盘上有6-8k IO。已经24小时了,还没有完成一半。
有更好的方法吗?
答案 0 :(得分:0)
rsync是用于此类工作负载的首选工具。它用于本地和网络副本。
主要优点是(摘自联机帮助页):
Rsync被广泛用于备份和镜像,并作为日常使用的改进复制命令。
关于命令的用法和语法,本地传输与cp
几乎相同:
rsync -az /path/to/dataset /path/to/external-ssd