A part of the Linux block I/O driver is the I/O scheduler (also known as I/O elevator). The I/O scheduler can take I/Os in the submission queue and reorder them, for example, to prioritize reads over writes, coalesce smaller I/Os to larger ones, and so on.
According to Red Hat, the preferred I/O scheduler for best database latency is Deadline. Starting with RHEL 7, Deadline became the default I/O scheduler. However, in earlier releases it was CFQ.
Based on our tests with VMAX All Flash and later PowerMax storage systems, Deadline provided good performance. CFQ performance was not as good. Therefore, we recommend that you use Deadline when choosing a Linux I/O scheduler for Oracle databases on PowerMax storage systems.
An alternative to using the Linux I/O scheduler is to use the new enhancements to the Linux block I/O driver with blk-mq (MQ). For more information, see Appendix I. Blk-mq and scsi-mq. Note that when using FC-NVMe, MQ is enabled by default.