gpt4 book ai didi

linux - cp 命令时间差异

转载 作者:太空宇宙 更新时间:2023-11-04 11:36:55 25 4
gpt4 key购买 nike

我不确定该将其归入哪个类别。

我尝试在我的系统 Centos 5.5 上对一个 7.7GB 的文件执行以下操作

time cp original copy

time cp copy copy2

复制副本的时间大约是原件副本的一半。

我想也许操作系统正在缓存什么的,所以我转到另一个目录并复制了一些小文件和东西,然后返回再次制作副本的副本,它仍然更快。

有什么想法吗?操作系统是否在缓存文件或其他内容?

让我注意到这个问题的是我有一些处理这个文件的代码。我想在两个文件上测试它,所以我只做了一个副本。然后我注意到原始文件需要最长的时间来处理。我可以对此运行什么样的诊断?

最佳答案

操作系统不会缓存文件,而是缓存它读取的磁盘 block 。

在运行时序测试时,有几种方法可以尝试考虑缓存。您可以尝试通过分配大量内存来刷新操作系统磁盘缓冲区(我通常运行类似 perl -e '"\0"x1024x1024x1024' 的程序来执行此操作); free 之前和之后应该让您了解操作系统缓存了多少数据(在 bufferscached 列下)。

或者当你为你的运行计时时,忽略系统时间——这将主要是 I/O——而只关注用户时间。当然,不同的运行可能会很好地处理不同数量的数据,因此您会期望有不同数量的 I/O。

最可靠的方法是多次运行测试,并以最快的时间作为比较的值。

关于linux - cp 命令时间差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7125960/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com