4 ms·
Understanding Modern Storage APIs: A systematic study of libaio, SPDK, io_uring [pdf]
- anonymoushn 3y agois source available?
- peterfirefly 3y agoApparently not, but there is a video: https://www.youtube.com/watch?v=5jKKVdJJqKY https://www.youtube.com/watch?v=5jKKVdJJqKY
- up2isomorphism 3y agoI never see any use cases where storage path really requires polling, can someone list one example?
- tanelpoder 3y agoA modern (database) engine that does millions of IOPS and uses a single (or a few) IO completion polling threads, typically pinned on dedicated CPUs, instead of having all CPUs busy handling “random” IO completion interrupts. Such apps tend to use thread-per-core architecture and have their own IO queues and dispatchers built in the app layer. Examples: ScyllaDB, RedPanda. Both are using the Seastar framework for scheduling and IO.