Patents Assigned to NVidia
  • Patent number: 10152329
    Abstract: One embodiment of the present disclosure sets forth an optimized way to execute pre-scheduled replay operations for divergent operations in a parallel processing subsystem. Specifically, a streaming multiprocessor (SM) includes a multi-stage pipeline configured to insert pre-scheduled replay operations into a multi-stage pipeline. A pre-scheduled replay unit detects whether the operation associated with the current instruction is accessing a common resource. If the threads are accessing data which are distributed across multiple cache lines, then the pre-scheduled replay unit inserts pre-scheduled replay operations behind the current instruction. The multi-stage pipeline executes the instruction and the associated pre-scheduled replay operations sequentially. If additional threads remain unserviced after execution of the instruction and the pre-scheduled replay operations, then additional replay operations are inserted via the replay loop, until all threads are serviced.
    Type: Grant
    Filed: February 9, 2012
    Date of Patent: December 11, 2018
    Assignee: NVIDIA CORPORATION
    Inventors: Michael Fetterman, Stewart Glenn Carlton, Jack Hilaire Choquette, Shirish Gadre, Olivier Giroux, Douglas J. Hahn, Steven James Heinrich, Eric Lyell Hill, Charles McCarver, Omkar Paranjape, Anjana Rajendran, Rajeshwaran Selvanesan
  • Patent number: 10154265
    Abstract: A graphics server and method for streaming rendered content via a remote graphics rendering service. One embodiment of the graphics server includes: (1) a frame capturer configured to capture frames of rendered content at a frame rate, (2) an encoder configured to encode captured frames at the frame rate, and (3) a processor configured to cause encoded frames to be transmitted if the rendered content is at least partially changed, and cause a skip-frame message to be transmitted, the skip-frame message configured to cause the frame capturer to forgo capturing and the encoder to forgo encoding if the rendered content is unchanged.
    Type: Grant
    Filed: June 21, 2013
    Date of Patent: December 11, 2018
    Assignee: Nvidia Corporation
    Inventors: Thomas Meier, Chong Zhang, Bhanu Murthy, Sharad Gupta, Karthik Vitjayan
  • Patent number: 10152312
    Abstract: Compiler techniques for inline parallelism and re-targetable parallel runtime execution of logic iterators enables selection thereof from the source code or dynamically during the object code execution.
    Type: Grant
    Filed: January 21, 2015
    Date of Patent: December 11, 2018
    Assignee: NVIDIA Corporation
    Inventors: Vinod Grover, Thibaut Lutz
  • Patent number: 10152310
    Abstract: A compiler and a method of compiling code that reduces memory bandwidth when processing code on a computer are provided herein. In one embodiment, the method includes: (1) automatically identifying a sequence of operations for fusing, wherein the sequence of operations correspond to instructions from a source code, (2) determining subdivisions of a final output of the sequence of operations, (3) determining input data and intermediate operations needed to obtain a final subdivision output for each of the subdivisions and (4) automatically generating code to fuse the sequence of operations employing the subdivisions, wherein the automatically identifying and the automatically generating are performed by a processor.
    Type: Grant
    Filed: May 27, 2015
    Date of Patent: December 11, 2018
    Assignee: Nvidia Corporation
    Inventors: Mahesh Ravishankar, Paulius Micikevicius, Vinod Grover
  • Patent number: 10151924
    Abstract: A display method and system are disclosed for virtual/augmented reality. The method includes the steps of generating an image by a projection engine and projecting light rays defining the image onto a diffuser holographic optical element (DHOE) located between an observer and a concave mirror element, where a concave surface of the concave mirror element faces the observer. The light rays are projected onto the DHOE at a reference angle that causes the light rays to be diffused to the concave surface of the concave mirror element and the diffused light rays are reflected back to the observer such that the observer perceives a virtual image that appears to the observer at a position behind the concave mirror element and further from the observer than the concave mirror element.
    Type: Grant
    Filed: January 31, 2017
    Date of Patent: December 11, 2018
    Assignee: NVIDIA CORPORATION
    Inventors: Jonghyun Kim, Kaan Aksit, Ward Lopes, David Patrick Luebke
  • Patent number: 10147370
    Abstract: A method, computer program product, and system perform gamma correction for a variable refresh rate display panel. An image is received for display on a screen of a display device. The image is adjusted based on gamma correction factors that are dependent on a variable refresh rate of the display device and the adjusted image is output for display on the screen of the display device.
    Type: Grant
    Filed: October 28, 2016
    Date of Patent: December 4, 2018
    Assignee: NVIDIA CORPORATION
    Inventors: Tom Verbeure, Robert Jan Schutten, Gerrit A. Slavenburg
  • Patent number: 10147222
    Abstract: A multi-pass unit interoperates with a device driver to configure a screen space pipeline to perform multiple processing passes with buffered graphics primitives. The multi-pass unit receives primitive data and state bundles from the device driver. The primitive data includes a graphics primitive and a primitive mask. The primitive mask indicates the specific passes when the graphics primitive should be processed. The state bundles include one or more state settings and a state mask. The state mask indicates the specific passes where the state settings should be applied. The primitives and state settings are interleaved. For a given pass, the multi-pass unit extracts the interleaved state settings for that pass and configures the screen space pipeline according to those state settings. The multi-pass unit also extracts the interleaved graphics primitives to be processed in that pass. Then, the multi-pass unit causes the screen space pipeline to process those graphics primitives.
    Type: Grant
    Filed: November 25, 2015
    Date of Patent: December 4, 2018
    Assignee: NVIDIA CORPORATION
    Inventors: Ziyad Hakura, Cynthia Allison, Dale Kirkland, Jeffrey Bolz, Yury Uralsky, Jonah Alben
  • Patent number: 10146545
    Abstract: Embodiments related to fetching instructions and alternate versions achieving the same functionality as the instructions from an instruction cache included in a microprocessor are provided. In one example, a method is provided, comprising, at an example microprocessor, fetching an instruction from an instruction cache. The example method also includes hashing an address for the instruction to determine whether an alternate version of the instruction which achieves the same functionality as the instruction exists. The example method further includes, if hashing results in a determination that such an alternate version exists, aborting fetching of the instruction and retrieving and executing the alternate version.
    Type: Grant
    Filed: March 13, 2012
    Date of Patent: December 4, 2018
    Assignee: Nvidia Corporation
    Inventors: Ross Segelken, Alex Klaiber, Nathan Tuck, David Dunn
  • Patent number: 10147203
    Abstract: A raster unit is configured to generate different sample patterns for adjacent pixels within a given frame. In addition, the raster unit may adjust the sample patterns between frames. The raster unit includes an index unit that selects a sample pattern table for use with a current frame. For a given pixel, the index unit extracts a sample pattern from the selected sample pattern table. The extracted sample pattern is used to generate coverage information for the pixel. The coverage information for all pixels is then used to generate an image. The resultant image may then be filtered to reduce or remove artifacts induced by the changing of sample locations.
    Type: Grant
    Filed: September 5, 2015
    Date of Patent: December 4, 2018
    Assignee: NVIDIA CORPORATION
    Inventors: Yury Y. Uralsky, Jonah M. Alben, Ankan Banerjee, Gregory Massal, Thomas Petersen, Oleg Kuznetsov, Eric B. Lum, Prakshep Mehta
  • Patent number: 10141930
    Abstract: Three state latch. In accordance with a first embodiment, an electronic circuit includes a single latch having three stable states. The electronic circuit may be configured so that all three outputs reflect a change at any one input in not more than three gate delays. The electronic circuit may further be configured so that when all inputs are set to one, a previous state of the latch is retained and output on the outputs.
    Type: Grant
    Filed: June 4, 2013
    Date of Patent: November 27, 2018
    Assignee: Nvidia Corporation
    Inventors: Andreas J. Gotterba, Jesse S. Wang
  • Patent number: 10139926
    Abstract: A peripheral device for a computing device comprises a body configured for insertion into a storage cavity in the computing device, a first magnet, and a second magnet. The first magnet is disposed within the body proximate a first external surface of the body and having a first pole of a first polarity and a second pole of a second polarity, wherein the first pole is oriented toward the first external surface. The second magnet is disposed within the body between a second external surface and the first magnet and having a first pole of the first polarity and a second pole of the second polarity, wherein the first pole of the second magnet is oriented toward the second external surface.
    Type: Grant
    Filed: December 11, 2015
    Date of Patent: November 27, 2018
    Assignee: NVIDIA CORPORATION
    Inventors: Sergey Murauyou, Nelson Au, Glenn Wernig, Don Miller, Mark Johnson, Tommy Lee
  • Patent number: 10133677
    Abstract: Techniques are disclosed for transitioning a memory page between memories in a virtual memory subsystem. A unified virtual memory (UVM) driver detects a page fault in response to a memory access request associated with a first memory page, where a local page table does not include an entry corresponding to a virtual memory address included in the memory access request. The UVM driver, in response to the page fault, executes a page fault sequence. The page fault sequence includes modifying the ownership state associated with the first memory page to be central-processing-unit-shared. The page fault sequence further includes scheduling the first memory page for migration from a system memory associated with a central processing unit (CPU) to a local memory associated with a parallel processing unit (PPU). One advantage of the disclosed approach is that the PPU accesses memory pages with greater efficiency.
    Type: Grant
    Filed: December 18, 2013
    Date of Patent: November 20, 2018
    Assignee: NVIDIA CORPORATION
    Inventors: Jerome F. Duluk, Jr., Cameron Buschardt, James Leroy Deming, Lucien Dunning, Brian Fahs, Mark Hairgrove, John Mashey
  • Patent number: 10134169
    Abstract: One embodiment of the present invention sets forth a method for accessing texture objects stored within a texture memory. The method comprises the steps of receiving a texture bind request from an application program, wherein the texture bind request includes an object identifier that identifies a first texture object stored in the texture memory and an image identifier that identifies a first image unit, binding the first texture object to the first image unit based on the texture bind request, receiving, within a shader engine, a first shading program command from the application program for performing a first memory access operation on the first texture object, wherein the memory access operation is a store operation or atomic operation to an arbitrary location in the image, and performing, within the shader engine, the first memory access operation on the first texture object via the first image unit.
    Type: Grant
    Filed: August 12, 2010
    Date of Patent: November 20, 2018
    Assignee: NVIDIA CORPORATION
    Inventors: Jeffrey A. Bolz, Patrick R. Brown
  • Patent number: 10128904
    Abstract: A repeater circuit is disclosed. The repeater circuit is coupled to a transmission line driven by a first transmitter circuit and configured to detect a signal transition from a first voltage level to a second voltage level at a first position on the transmission line. The repeater circuit then reinforces the signal transition from the second voltage level to a third voltage level at the first position on the transmission line without interrupting a current through the transmission line.
    Type: Grant
    Filed: June 23, 2015
    Date of Patent: November 13, 2018
    Assignee: NVIDIA CORPORATION
    Inventor: William J. Dally
  • Patent number: 10121220
    Abstract: A parallel processor and a method of reducing texture cache invalidation are disclosed. In one embodiment, the parallel processor includes a cache configured to receive lines of data; and a parallel execution unit associated with the cache and configured to execute parallel counterparts of an operation. The parallel counterparts, when executed, are configured to create, in the cache, corresponding aliases of a line of data pertaining to the operation such that the parallel counterparts are operable to invalidate only the corresponding aliases.
    Type: Grant
    Filed: April 28, 2015
    Date of Patent: November 6, 2018
    Assignee: Nvidia Corporation
    Inventor: Jeffrey Bolz
  • Patent number: 10121276
    Abstract: A method, computer readable medium, and system are disclosed for generating and utilizing infinite resolution texture acceleration data structures. The method for generating an infinite resolution texture acceleration data structure includes the steps of receiving an image; generating an infinite resolution texture acceleration data structure associated with the image that includes a texture map, a curve index map, and a curve data map; and storing the infinite resolution texture acceleration data structure in a memory. The texture map is a two-dimensional array of texels, each texel encoding a color value based on the image. The curve data map encodes parameters for at least one curve segment associated with the image. The curve index map associates each texel in the texture map with zero or more curve segments corresponding with the texel.
    Type: Grant
    Filed: December 1, 2016
    Date of Patent: November 6, 2018
    Assignee: NVIDIA CORPORATION
    Inventors: Alexander V. Reshetov, David Patrick Luebke
  • Patent number: 10123408
    Abstract: A circuit board includes a substrate and a conductive trace. An electronic element is electrically coupled with the conductive trace. A pair of holes pass through the substrate and are disposed respectively at two opposite sides of the conductive trace and adjacent to the conductive trace. A current-measuring device may be adapted for passing through the holes and surrounding the conductive trace.
    Type: Grant
    Filed: March 14, 2012
    Date of Patent: November 6, 2018
    Assignee: Nvidia Corporation
    Inventors: Chih-Jung Lin, Yueh-Lin Liao
  • Patent number: 10118095
    Abstract: One embodiment of the invention sets forth a method that includes receiving a request from a client device to launch an application program for execution on a server device, where the application program is configured to operate in a full-screen display mode, and, in response, creating an execution environment for the application program that disables the full-screen display mode. Within the execution environment, the application program is configured to generate the rendered image data for display on the client device. With the disclosed approach, application programs that are configured to execute on an application server computer system in a full-screen display mode can be executed through an execution environment that includes a shim layer configured to disable the full-screen display mode and transmit the render image data to a client device for display.
    Type: Grant
    Filed: December 14, 2012
    Date of Patent: November 6, 2018
    Assignee: NVIDIA CORPORATION
    Inventor: Franck R. Diard
  • Patent number: 10120028
    Abstract: Systems and methods for latches are presented. In one embodiment a system includes scan in propagation component, data propagation component, and control component. The scan in propagation component is operable to select between a scan in value and a recirculation value. The data propagation component is operable to select between a data value and results forwarded from the scan in propagation component, wherein results of the data propagation component are forwarded as the recirculation value to the scan in propagation component. The control component is operable to control an indication of a selection by the scan in propagation component and the data propagation component.
    Type: Grant
    Filed: September 6, 2016
    Date of Patent: November 6, 2018
    Assignee: Nvidia Corporation
    Inventors: Ilyas Elkin, Ge Yang
  • Patent number: 10120187
    Abstract: A system, computer readable medium, and method for sub-frame scan-out are disclosed. The method includes the steps of dividing a frame into a plurality of slices. For each slice in the plurality of slices, the steps further include sampling a sensor associated with a head mounted display to generate sample data corresponding to the slice; adjusting one or more parameters associated with rendering operations for the slice based on the sample data; and rendering primitive data associated with a model according to the rendering operations to generate image data for the slice. Each slice is a portion of the frame and corresponds to different sample data from the sensor. Thus, adjusting of the parameters is different for each slice of the frame.
    Type: Grant
    Filed: February 18, 2016
    Date of Patent: November 6, 2018
    Assignee: NVIDIA CORPORATION
    Inventors: Craig Michael Wittenbrink, Ziyad Sami Hakura