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