linux缓存限制,linux – 如何限制复制使用的缓存,以便其他缓存仍然可用内存?...

基本情况:

我在openSuSE中复制一些NTFS磁盘.每个都是2TB.当我这样做,系统运行缓慢.

我的猜测:

我相信这可能是由于缓存. Linux决定丢弃有用的缓存(例如kde4 bloat,虚拟机磁盘,LibreOffice二进制文件,Thunderbird二进制文件等),而是从复制磁盘中填充所有可用内存(总共24 GB),这些内容将只读一次,然后写下来,再也不用了.所以,任何时候我使用这些应用程序(或kde4),磁盘需要重新读取,再次读取磁盘上的膨胀会使事情冻结/打嗝.

由于高速缓存已经消失,这些膨胀的应用程序需要大量的缓存,这使得系统可怕的很慢.

由于它是USB,磁盘和磁盘控制器不是瓶颈,所以使用ionice不会使它更快.

我相信这是缓存,而不只是主板太慢,因为如果我停止一切复制,它仍然运行一段时间,直到它重新开始一切.如果我重新启动复制,则需要一分钟再重新启动.但是我也可以把它限制在大约40 MB / s,而且它运行速度更快(不是因为它有正确的事情被缓存,而是因为主板总线对系统磁盘有很多额外的带宽).我完全可以接受从我主板的IO功能完全消耗的性能损失(这是100%使用,意味着0%浪费的电源,这使我开心),但我不能接受这种缓存机制在这种具体使用中如此可怕案件.

# free

total used free shared buffers cached

Mem: 24731556 24531876 199680 0 8834056 12998916

-/+ buffers/cache: 2698904 22032652

Swap: 4194300 24764 4169536

我也在Ubuntu上尝试了同样的事情,这导致了一个完整的系统挂起. 😉

为了澄清,我不是问如何为“系统”而留存内存,而是“缓存”.我知道缓存内存在需要时会自动返回系统,但是我的问题是它不是保留用于缓存特定的东西.

题:

有没有办法告诉这些复制操作来限制内存使用,所以一些重要的事情仍然被缓存,因此任何减速都是正常的磁盘使用的结果,而不是重新使用相同的常用文件?例如,每个进程/用户/文件系统是否允许使用最大内存的设置作为缓存/缓冲区?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值