Processing of high priority data elements in systems comprising a host processor and a co-processor
First Claim
1. In a system comprising a host processor interacting with a co-processor via at least a queue, a method in the host processor for processing a priority data element to be written into the queue by the host processor, the method comprising:
- determining a priority of the priority data element;
when the priority of the priority data element is higher than a lowest possible priority value, comparing the priority of the priority data element with a priority of at least one queued data element to determine at least one lower priority queued data element, wherein each of the at least one lower priority queued data element has a priority lower than the priority for the priority data element; and
modifying one or more of the at least one lower priority queued data element to provide at least one modified queued data element such that the at least one modified queued data element is temporarily removed from the queue.
2 Assignments
0 Petitions
Accused Products
Abstract
To provide for the processing of priority data elements between a host processor and a co-processor that exchange such data elements using a queue, the host processor determines a priority of a data element received from an application. If the priority is higher than a lowest possible priority value, at least one lower priority data element within the queue may be identified and modified thereby temporarily removing it from the queue. When the priority data element is written into the queue a query packet is included that will cause the co-processor to return information regarding a last executed queued data element. Based on the returned information, the host processor can determine one or more unmodified data elements (uniquely corresponding to the one or more modified queued data elements) to be written into the queue in accordance with a sequence of the previously modified queued data elements.
17 Citations
24 Claims
-
1. In a system comprising a host processor interacting with a co-processor via at least a queue, a method in the host processor for processing a priority data element to be written into the queue by the host processor, the method comprising:
-
determining a priority of the priority data element;
when the priority of the priority data element is higher than a lowest possible priority value, comparing the priority of the priority data element with a priority of at least one queued data element to determine at least one lower priority queued data element, wherein each of the at least one lower priority queued data element has a priority lower than the priority for the priority data element; and
modifying one or more of the at least one lower priority queued data element to provide at least one modified queued data element such that the at least one modified queued data element is temporarily removed from the queue. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A processor-readable medium having stored thereon processor-executable instructions that, when executed by a processor that interacts with a co-processor via at least a queue, cause the processor to:
-
determine a priority of a priority data element to be written into the queue;
when the priority of the priority data element is higher than a lowest possible priority value, compare the priority of the priority data element with a priority of at least one queued data element to determine at least one lower priority queued data element, wherein each of the at least one lower priority queued data element has a priority lower than the priority for the priority data element; and
modify one or more of the at least one lower priority queued data element to provide at least one modified queued data element such that the at least one modified queued data element is temporarily removed from the queue. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A system comprising:
-
a storage device comprising a queue;
a co-processor coupled to the storage device; and
a host-processor coupled to the storage device and operative to;
determine a priority of a priority data element to be written into the queue;
when the priority of the priority data element is higher than a lowest possible priority value, compare the priority of the priority data element with a priority of at least one queued data element to determine at least one lower priority queued data element, wherein each of the at least one lower priority queued data element has a priority lower than the priority for the priority data element; and
modify one or more of the at least one lower priority queued data element to provide at least one modified queued data element such that the at least one modified queued data element is temporarily removed from the queue. - View Dependent Claims (16, 17, 18, 19, 20, 21)
-
-
22. A processor-readable medium having stored thereon a data element structure, comprising:
-
a first data field comprising commands to processed by a co-processor; and
a priority field comprising a priority indication, wherein during processing of the commands, the priority indication is examined to determine whether the commands should be processed by the co-processor with a higher priority than other commands to be processed by the co-processor. - View Dependent Claims (23, 24)
-
Specification