Latency-resistant sparse simulation technique, system and method

US9940689B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9940689-B2
Application numberUS-201514930135-A
CountryUS
Kind codeB2
Filing dateNov 2, 2015
Priority dateNov 2, 2015
Publication dateApr 10, 2018
Grant dateApr 10, 2018

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A Central Processing Unit (CPU), system and method of performing a Graphics Processing Unit (GPU) simulation of a fluid-like object in a grid-based simulation space are provided. In one embodiment, the method includes: (1) determining, by a CPU, a list of bricks in the simulation space that the fluid-like object would occupy in a future frame based on simulation data of a current frame and (2) updating, based on the list, a virtual table that maps portions of a GPU memory to tiled resources corresponding to the bricks before a simulation of said future frame.

First claim

Opening claim text (preview).

What is claimed is: 1. A method of performing a GPU simulation of a fluid-like object in a grid-based simulation space, comprising: determining, by a CPU, a list of bricks in said simulation space that said fluid-like object would occupy in a future frame based on simulation data of a current frame; and updating, based on said list, a virtual table that maps portions of a GPU memory to tiled resources corresponding to said bricks before a simulation of said future frame. 2. The method as recited in claim 1 , further comprising allocating said tile resources that correspond to said bricks in said portions of the GPU memory for said simulation of said future frame. 3. The method as recited in claim 1 , wherein each of said bricks includes a plurality of neighboring cells in said simulation space. 4. The method as recited in claim 1 , wherein said virtual table is maintained in hardware. 5. The method as recited in claim 1 , further comprising reading back from a GPU said simulation data of said current frame without causing a CPU-GPU synchronization point. 6. The method as recited in claim 1 , wherein each tile of said tile resources is 64 KB in size. 7. The method as recited in claim 1 , wherein said determining includes using an Euler integration. 8. The method as recited in claim 1 , wherein said list of bricks includes probable bricks that said fluid-like object would likely occupy in said future frame and definite bricks that said fluid-like object would definitely occupy in said future frame. 9. The method as recited in claim 8 , wherein said probable bricks are determined by a dead-reckoning logic in said CPU using a maximum velocity for each of said bricks. 10. The method as recited in claim 1 , for said current frame, said virtual table is updated using a list of bricks that overlap an emitter. 11. The method as recited in claim 1 , wherein said future frame is at least one frame behind said current frame. 12. A system for performing a GPU simulation of a fluid-like object in a grid based simulation space, comprising: a CPU configured to determine a list of bricks in said simulation space that said fluid-like object would occupy in a future frame based on simulation data of a current frame and update, based on said list, a virtual table that maps portions of a GPU memory to tiled resources corresponding to said bricks before a simulation of said future frame; and a GPU including said GPU memory and configured to provide said simulation data of said current frame to said CPU without causing a CPU-GPU synchronization point. 13. The system as recited in claim 12 , wherein said GPU is further configured to allocate said tile resources that correspond to said bricks in portions of the GPU memory for said future frame. 14. The system as recited in claim 12 , wherein each of said bricks includes a plurality of neighboring cells in said simulation space. 15. The system as recited in claim 12 , wherein said virtual table is maintained in hardware. 16. The system as recited in claim 12 , wherein each of said tile resources is 64 KB in size. 17. The system as recited in claim 12 , wherein said list of bricks includes probable bricks that said fluid-like object would likely occupy in said future frame and definite bricks that said fluid-like object would definitely occupy in said future frame. 18. The system as recited in claim 17 , wherein said probable brick are determined by a dead-reckoning logic in said CPU using a maximum velocity for each of said bricks. 19. The system as recited in claim 12 , for a first frame of said GPU simulation, said virtual table is updated using a list of bricks that an emitter would occupy. 20. A CPU for facilitating a GPU simulation of a fluid-like object in a grid-based simulation space, comprising: a processor configured to determine a list of bricks in said simulation space that said fluid-like object would occupy in a future frame based on simulation data of a current frame and update, based on said list, a virtual table that maps portions of a GPU memory to tiled resources corresponding to said bricks before a simulation of said future frame.

Assignees

Inventors

Classifications

  • Fluid dynamics · CPC title

  • Filling planar surfaces by adding surface attributes, e.g. adding colours or textures · CPC title

  • of natural phenomena, e.g. rain, snow, water or plants · CPC title

  • Volume rendering · CPC title

  • G06T1/60Primary

    Memory management · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9940689B2 cover?
A Central Processing Unit (CPU), system and method of performing a Graphics Processing Unit (GPU) simulation of a fluid-like object in a grid-based simulation space are provided. In one embodiment, the method includes: (1) determining, by a CPU, a list of bricks in the simulation space that the fluid-like object would occupy in a future frame based on simulation data of a current frame and (2) …
Who is the assignee on this patent?
Nvidia Corp
What technology area does this patent fall under?
Primary CPC classification G06T1/60. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Apr 10 2018 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 2 related publications on this page (citations in our corpus or others sharing the same primary CPC).