$linuxjunkies
>

kyber

also: Kyber scheduler

Kyber is a Linux I/O scheduler for block devices that prioritizes low latency and fairness by using adaptive batching and machine-learning-inspired techniques to manage disk request queues.

Kyber is an I/O scheduler introduced in Linux 4.12 that manages how read and write requests are sent to storage devices. It sits between the application layer and the physical disk, deciding the optimal order and timing of I/O operations.

Unlike older schedulers (CFQ, deadline), Kyber uses a target-latency model: it monitors actual I/O completion times and adjusts batch sizes dynamically to keep latency low while maintaining good throughput. It separates read and write queues and treats synchronous and asynchronous requests differently.

Example: If you have a busy web server, Kyber will prioritize shorter read requests to keep response times snappy, while batching write operations for efficiency. You can set the target latency with: echo 5000 > /sys/block/sda/queue/kyber/read_lat_nsec

Kyber is particularly effective for NVMe SSDs and systems with mixed workloads where both latency and throughput matter.

Related terms