ในการใช้งาน VOD servers นั้นถ้าเราใช้ cfg scheduler นั้นเวลาที่มี connection ที่เข้ามามีจำนวนมากจะทำให้เกิดเวลาในการทำงานของ I/O ของ disk เพิ่มขึ้น ซึ่งจะทำให้เวลาที่ผู้ใช้งานดู video ไม่เกิดความราบรื่นต่อการรับชม ดังนั้นเราควรที่จะใช้ “deadline” I/O scheduler เพื่อ optimize I/O ให้สามารถรองรับการทำงานแบบ maximizing I/O throughput ได้

การตั้งค่าเราสามารถทำได้ตอน boot เครื่องโดยใช้ “elevator” ซึ่งเป็น kernel parameter ตัวหนึ่ง โดยให้เราไปแก้ไขไฟล์ grub.conf ดังตัวอย่างข้างล่าง

title Red Hat Enterprise Linux Server (2.6.18-8.el5)
root (hd0,0)
kernel /vmlinuz-2.6.18-8.el5 ro root=/dev/vg0/lv0 elevator=deadline
initrd /initrd-2.6.18-8.el5.img

ใน Red Hat Enterprise Linux 5 เราสามารถที่จะเปลี่ยน I/O scheduler แบบ on the fly ได้ดังตัวอย่างข้างล่างนี้

# cat /sys/block/sdb/queue/scheduler
noop anticipatory deadline [cfq]

# echo 'deadline' > /sys/block/sdb/queue/scheduler
# cat /sys/block/sdb/queue/scheduler
noop anticipatory [deadline] cfq

เรายังสามารถที่จะ tune deadline scheduler ได้เพิ่มเติมอีก โดยที่ไฟล์ที่เกี่ยวข้องกับการ tune deadline scheduler นี้แสดงอยู่ด้านล่างครับ

/sys/block/DEVNAME/queue/iosched/read_expire
/sys/block/DEVNAME/queue/iosched/write_expire
/sys/block/DEVNAME/queue/iosched/fifo_batch
/sys/block/DEVNAME/queue/iosched/write_starved
/sys/block/DEVNAME/queue/iosched/front_merges

DEVNAME คือ ชื่อของ block device อย่างเช่น sda, sdb, hda เป็นต้น

ข้อมูลเพิ่มเติมเกี่ยวกับ deadline I/O scheduler สามารถดูได้ที่ : /usr/share/doc/kernel-[version]/Documentation/block/deadline-iosched.txt.