On 05/04/2017 02:42 PM, Shaohua Li wrote: > For fast flash disk, async IO could introduce overhead because of > context switch. block-mq now supports IO poll, which improves > performance and latency a lot. swapin is a good place to use this > technique, because the task is waitting for the swapin page to continue > execution. Nitfy! > In my virtual machine, directly read 4k data from a NVMe with iopoll is > about 60% better than that without poll. With iopoll support in swapin > patch, my microbenchmark (a task does random memory write) is about 10% > ~ 25% faster. CPU utilization increases a lot though, 2x and even 3x CPU > utilization. This will depend on disk speed though. While iopoll in > swapin isn't intended for all usage cases, it's a win for latency > sensistive workloads with high speed swap disk. block layer has knob to > control poll in runtime. If poll isn't enabled in block layer, there > should be no noticeable change in swapin. Did you try with hybrid polling enabled? We should be able to achieve most of the latency win at much less CPU cost with that. -- Jens Axboe -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>