- 主题:copy文件速度跟啥有关?
可能和硬盘卡有关。
【 在 chaosu 的大作中提到: 】
: 刚在服务器和笔记本上都试了一下,10G文件。
: 服务器是几秒钟,貌似还是机械硬盘,也没RAID。
: 笔记本10秒多一点,速度显示750MB/秒上下,当前普通的SSD水平吧,性能不算突出。
: ...................
--
FROM 111.196.132.*
没特意试过
【 在 oicu 的大作中提到: 】
: 难道你没复制过同一个文件两次?
: time cp 试试吧
--
FROM 111.196.132.*
其他程序读,也是读的内存里的文件数据。此时并没有刷到硬盘上。
【 在 chunhui 的大作中提到: 】
: 我是copy过去之后其他程序立刻就开始读了。
--
FROM 1.24.229.*
有没有可能,因为这些文件没有修改,文件系统只是增加了引用而已?
【 在 SlO 的大作中提到: 】
: 其他程序读,也是读的内存里的文件数据。此时并没有刷到硬盘上。
--
FROM 111.196.132.*
是不是引用,你自己做一下实验吧。
【 在 chunhui 的大作中提到: 】
: 有没有可能,因为这些文件没有修改,文件系统只是增加了引用而已?
--
FROM 1.24.229.*
【 在 chunhui 的大作中提到: 】
: 是的内存挺大。但是我没想到它会把那么多文件都缓存进来。不知道copy是怎么实现的。
linux内核默认把除了正在被系统和应用程序使用的物理内存外的物理内存,扣掉8MB还是多少余量,剩下的全部用作文件系统缓存
windowsNT内核也部分学习了这点,所以当年很多用windows9x的新手初次使用linux和windows2000都觉得“怎么空闲内存就这么点?”,然后还找“内存清理工具”去释放windows2000占用作为文件系统缓存的内存……
--
FROM 39.144.105.*
怎么搞可以验证?
【 在 SlO 的大作中提到: 】
: 是不是引用,你自己做一下实验吧。
--
FROM 111.196.132.*
就算用内存做缓存,我copy到目的地,还没有完全写入。那么它从磁盘上把11G的文件读到内存,也应该得一两秒吧?
real 0m0.012suser 0m0.002ssys 0m0.010s
user 0m0.002s
sys 0m0.010s
【 在 marion 的大作中提到: 】
: linux内核默认把除了正在被系统和应用程序使用的物理内存外的物理内存,扣掉8MB还是多少余量,剩下的全部用作文件系统缓存
: windowsNT内核也部分学习了这点,所以当年很多用windows9x的新手初次使用linux和windows2000都觉得“怎么空闲内存就这么点?”,然后还找“内存清理工具”去释放windows2000占用作为文件系统缓存的内存……
--
修改:chunhui FROM 111.196.132.*
FROM 111.196.132.*
如果之前访问过这个文件有可能已经缓存了,试试下面的命令(需要root)
sync
echo 1 > /proc/sys/vm/drop_caches
从这里开始计时,到sync完成
cp .... (这里是copy的命令)
sync
【 在 chunhui 的大作中提到: 】
: 就算用内存做缓存,我copy到目的地,还没有完全写入。那么它从磁盘上把11G的文件读到内存,也应该得一两秒吧?
: real 0m0.012suser 0m0.002ssys 0m0.010s
: user 0m0.002s
: ...................
--
修改:gameplayer FROM 222.128.5.*
FROM 222.128.5.*
好像没什么区别
real 0m0.043suser 0m0.002ssys 0m0.013s
user 0m0.002s
sys 0m0.013s
【 在 gameplayer 的大作中提到: 】
: 如果之前访问过这个文件有可能已经缓存了,试试下面的命令(需要root)
: sync
: echo 1 > /proc/sys/vm/drop_caches
: ...................
--
修改:chunhui FROM 111.196.132.*
FROM 111.196.132.*