Patent ID: 7659904

Claim:
A method for accommodating at least one high priority data element from a plurality of data elements written into a ring buffer comprising: modifying, by a processor, a plurality of data elements previously written to the ring buffer to create modified data elements in response to detecting a high priority data element to be written into the ring buffer; resubmitting to the ring buffer, by the processor, at least one of the plurality of data elements corresponding to at least one of the modified data elements, for execution by a graphics co-processor, in response to processing the at least one high priority data element; and wherein at least one of the modified data elements includes a previously unexecuted modified data element and a previously executed modified data element, and wherein the method includes: storing, by the graphics co-processor, a last executed data element identification into a register indicating a last executed data element in response to the graphics co-processor executing the previously executed modified data element; skipping execution of the previously unexecuted modified data elements by the graphics co-processor in response to modifying at least one of the plurality of data elements previously written to the ring buffer; executing a command indicating the last executed command, by the graphics co-processor, after skipping execution of the previously unexecuted modified data elements; in response to executing the command indicating the last executed command, by the graphics co-processor, the graphics co-processor providing the last executed data element identification stored in the register indicating the last executed data element for resubmitting to the ring buffer, by the processor; and executing, by the graphics co-processor, the resubmitted data elements in response to skipping execution of the previously unexecuted modified data elements by the graphics co-processor.