1

I'm trying to optimize the IO schedulers and to use a proper scheduler for rotational and for non rotational drives (different). When I run:

cat /sys/block/sd*/queue/rotational

I get:

1    <-- for sda
1    <-- for sdb

although sdb is the usb flash drive and it shouldn't be rotational.

$ udevadm info -a -n /dev/sda | grep queue
ATTRS{queue_depth}=="31"
ATTRS{queue_ramp_up_period}=="120000"
ATTRS{queue_type}=="simple"

$ udevadm info -a -n /dev/sdb | grep queue
ATTRS{queue_depth}=="1"
ATTRS{queue_type}=="none"

so there is no such attribute as:

ATTR{queue/rotational}=="0" or ...=="1"
1

Run hdparm -I for each of your disks:

hdparm -I /dev/sda
hdparm -I /dev/sdb

If the output of the hdparm -I line includes a line like:

Nominal Media Rotation Rate: Solid State Device

...then, and only then will the /sys/block/sd*/queue/rotational attribute be set to 0.

If your USB flash drive is USB2, any scheduler-based optimizations are likely going to be overwhelmed by the USB protocol inefficiency. Only worry about this if you have an actual USB3 SuperSpeed drive.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.