Reducing per-I/O CPU overhead by queueing and batching read requests and read completion notifications
A storage stack exposes an API for use by user mode applications. An application calls a function exposed by the API to enqueue requests to read a file on a file submission queue ("FSQ"). Read requests in the FSQ are dequeued in batches, and file offsets in the batches of dequeued read req...
Saved in:
Main Authors | , , , |
---|---|
Format | Patent |
Language | English |
Published |
19.05.2020
|
Subjects | |
Online Access | Get full text |
Cover
Loading…
Summary: | A storage stack exposes an API for use by user mode applications. An application calls a function exposed by the API to enqueue requests to read a file on a file submission queue ("FSQ"). Read requests in the FSQ are dequeued in batches, and file offsets in the batches of dequeued read requests are translated to disk offsets. The translated batches of read requests are stored in a storage submission queue ("SSQ"). A storage subsystem retrieves batches of the translated read requests from the SSQ and performs the specified read operations. Completion notifications for the read requests are stored in a storage completion queue ("SCQ"). Batches of completion notifications are dequeued from the SCQ and translated to file completions. Batches of file completions are stored in a file completion queue ("FCQ"). The user mode application that submitted the read requests can dequeue batches of completion notifications from the FCQ. |
---|---|
Bibliography: | Application Number: US201916251024 |