根据我的观察,内存充足的情况下,比特彗星下载时,即使写入缓存设置 4096 MB,下载速度达到 8MB 以上时,任务管理器写入速度和下载速度一致——至少 BT 是这样——这说明从缓存写入硬盘的频率太高了。而且软件的读写操作统计远远小于任务管理器中显示的。此外缓存也才用了大约 1 GB。
为了更好地保护硬盘,应该尽可能减少写入,尤其是缓冲区不大的情况下。此外为了避免电脑死机、断电或者软件崩溃导致数据丢失,即使缓冲区还有很大空间(下载很慢的情况下),可以几十秒到1分钟强制写入一次。
比特彗星是目前对下载写入优化最好的BT软件,比qbittorrent、utorrent写入量和写入次数来的小很多
可以在统计里面查看命中率,如果低于99%代表内存紧张
真实写入次数和BT区块大小保持一致,例如4MB区块,总区块5000个,那么就会真实写入5000次
如果真实写入>区块数量,那么此时命中率会降低,代表无法申请到可用的内存
目前版本没有组合相邻区块写入,这种优化算法估计不太好做,因为要把区块长期放在内存中,而且BT下载是随机乱序的,默认情况下并不是顺序下载
5000区块就是写入5000次,每次和区块相同的4MB大小,如果区块是512KB,那么每次写入就是512KB
像你说的定时强制写入,如果区块下载未完成被强制写入了,那么下次写入相同的区块还需要读取这个未完成的区块,在校验写入,反而带来磁盘更大的负荷,不如我说的组合写入来的好一些,例如4个4MB区块组合为一个16MB的大区块一次性写入
至于utorrent定时写入的功能主要目的是解决因为自身32位软件不支持1GB以上内存的原因,避免过多的未完成BT区块积累太多引起进程内存泄漏软件崩溃