ディスクにボトルネックが発生しました。バックグラウンドプロセスは状況をさらに悪化させる。応答性を向上させる方法は?

ディスクにボトルネックが発生しました。バックグラウンドプロセスは状況をさらに悪化させる。応答性を向上させる方法は?

通常、私のラップトップのボトルネックはディスクです。ディスク集約的な計算を実行すると、自動的に開始されたバックグラウンドプロセスupdatedbなどがfind /something開始され、状況がさらに悪化します。それらは次のように設定されます。いいねしかし、CPUが問題ではなく、I / Oが問題なので役に立ちません。

質問:問題を軽減する方法(手動で終了することに加えて)、さらに一般的には同様のメカニズムはありますか?いいねしかし、I / Oを考慮しますか?

より一般的には、Linux(Ubuntu 14.04)システムのI / O応答性を向上させる方法は?現在のアプリケーションが最大ディスク使用量に達すると、システムは非常に遅く反応します。たとえば、FirefoxでWebページを開くには時間がかかります(システムを交換しなくてもシステムを交換すると、状態が悪くなります)。 Swappiness は 0 に設定されます。これは重要です。

答え1

  1. アイオニスを見ましたか?
  2. これらのプログラムがページキャッシュを汚すことを望まないことをオペレーティングシステムに知らせるために、posix fadviseを使用して更新されたb / findを実行する必要があるかもしれません。これにより、キャッシュされたディスクI / Oがメモリに保持されます。
  3. 実行されていない時間を計算するために、これらのバックグラウンドプロセスをプッシュするようにcronジョブを再設計することもできます。また、cronジョブを変更して開始する前に、最初にディスクが使用中であることを確認できます(iostat -xでディスクが使用中であると表示された場合は、1時間スリープ状態にしてください)。
  4. ノートブックのI / Oはひどい可能性があり、特にラップトップが5400RPMで回転している場合はさらにそうです。ページキャッシュを利用できるようにメモリを追加することもできます。
  5. Firefoxの速度低下は実際に興味深い問題です。以前の職場ではこのような問題がありました。私の記憶が正しい場合、LinuxはI / Oページをメモリにキャッシュするのが大好きです。プログラムメモリ(Firefoxなど)を交換する場所まで行きます。したがって、Firefox を起動すると、Linux はスペースを確保するために別のアプリケーションを交換し、Firefox で交換して要求を実行する必要があります。

関連情報