Coprocessor Register Renaming
US-2024045680-A1 · Feb 8, 2024 · US
US9633407B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9633407-B2 |
| Application number | US-201113193779-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jul 29, 2011 |
| Priority date | Jul 29, 2011 |
| Publication date | Apr 25, 2017 |
| Grant date | Apr 25, 2017 |
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.
A thread on one processor may be used to enable another processor to lock or release a mutex. For example, a central processing unit thread may be used by a graphics processing unit to secure a mutex for a shared memory.
Opening claim text (preview).
What is claimed is: 1. A method comprising: using a first thread and a library on a central processing unit to spawn a second thread on said central processing unit specifically adapted to synchronize the first thread and a third thread on a graphics processing unit by receiving in the said second thread a request from said third thread, in response sending a system call to an operating system of said central processing unit, said second thread sending a response from the operating system to the third thread; and using said second thread to synchronize the third thread on a graphics processing unit and the second thread on the central processing unit. 2. The method of claim 1 including using the first thread running on the central processing unit to lock and unlock mutex for a thread on the graphics processing unit. 3. The method of claim 1 including using the first thread to request a lock or unlock mutex for a thread on a graphics processing unit. 4. The method of claim 3 including enabling said central processing unit to notify said graphics processing unit when a mutex is available. 5. The method of claim 1 including using shared virtual memory with said processing units. 6. A non-transitory computer readable medium storing instructions to enable a computer to: use a first thread and a library on a central processing unit to spawn a second thread on said central processing unit specifically adapted to synchronize the first thread and a third thread on a graphics processing unit by receiving in the said second thread a request from said third thread, in response sending a system call to an operating system of said central processing unit, said second thread sending a response from the operating system to the third thread; and use said second thread to synchronize the third thread on a graphics processing unit and the second thread on a central processing unit. 7. The medium of claim 6 further storing instructions to use the first thread running on a central processing unit to lock mutex for a thread on the graphics processing unit. 8. The medium of claim 7 further storing instructions to use the first thread running on the central processing unit to unlock mutex for a thread on the graphics processing unit. 9. The medium of claim 7 further storing instructions to use the first thread to request a lock or unlock mutex for a thread on a graphics processing unit. 10. The medium of claim 9 further storing instructions to enable said central processing unit to notify said graphics processing unit when a mutex is available. 11. The medium of claim 6 further storing instructions to use shared virtual memory with said processing units. 12. An apparatus comprising: a graphics processing unit; a central processing unit coupled to said graphics processing unit; and a memory shared by said graphics processing unit and said central processing unit, said central processing unit to provide a first thread and a library on a central processing unit to spawn a second thread on said central processing unit specifically adapted to synchronize the first thread and a third thread on a graphics processing unit by receiving in the said second thread a request from said third thread, in response sending a system call to an operating system of said central processing unit, said second thread sending a response from the operating system to the third thread and use said second thread to synchronize the third thread on the graphics processing unit and the second thread on the central processing unit. 13. The apparatus of claim 12 including a graphics processing unit driver on said central processing unit. 14. The apparatus of claim 12 , said first thread to lock or unlock mutex for a thread on the graphics processing unit. 15. The apparatus of claim 14 , said central processing unit to notify said graphics processing unit when a mutex is available. 16. The apparatus of claim 12 wherein said memory is a shared virtual memory. 17. An apparatus comprising: a central processing unit; a memory coupled to said central processing unit; and said central processing unit to use a first thread to launch a second thread to enable synchronization between a third thread on a graphics processing unit by receiving in the said second thread a request from said third thread, in response sending a system call to an operating system of said central processing unit, said second thread sending a response from the operating system to the third thread and the second thread on the central processing unit. 18. The apparatus of claim 17 wherein said central processing unit to use the first thread to lock and unlock mutex for a thread running on a graphics processing unit. 19. The apparatus of claim 18 , said central processing unit to notify said graphics processing unit when a mutex is available. 20. The apparatus of claim 17 including a graphics processor coupled to said central processing unit.
Memory management · CPC title
using a secondary processor, e.g. coprocessor (peripheral processor G06F13/12) · CPC title
Processor architectures; Processor configuration, e.g. pipelining · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.