GNU/Linux >> Belajar Linux >  >> Linux

Linux – Ionice Tidak Memiliki Efek Pada Penulisan yang Tidak Disinkronkan (yaitu Penulisan Normal)?

Ketika saya membuang database MySQL yang besar (beratnya sekitar 10GB)
– itu muncul di disk segera, tetapi kemudian, ketika kernel
memutuskan untuk mem-flush-nya ke disk, server hampir stall dan permintaan IO lainnya
membutuhkan lebih banyak waktu untuk diselesaikan meskipun mysqldump dijalankan dengan ionice -c3,
sehingga penggunaan ionice tidak memiliki efek nyata.

Artem

Saat Anda menulis data ke cache halaman, tidak ada bidang untuk menyimpan prioritas IO. Jadi ionice tidak akan berpengaruh. Apakah saya benar?

Versi kernel terbaru saya adalah 4.18.16-200.fc28.x86_64 .

Jawaban yang Diterima:

Ya.

Secara teori, ionice memungkinkan Anda untuk memprioritaskan IO perintah dengan cara yang bagus(1) secara teoritis memprioritaskan penggunaan CPU-nya. Ini akan menjadi cara praktis untuk memungkinkan, katakanlah, kompilasi yang besar namun relatif penting untuk digiling di latar belakang tanpa menghalangi penggunaan mesin secara interaktif.

(Mengapa ya, saya sering mengkompilasi ulang Firefox dari sumber.)

[…]

Masalah berikutnya adalah bahkan ketika dijalankan langsung pada disk, ionice tidak melakukan apa pun untuk tidak memprioritaskan IO tulis asinkron. Ini adalah, yah, sebagian besar IO tulis yang akan dilakukan sebagian besar program. Ionice dapat memperlambat penulisan sinkron (saya tidak memiliki program pengujian) dan itu pasti berfungsi untuk membaca, tetapi hanya itu.

https://utcc.utoronto.ca/~cks/space/blog/linux/IoniceNotes


Linux
  1. kesalahan:src refspec main tidak cocok dengan [GIT] mana pun

  2. Bagaimana Suatu Program Memutuskan Apakah Memiliki Output Berwarna atau Tidak?

  3. Linux Setuid Tidak Berfungsi?

  1. Dalam `sementara Ifs=Read..`, Mengapa Ifs Tidak Berpengaruh?

  2. Linux – Perangkat Eth0 Tampaknya Tidak Hadir, Menunda Inisialisasi?

  3. Linux – Udev Tidak Mengganti Nama Perangkat Ethernet Usb?

  1. Perintah sed Linux tidak mengubah file target

  2. Apakah kernel Linux memiliki fungsi utama?

  3. Apakah ada terminal Linux X yang memperbarui pembungkus baris saat mengubah ukuran?