Face augmentation in video
US-12165275-B2 · Dec 10, 2024 · US
US9530178B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9530178-B2 |
| Application number | US-201514723031-A |
| Country | US |
| Kind code | B2 |
| Filing date | May 27, 2015 |
| Priority date | May 29, 2010 |
| Publication date | Dec 27, 2016 |
| Grant date | Dec 27, 2016 |
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.
Methods and systems may provide for an apparatus having a graphics processing unit (GPU) and a non-volatile memory dedicated to the GPU. If a request for content is detected, a determination may be made as to whether the non-volatile memory contains the content.
Opening claim text (preview).
We claim: 1. A system comprising: a host device having a central processing unit to execute an application; a graphics processing unit; a non-volatile memory dedicated to the graphics processing unit; a volatile memory dedicated to the graphics processing unit; and logic to: detect, at a driver stack, a request for content from the application; determine whether the non-volatile memory contains the content; allocate a buffer resource to the content if the non-volatile memory contains the content; return an identifier of the buffer resource to the host device; transfer the content to the buffer resource if an optimization criterion not based on data compression is met, the optimization criterion to be used by the driver stack, and detect a request for further content from the application if the optimization criterion is not met; and transfer the content from the buffer resource to the volatile memory via a direct memory access request. 2. The system of claim 1 , further including: a graphics card coupled to the graphics processing unit, the non-volatile memory, and the volatile memory; and a bus coupled to the graphics card and the host device. 3. The system of claim 1 , further including: a graphics card coupled to the graphics processing unit and the volatile memory; a first bus coupled to the graphics card and the host device; a memory card coupled to the non-volatile memory; and a second bus coupled to the memory card and the host device. 4. The system of claim 1 , wherein the logic is associated with at least one of the graphics processing unit and the central processing unit, and wherein the optimization criterion is based on one or more of a reordering of work flow, an optimization of a file system for streaming loads, or an optimization of a batching of read/write requests. 5. A non-transitory computer readable storage medium comprising a set of stored instructions which, if executed by a processor, cause a computer to: detect, at a driver stack, a request for content from an application; determine whether a non-volatile memory dedicated to a graphics processing unit contains the content; allocate a buffer resource to the content if the non-volatile memory contains the content; return an identifier of the buffer resource to the host device; transfer the content to the buffer resource if an optimization criterion not based on data compression is met, the optimization criterion to be used by the driver stack, and detect a request for further content from the application if the optimization criterion is not met; and transfer the content from the buffer resource to the volatile memory via a direct memory access request. 6. The computer readable storage medium of claim 5 , wherein the application is a graphics application, and wherein the optimization criterion is based on one or more of a reordering of work flow, an optimization of a file system for streaming loads, or an optimization of a batching of read/write requests. 7. The computer readable storage medium of claim 6 , wherein the content includes texture content. 8. The computer readable storage medium of claim 5 , wherein the content includes procedurally generated content. 9. The computer readable storage medium of claim 5 , wherein the instructions, if executed, further cause a computer to transmit a direct memory access request to the volatile memory. 10. The computer readable storage medium of claim 5 , wherein the request is to be associated with a general-purpose computation on graphics processing unit (GPGPU) workload. 11. The computer readable storage medium of claim 5 , wherein the instructions, if executed, further cause a computer to receive the request for content from a graphics application associated with a host device. 12. An apparatus comprising: a graphics processing unit; a non-volatile memory dedicated to the graphics processing unit; a volatile memory dedicated to the graphics processing unit; and logic to: detect, at a driver stack, a request for content from an application; determine whether the non-volatile memory contains the content; allocate a buffer resource to the content if the non-volatile memory contains the content; return an identifier of the buffer resource to a host device; transfer the content to the buffer resource if an optimization criterion not based on data compression is met, the optimization criterion to be used by the driver stack, and detect a request for further content from the application if the optimization criterion is not met; and transfer the content from the buffer resource to the volatile memory via a direct memory access request. 13. The apparatus of claim 12 , wherein the application is a graphics application. 14. The apparatus of claim 12 , wherein the content includes procedurally generated content. 15. The apparatus of claim 12 , wherein the content includes texture content. 16. The apparatus of claim 12 , wherein the logic is to cause the apparatus to transmit a direct memory access request to the volatile memory. 17. The apparatus of claim 12 , further including a graphics card coupled to the graphics processing unit and the non-volatile memory. 18. The apparatus of claim 12 , further including: a graphics card coupled to the graphics processing unit; and a memory card coupled to the non-volatile memory. 19. The apparatus of claim 12 , wherein the logic is at least partially implemented by the graphics processing unit. 20. The apparatus of claim 12 , further comprising: a non-volatile memory that is dedicated to a central processing unit of a host device; a volatile memory that is dedicated to the central processing unit of the host device; and a bus connecting the central processing unit of the host device to the graphics processing unit, wherein the logic is at least partially implemented by the central processing unit of the host device. 21. The apparatus of claim 20 , wherein the request is to be associated with a general-purpose computation on graphics processing unit (GPGPU) workload. 22. The apparatus of claim 12 , wherein the optimization criterion is based on one or more of a reordering of work flow, an optimization of a file system for streaming loads, an optimization of a batching of read/write requests, or an optimization of spatial locality of accesses.
General purpose rendering architectures · CPC title
Memory management · CPC title
Mixed reality (object pose determination, tracking or camera calibration for mixed reality G06T7/00) · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.