Apakah ionice berfungsi dengan penjadwal tenggat waktu?

13

Sistem Debian Wheezy saya menggunakan deadlinepenjadwal. Saya terbiasa menggunakan ioniceuntuk menjadwal ulang prioritas I / O pekerjaan intensif-disk pada waktu-waktu sibuk, dan secara anekdot sepertinya ini membantu (tapi saya tidak punya bukti keras).

The ionicemanualnya , dokumentasi kernel dan dokumen OpenSUSE ini semua menunjukkan bahwa hanya cfqscheduler memperhitungkan ioniceintervensi. Mereka tidak secara eksplisit menyatakan bahwa penjadwal lain mengabaikannya, tetapi satu-satunya yang mereka sebutkan adalah cfq.

Apakah penjadwal lain, khususnya deadline, bekerja dengan ionice?

Flup
sumber

Jawaban:

12

Tidak ioniceadalah mekanisme untuk menentukan prioritas. Tetapi deadlinemengabaikan prioritas dan sebaliknya hanya memaksakan waktu kedaluwarsa pada setiap operasi I / O dan kemudian memastikan bahwa operasi berhasil sebelum waktu kedaluwarsa dipenuhi.

Informasi lebih lanjut di sini: Deadline I / O scheduler

Tujuan utama dari penjadwal Tenggat adalah untuk menjamin waktu layanan mulai untuk permintaan. Itu dilakukan dengan menetapkan batas waktu pada semua operasi I / O untuk mencegah kelaparan permintaan. Ia juga memelihara dua batas waktu antrian, di samping antrian yang diurutkan (baik baca dan tulis). Antrian tenggat waktu pada dasarnya diurutkan berdasarkan tenggat waktu mereka (waktu kedaluwarsa), sedangkan antrian yang diurutkan diurutkan berdasarkan nomor sektor.

Sebelum melayani permintaan berikutnya, penjadwal tenggat waktu memutuskan antrian mana yang akan digunakan. Baca antrian diberi prioritas lebih tinggi, karena proses biasanya memblokir operasi baca. Selanjutnya, penjadwal tenggat waktu memeriksa apakah permintaan pertama dalam antrian tenggat waktu telah kedaluwarsa. Jika tidak, penjadwal melayani sejumlah permintaan dari antrian yang diurutkan. Dalam kedua kasus, penjadwal juga melayani sejumlah permintaan mengikuti permintaan yang dipilih dalam antrian yang diurutkan.

Secara default, permintaan baca memiliki waktu kedaluwarsa 500 ms, permintaan tulis kedaluwarsa dalam 5 detik.


sumber