Reducing per-I/O CPU overhead by queueing and batching read requests and read completion notifications
US10656841B1 · kind B1 · utility
Assignee
Inventors
Key dates
| Filing date | Jan 17, 2019 |
| Grant date | May 19, 2020 |
| Priority date | — |
| Expiry date | Jan 17, 2039 |
Classification
- Technology area (CPC G)Physics
- CPC primaryG06F13/1642
- WIPO fieldComputer technology
- WIPO sectorElectrical engineering
Abstract
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.
Source: USPTO / EPO open patent data. Objective bibliographic and citation counts.