System and method for facilitating global fairness in a network
US-2022210092-A1 · Jun 30, 2022 · US
US2021281618A1 · US · A1
| Field | Value |
|---|---|
| Publication number | US-2021281618-A1 |
| Application number | US-202117313353-A |
| Country | US |
| Kind code | A1 |
| Filing date | May 6, 2021 |
| Priority date | Nov 12, 2020 |
| Publication date | Sep 9, 2021 |
| Grant date | — |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
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.
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
Intercommunication techniques · CPC title
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
Related publications grouped by family.
Answers are generated from the same data shown on this page.