GNU/Linux >> Belajar Linux >  >> Linux

Cara membuat GUI Linux dapat digunakan saat banyak aktivitas disk terjadi

Coba ionice-ing atau nice-ing proses penyalinan. Masalah ini disebabkan fakta bahwa IO mendapat prioritas yang sama dengan GUI, yang untuk desktop, memengaruhi daya tanggap yang dirasakan.

Ada curah pendapat Ubuntu tentang hal ini saat ini.


Linux telah lama memiliki masalah dengan program yang menyimpan semua memori cache "kotor" sistem. Apa yang terjadi adalah proses penyalinan mengisi cache tulis dengan data file yang disalin dan melakukannya dengan sangat cepat. Jadi ketika Firefox datang dan perlu menulis, pertama-tama harus menunggu ruang buffer yang kotor atau slot tulis antrean disk yang tersedia. Sambil menunggu, ia bersaing dengan proses penyalinan dan utas pdflush kernel, yang memindahkan data dari buffer kotor ke antrean penulisan disk.

Firefox memiliki masalah lain dalam skenario ini. Ini menggunakan SQLite untuk menyimpan bookmark, riwayat, dan hal lainnya. SQLite adalah database yang sesuai dengan ACID dan menggunakan sistem transaksi dengan penulisan disknya dibilas ke disk . Jadi, tidak hanya harus menunggu ruang buffer, tetapi juga harus menunggu antrean disk, yang penuh dengan file yang disalin, untuk dihapus sebelum dapat mengakui penulisan yang berhasil.

Ada banyak tweaker dilakukan pada sistem antrian dan buffering disk Linux. Ada perubahan di hampir setiap rilis kernel. Cobalah salah satu rilis yang lebih baru. Anda juga dapat mencoba mengutak-atik nilai sysctl. Saya suka ini:

vm.dirty_writeback_centisecs = 100
vm.dirty_expire_centisecs = 9000
vm.dirty_background_ratio = 4
vm.dirty_ratio = 80

Anda juga dapat mencoba mengutak-atik jumlah slot dalam antrean disk. Nilai ini ada di /sys/block/sda/queue/nr_requests . Anda perlu mengganti sda dengan apa pun drive Anda sebenarnya. Lebih banyak slot berarti lebih banyak peluang untuk menggabungkan permintaan IO dan penjadwal CFQ IO dapat melakukan pekerjaan yang lebih baik dengan prioritas. Slot yang lebih sedikit biasanya berarti waktu tunggu yang lebih singkat untuk ditulis ke disk untuk IO sinkron seperti transaksi SQLite. Slot yang lebih sedikit juga berarti waktu tunggu yang lebih singkat untuk membaca IO ke dalam antrean disk jika proses tulis yang berat mengisi antrean dengan tulis IO.


Linux
  1. Cara Memantau Aktivitas Pengguna Di Linux

  2. Bagaimana menemukan Disk adalah SSD atau HDD di Linux?

  3. Bagaimana cara menginstal VIM di Linux ketika saya tidak memiliki izin root?

  1. Cara mempartisi disk di Linux

  2. Cara Memeriksa Ruang Disk di Linux

  3. Linux – Membuat Penyalinan Disk/disk Lebih Lambat?

  1. Cara Menghapus Partisi di Linux

  2. Cara Membuat Partisi di Linux

  3. Cara Membuat CS:GO Server Di VPS Linux