US10031770B2ActiveUtilityA1

System and method of delayed context switching in processor registers

Assignee: INTEL CORPPriority: Apr 30, 2014Filed: Apr 30, 2014Granted: Jul 24, 2018
Est. expiryApr 30, 2034(~7.8 yrs left)· nominal 20-yr term from priority
G06F 9/461G06F 9/30145G06F 9/30181
52
PatentIndex Score
0
Cited by
16
References
22
Claims

Abstract

Systems, articles, and methods of context switching include requesting a transition context switch deferrable until a state to be saved is smaller than at the time the request is made, and forcing a context switch to occur if a condition is met before the request is carried out.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
       1. A computer-implemented method of context switching comprising:
 placing data into registers of a processor to process a first frame of a video sequence, wherein the processing of the data will end before the end of processing of the first frame; 
 requesting a transition context switch in the registers and intentionally deferrable to delay the transition context switch to remove the data from the registers until the end of the processing of the first frame and before the start of processing of a next frame when a predetermined state to be saved is smaller than at the time the request is made; and 
 forcing a context switch in the registers to occur before the end of the processing of the first frame if a condition is met before the request is carried out comprising determining a different state to be saved at the time of the forced context switch. 
 
     
     
       2. The method of  claim 1  comprising scheduling the transition to occur during a predictable transition in a process being performed by a processing accelerator of the processor. 
     
     
       3. The method of  claim 1  comprising forcing the context switch when waiting for the deferred context switch to occur will cause the processor to miss a time-based target. 
     
     
       4. The method of  claim 3  wherein the time-based target is associated with a target frame rate associated with a video sequence. 
     
     
       5. The method of  claim 1  comprising checking whether the request for a context switch is under control of a program. 
     
     
       6. The method of  claim 1  comprising executing a callback in response to the request being set, said callback determining the state that is to be saved as part of said context switch. 
     
     
       7. The method of  claim 1  wherein the state at least comprises data indicating the hardware settings to perform a process, and a program counter setting to indicate where along the process the context switch occurred. 
     
     
       8. The method of  claim 1  comprising:
 scheduling the transition to occur during a predictable transition in a process being performed by a processing accelerator of the processor; 
 forcing the context switch when waiting for the deferred context switch to occur will cause the processor to miss a time-based target, wherein the time-based target is associated with a target frame rate associated with a video sequence 
 checking whether the request for a context switch is under control of a program; and 
 executing a callback in response to the request being set, said callback determining the state that is to be saved as part of said context switch, wherein the state at least comprises data indicating the hardware settings to perform a process, and a program counter setting to indicate where along the process the context switch occurred. 
 
     
     
       9. A system comprising:
 a processor that is a processing accelerator performing a process related to a first frame of a video sequence; 
 registers of the processing accelerator holding data to process the first frame of a video sequence, wherein the processing of the data will end before the end of processing of the first frame; and 
 a context switch scheduler to schedule an intentionally delayed transition context switch in the registers to delay the transition context switch to remove the data from the registers, and delayed until a transition that comprises the end of the processing of the first frame and before the start of processing of a next frame when a predetermined state to be saved to perform the transition context switch is reduced, 
 wherein the processing accelerator to force a context switch in the registers rather than waiting for the transition context switch to occur before the end of the processing of the first frame if a condition is met before the transition context switch is carried out comprising determining a different state to be saved at the time of the forced context switch. 
 
     
     
       10. The system of  claim 9  wherein the processing accelerator is to force the context switch when waiting for the transition context switch to occur will cause the processor to miss a time-based target. 
     
     
       11. The system of  claim 10  wherein the time-based target is associated with a target frame rate associated with a video sequence. 
     
     
       12. The system of  claim 9  wherein the transition comprises a time period when the processor is finished using image data of the first frame and in a local memory, and before the image data of the next frame to be processed is placed in the local memory so that the image data at the local memory does not need to be saved as part of the state for the transition context switch. 
     
     
       13. The system of  claim 9  comprising a flag optionally set at the processing accelerator to indicate that a transition context switch is requested. 
     
     
       14. The system of  claim 9  comprising a context switch handler to issue a callback to an application running the process and to determine which data is to be saved as part of the state. 
     
     
       15. The system of  claim 9  wherein the state at least comprises data indicating the hardware settings to perform the process, and a program counter setting to indicate where along the process the context switch occurred. 
     
     
       16. The system of  claim 9  wherein the processing accelerator is to force the context switch when waiting for the transition context switch to occur will cause the processor to miss a time-based target;
 wherein the time-based target is associated with a target frame rate associated with a video sequence; 
 wherein the transition comprises a time period when the processor is finished using image data of the first frame and in a local memory, and before the image data of the next frame to be processed is placed in the local memory so that the image data at the local memory does not need to be saved as part of the state for the transition context switch; 
 comprising a flag optionally set at the processing accelerator to indicate that a transition context switch is requested; 
 comprising a context switch handler to issue a callback to an application running the process and to determine which data is to be saved as part of the state; and 
 wherein the state at least comprises data indicating the hardware settings to perform the process, and a program counter setting to indicate where along the process the context switch occurred. 
 
     
     
       17. At least one non-transitory computer-readable media comprising instructions, that when executed by a computing device, cause the computing device to:
 place data into registers of a processor to process a first frame of a video sequence, wherein the processing of the data will end before the end of processing of the first frame; 
 request a transition context switch in the registers and intentionally deferrable to delay the transition context switch to remove the data from the registers until the end of the processing of the first frame and before the start of processing of a next frame when a predetermined state to be saved is smaller than at the time the request is made; and 
 force a context switch in the registers to occur before the end of the processing of the first frame if a condition is met before the request is carried out comprising determining a different state to be saved at the time of the forced context switch. 
 
     
     
       18. The media of  claim 17  comprising instructions that cause the computing device to schedule the transition to occur during a predictable transition in a process being performed by a processing accelerator of the processor. 
     
     
       19. The media of  claim 17  comprising instructions that cause the computing device to force the context switch when waiting for the deferred context switch to occur will cause the processor to miss a time-based target. 
     
     
       20. The media of  claim 19  wherein the time-based target is associated with a target frame rate associated with a video sequence. 
     
     
       21. The media of  claim 17  comprising checking whether the request for a context switch is under control of a program. 
     
     
       22. The media of  claim 17  comprising instructions to:
 schedule the transition to occur during a predictable transition in a process being performed by a processing accelerator of the processor; 
 force the context switch when waiting for the deferred context switch to occur will cause the processor to miss a time-based target, wherein the time-based target is associated with a target frame rate associated with a video sequence 
 check whether the request for a context switch is under control of a program; and 
 execute a callback in response to the request being set, said callback determining the state that is to be saved as part of said context switch, wherein the state at least comprises data indicating the hardware settings to perform a process, and a program counter setting to indicate where along the process the context switch occurred.

Join the waitlist — get patent alerts

Track US10031770B2 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.