System, apparatus, and method for streaming input/output data

US2021281618A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2021281618-A1
Application numberUS-202117313353-A
CountryUS
Kind codeA1
Filing dateMay 6, 2021
Priority dateNov 12, 2020
Publication dateSep 9, 2021
Grant date

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

In one embodiment, a system includes a device and a host. The device includes a device stream buffer. The host includes a processor to execute at least a first application and a second application, a host stream buffer, and a host scheduler. The first application is associated with a first transmit streaming channel to stream first data from the first application to the device stream buffer. The first transmit streaming channel has a first allocated amount of buffer space in the device stream buffer. The host scheduler schedules enqueue of the first data from the first application to the first transmit streaming channel based at least in part on availability of space in the first allocated amount of buffer space in the device stream buffer. Other embodiments are described and claimed.

First claim

Opening claim text (preview).

What is claimed is: 1 . An apparatus comprising: a processor to execute at least a first application and a second application, the first application associated with a first transmit streaming channel to stream first data from the first application to a device stream buffer of a device, wherein the first transmit streaming channel has a first allocated amount of buffer space in the device stream buffer; and a scheduler coupled to the processor, the scheduler to schedule the first application to enqueue the first data to the first transmit streaming channel based at least in part on availability of space in the first allocated amount of buffer space in the device stream buffer. 2 . The apparatus of claim 1 , wherein the scheduler is further to: receive flow control data associated with the availability of space in the first allocated amount of buffer space in the device stream buffer from the device; and schedule the first application to enqueue the first data to the first transmit streaming channel based at least in part on the flow control data. 3 . The apparatus of claim 1 , wherein the second application is associated with a second transmit streaming channel to stream second data from the second application to the device stream buffer, the second transmit streaming channel having a second allocated amount of buffer space in the device stream buffer; and the apparatus further comprises a host stream buffer to: receive the first and second data via the first and second transmit streaming channels, respectively; and stream the first and second data from the host stream buffer to the device stream buffer via a buffer transmit streaming channel. 4 . The apparatus of claim 3 , wherein the scheduler is further to prioritize streaming of the first data and the second data from the host stream buffer to the device stream buffer via the buffer transmit streaming channel based at least in part on a first priority associated with the first application and a second priority associated with the second application. 5 . The apparatus of claim 3 , wherein the scheduler is further to: receive a first data drain rate from the device, the first data drain rate associated with draining of the first data from the device stream buffer; receive a second data drain rate from the device, the second data drain rate associated with draining of the second data from the device stream buffer; and reprioritize streaming of the first data and the second data from the host stream buffer to the device stream buffer based at least in part on the first and second data drain rates. 6 . The apparatus of claim 1 , wherein the scheduler is further to: receive a first data drain rate from the device, the first data drain rate associated with draining of the first data from the device stream buffer; and schedule the enqueue of the first data from the first application to the first transmit streaming channel based at least in part on the first data drain rate. 7 . The apparatus of claim 1 , wherein the second application is associated with a second transmit streaming channel to stream second data from the second application to the device stream buffer and the second transmit streaming channel having a second allocated amount of buffer space in the device stream buffer; and the scheduler is further to: determine whether the first data provided by the first application falls below a channel data threshold; and dynamically adjust the first allocated amount of buffer space in the device stream buffer to the first transmit streaming channel and the second allocated amount of buffer space in the device stream buffer to the second transmit streaming channel based at least in part on the determination. 8 . The apparatus of claim 1 , wherein the first application is associated with a first priority and the second application is associated with a second priority, the second application associated with a second transmit streaming channel to stream second data from the second application to the device stream buffer and having a second allocated amount of buffer space in the device stream buffer; and the scheduler is further to: allocate the first allocated amount of the buffer space in the device stream buffer to the first transmit streaming channel based at least in part on the first priority; and allocate the second allocated amount of the buffer space in the device stream buffer to the second transmit streaming channel based at least in part on the second priority. 9 . The apparatus of claim 1 , further comprising a host stream buffer to receive third data associated with the first application from the device via a first receive streaming channel, the first receive streaming channel being associated with the first application and having a first allocated amount of buffer space in the host stream buffer. 10 . The apparatus of claim 9 , wherein the host buffer is to transmit flow control data associated with availability of space in the first allocated amount of buffer space in the host stream buffer to the device. 11 . The apparatus of claim 9 , wherein the scheduler is further to schedule dequeue of the third data by the first application from the first receive streaming channel. 12 . A machine-readable medium comprising instructions stored thereon, which if performed by a machine, cause the machine to: receive first data associated with a first application at a device stream buffer of a device, the first application associated with a first receive streaming channel to stream the first data from the device stream buffer to the first application at a host device via a host stream buffer, the first receive streaming channel having a first allocated amount of buffer space in the host stream buffer; and schedule streaming of the first data from the device stream buffer to the first application via the first receive streaming channel based at least in part on availability of space in the first allocated amount of buffer space in the host stream buffer. 13 . The machine-readable medium of claim 12 , further comprising instructions to cause the machine to: receive flow control data associated with availability of space in the first allocated amount of buffer space in the host stream buffer from the host device; and schedule streaming of the first data from the device stream buffer to the host stream buffer based at least in part on the flow control data. 14 . The machine-readable medium of claim 12 , further comprising instructions to cause the machine to: receive second data associated with a second application at the device stream buffer, the second application associated with a second receive streaming channel to stream the second data from the device stream buffer to the second application at the host device via the host stream buffer, the second receive streaming channel having a second allocated amount of buffer space in the host stream buffer; and schedule streaming of the first data and the second data from the device stream buffer to the host stream buffer via a buffer receive streaming channel based at least in part on first and second priorities of the first and second applications, respectively. 15 . The machine-readable medium of claim 12 , further comprising instructions to cause the machine to: receive third data from the first application via a first transmit streaming channel at the device stream buffer, the first transmit streaming channel being associated with the first application and having a first allocated amount of buffer space in the device stream buffer. 16 . The mach

Assignees

Inventors

Classifications

  • Intercommunication techniques · CPC title

  • G06F15/17Primary

    using an input/output type connection, e.g. channel, I/O port · CPC title

  • considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration (scheduling strategies G06F9/4881 and subgroups) · CPC title

  • Priority · CPC title

  • Precedence · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US2021281618A1 cover?
In one embodiment, a system includes a device and a host. The device includes a device stream buffer. The host includes a processor to execute at least a first application and a second application, a host stream buffer, and a host scheduler. The first application is associated with a first transmit streaming channel to stream first data from the first application to the device stream buffer. Th…
Who is the assignee on this patent?
Intel Corp
What technology area does this patent fall under?
Primary CPC classification G06F15/17. Mapped technology areas include Physics.
When was this patent published?
Publication date Thu Sep 09 2021 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 3 related publications on this page (citations in our corpus or others sharing the same primary CPC).