Patents Assigned to NVidia
  • Patent number: 10235208
    Abstract: A streaming multiprocessor (SM) included within a parallel processing unit (PPU) is configured to suspend a thread group executing on the SM and to save the operating state of the suspended thread group. A load-store unit (LSU) within the SM re-maps local memory associated with the thread group to a location in global memory. Subsequently, the SM may re-launch the suspended thread group. The LSU may then perform local memory access operations on behalf of the re-launched thread group with the re-mapped local memory that resides in global memory.
    Type: Grant
    Filed: December 11, 2012
    Date of Patent: March 19, 2019
    Assignee: NVIDIA CORPORATION
    Inventors: Nicholas Wang, Lacky V. Shah, Gerald F. Luiz, Philip Alexander Cuadra, Luke Durant, Shirish Gadre
  • Patent number: 10237563
    Abstract: A system and method are provided for a 3D modeling system with which an encoded video stream is produced. The system includes a content engine, an encoder, and a fixed function engine. The fixed function engine receives content information from the content engine. The fixed function engine produces encoder information from the content information. The encoder uses the encoder information to produce an encoded video stream having at least one of a higher quality and a lower bandwidth than a video stream encoded without the encoder information.
    Type: Grant
    Filed: December 11, 2012
    Date of Patent: March 19, 2019
    Assignee: Nvidia Corporation
    Inventors: Hassane S. Azar, Bryan Dudash, Rochelle Pereira, Dawid Pajak
  • Patent number: 10232274
    Abstract: A system for multi-client control of an avatar. In one embodiment, the system includes: (1) a game engine configured to execute game code configured to create a game in a game space and accept a response stream to allow said avatar to be controlled and (2) a cooperative play engine associated with said game engine for communication therewith and having a stereoscopic device driver configured to render left-eye and right-eye views of said game space, said cooperative play engine configured to: (2a) transmit said left-eye view toward a first client associated with a first player and (2b) transmit said right-eye view toward a second client associated with a second player.
    Type: Grant
    Filed: April 28, 2015
    Date of Patent: March 19, 2019
    Assignee: Nvidia Corporation
    Inventor: Andrew Fear
  • Patent number: 10234893
    Abstract: A dual-domain dynamic multiplexer and a method of transitioning between asynchronous voltage and frequency domains. One embodiment of the dual-domain dynamic multiplexer includes: (1) a first domain having a first voltage and a first clock, and a second domain having a second voltage and a second clock, (2) a plurality of data and data select input pairs wherein a data input of an input pair is in the first domain and a data select input of an input pair is in the second domain, and (3) a pre-charge stage in the second domain that is energized upon an edge of the second clock, whereby one data and data input pair is enabled and data latched in the second domain upon another edge of the second clock.
    Type: Grant
    Filed: May 13, 2013
    Date of Patent: March 19, 2019
    Assignee: Nvidia Corporation
    Inventors: Guillermo J Rozas, Jason Golbus, Chi Keung Lee
  • Patent number: 10229651
    Abstract: A method for rendering and displaying video. The method includes executing an application at a processor. As instructed by the processor when executing the application, the method includes rendering a plurality of image frames at a plurality of graphics processing units (GPUs). The method includes determining information related to relative timing between renderings of the plurality of image frames. The method includes encoding the plurality of image frames into a video file. The method includes encoding the information into the video file.
    Type: Grant
    Filed: October 31, 2017
    Date of Patent: March 12, 2019
    Assignee: Nvidia Corporation
    Inventors: David Cook, Lu Liu
  • Patent number: 10230405
    Abstract: A receiver, transmitter, and method for a dynamic forward error correction (FEC) are provided. In one embodiment, the method includes: 1) transmitting frames of data during a streaming session according to a FEC repair rate, each frame being contained in a plurality of source packets and having at least one repair packet; and 2) changing the FEC repair rate at least once during the streaming session based on at least one of a number of unrecovered source packets and a number of unused repair packets.
    Type: Grant
    Filed: August 26, 2015
    Date of Patent: March 12, 2019
    Assignee: Nvidia Corporation
    Inventors: Chen Lin, Thomas Meier, Reza Marandian Hagh, Rahul Gowda
  • Patent number: 10229529
    Abstract: A system, method, and computer program product are provided for implementing anti-aliasing operations using a programmable sample pattern table. The method includes the steps of receiving an instruction that causes one or more values to be stored in one or more corresponding entries of the programmable sample pattern table and performing an anti-aliasing operation based on at least one value stored in the programmable sample pattern table. At least one value is selected from the programmable sample pattern table based on, at least in part, a location of one or more corresponding pixels.
    Type: Grant
    Filed: September 6, 2016
    Date of Patent: March 12, 2019
    Assignee: NVIDIA CORPORATION
    Inventors: Eric B. Lum, Jeffrey Alan Bolz, Timothy Paul Lottes, Rui Manuel Bastos, Barry Nolan Rodgers, Gerald F. Luiz
  • Patent number: 10228919
    Abstract: One embodiment of the present invention sets forth a technique for reducing sign-extension instructions (SEIs) included in a computer program, the technique involves receiving intermediate code that is associated with the computer program and includes a first SEI that is included in a loop structure within the computer program, determining that the first SEI is eligible to be moved outside of the loop structure, inserting into a preheader of the loop a second SEI that, when executed by a processor, promotes an original value targeted by the first SEI from a smaller type to a larger type, and replacing the first SEI with one or more intermediate instructions that are eligible for additional compiler optimizations.
    Type: Grant
    Filed: October 26, 2012
    Date of Patent: March 12, 2019
    Assignee: NVIDIA CORPORATION
    Inventors: Akella Sastry, Yuan Lin
  • Patent number: 10223987
    Abstract: A method, computer program product, and system perform DC balancing for a variable refresh rate display panel based on regions. A first portion of a first image is displayed on a first region of a screen of a display device using a spatial inversion pattern and a first polarity of a temporal polarity pattern for the first region of the screen of the display device. A second polarity of a second temporal polarity pattern for a second region of the screen of the display device is determined and a second portion of the first image is displayed on the second region of the screen of the display device using the spatial inversion pattern and the second polarity of the second temporal polarity pattern.
    Type: Grant
    Filed: October 30, 2015
    Date of Patent: March 5, 2019
    Assignee: NVIDIA Corporation
    Inventor: Tom Verbeure
  • Patent number: 10224813
    Abstract: A system and method are provided for controlling a modified buck converter circuit. A pull-up switching mechanism that is coupled to an upstream terminal of an inductor within a modified buck converter circuit is enabled. A load current at the output of the modified buck regulator circuit is measured. A capacitor current associated with a capacitor that is coupled to a downstream terminal of the inductor is continuously sensed and the pull-up switching mechanism is disabled when the capacitor current is greater than a sum of the load current and an enabling current value.
    Type: Grant
    Filed: March 24, 2016
    Date of Patent: March 5, 2019
    Assignee: NVIDIA Corporation
    Inventors: Sudhir Shrikantha Kudva, William J. Dally, Thomas Hastings Greer, III, Carl Thomas Gray
  • Patent number: 10223333
    Abstract: In one embodiment of the present invention a convolution engine configures a parallel processing pipeline to perform multi-convolution operations. More specifically, the convolution engine configures the parallel processing pipeline to independently generate and process individual image tiles. In operation, for each image tile, the pipeline calculates source locations included in an input image batch. Notably, the source locations reflect the contribution of the image tile to an output tile of an output matrix—the result of the multi-convolution operation. Subsequently, the pipeline copies data from the source locations to the image tile. Similarly, the pipeline copies data from a filter stack to a filter tile. The pipeline then performs matrix multiplication operations between the image tile and the filter tile to generate data included in the corresponding output tile. To optimize both on-chip memory usage and execution time, the pipeline creates each image tile in on-chip memory as-needed.
    Type: Grant
    Filed: August 27, 2015
    Date of Patent: March 5, 2019
    Assignee: NVIDIA CORPORATION
    Inventors: Sharanyan Chetlur, Bryan Catanzaro
  • Patent number: 10223122
    Abstract: One embodiment of the present invention sets forth a graphics processing system configured to track event counts in a tile-based architecture. The graphics processing system includes a screen-space pipeline and a tiling unit. The screen-space pipeline includes a first unit, a count memory associated with the first unit, and an accumulating memory associated with the first unit. The first unit is configured to detect an event type and increment the count memory. The tiling unit is configured to cause the screen-space pipeline to update an external memory address to reflect a first value stored in the count memory when the first unit completes processing of a first set of primitives. The tiling unit is also configured to cause the screen-space pipeline to update the accumulating memory to reflect a second value stored in the count memory when the first unit completes processing of a second set of primitives.
    Type: Grant
    Filed: April 9, 2017
    Date of Patent: March 5, 2019
    Assignee: NVIDIA CORPORATION
    Inventors: Ziyad S. Hakura, Jerome F. Duluk, Jr.
  • Patent number: 10216521
    Abstract: A method, computer readable medium, and system are disclosed for error coping. The method includes the steps of receiving, by a processing unit, a set of program instructions including a first program instruction that is responsive to error detection, detecting an error in a value of a first operand of the first program instruction, and determining that error coping execution is selectively enabled for the first instruction. The value for the first operand is replaced with a substitute value and the first program instruction is executed by the processing unit.
    Type: Grant
    Filed: June 20, 2017
    Date of Patent: February 26, 2019
    Assignee: NVIDIA Corporation
    Inventors: Philip Payman Shirvani, Richard Gavin Bramley, John Montrym
  • Patent number: 10219387
    Abstract: A process for manufacturing a printed circuit board having high-density microvias formed in a thick substrate is disclosed. The method includes the steps of forming one or more holes in a thick substrate using a laser drilling technique, electroplating the one or more holes with a conductive material, wherein the conductive material does not completely fill the one or more holes, and filling the one or more plated holes with a non-conductive material.
    Type: Grant
    Filed: January 30, 2013
    Date of Patent: February 26, 2019
    Assignee: NVIDIA CORPORATION
    Inventors: Leilei Zhang, Ronilo V. Boja, Abraham Fong Yee, Zuhair Bokharey
  • Patent number: 10217444
    Abstract: A method for network cloud resource generation, including creating a template virtual machine. The method includes creating an instantiation of a virtual machine for an end user by cloning the template, and loading an application executed by the virtual machine. The method includes accessing first information associated with the end user, and loading the first information in an instantiation of the application.
    Type: Grant
    Filed: December 20, 2013
    Date of Patent: February 26, 2019
    Assignee: NVIDIA Corporation
    Inventors: Franck Diard, Bojan Vukojevic, Matt Lavoie, Yao-Tian Wang
  • Patent number: 10218988
    Abstract: A method for performing image decompression. The method includes identifying a pixel in an image, wherein the image comprises a plurality of tiles including color data that is displayed by a plurality of pixels, wherein each tile is associated with a base value, a delta value, and a plurality of indices. One or more tiles associated with the pixel are identified. An interpolated base is determined by interpolating decompressed bases of the one or more tiles. An interpolated delta is determined by interpolating deltas of the one or more tiles. An index is determined for the pixel. A color value is determined for the pixel based on the interpolated base, interpolated delta, and the index.
    Type: Grant
    Filed: February 23, 2012
    Date of Patent: February 26, 2019
    Assignee: Nvidia Corporation
    Inventors: Walter E. Donovan, Tyson J. Bergland
  • Patent number: 10217183
    Abstract: A system, method, and computer program product are provided for allocating processor resources to process compute workloads and graphics workloads substantially simultaneously. The method includes the steps of allocating a plurality of processing units to process tasks associated with a graphics pipeline, receiving a request to allocate at least one processing unit in the plurality of processing units to process tasks associated with a compute pipeline, and reallocating the at least one processing unit to process tasks associated with the compute pipeline.
    Type: Grant
    Filed: December 20, 2013
    Date of Patent: February 26, 2019
    Assignee: NVIDIA CORPORATION
    Inventors: Gregory S. Palmer, Jerome F. Duluk, Jr., Karim Maher Abdalla, Jonathon S. Evans, Adam Clark Weitkemper, Lacky Vasant Shah, Philip Browning Johnson, Gentaro Hirota
  • Patent number: 10216413
    Abstract: Techniques are provided by which memory pages may be migrated among PPU memories in a multi-PPU system. According to the techniques, a UVM driver determines that a particular memory page should change ownership state and/or be migrated between one PPU memory and another PPU memory. In response to this determination, the UVM driver initiates a peer transition sequence to cause the ownership state and/or location of the memory page to change. Various peer transition sequences involve modifying mappings for one or more PPU, and copying a memory page from one PPU memory to another PPU memory. Several steps in peer transition sequences may be performed in parallel for increased processing speed.
    Type: Grant
    Filed: May 1, 2017
    Date of Patent: February 26, 2019
    Assignee: NVIDIA CORPORATION
    Inventors: Jerome F. Duluk, Jr., John Mashey, Mark Hairgrove, Chenghuan Jia, Cameron Buschardt, Lucien Dunning, Brian Fahs
  • Patent number: 10217184
    Abstract: A processing unit includes multiple execution pipelines, each of which is coupled to a first input section for receiving input data for pixel processing and a second input section for receiving input data for vertex processing and to a first output section for storing processed pixel data and a second output section for storing processed vertex data. The processed vertex data is rasterized and scan converted into pixel data that is used as the input data for pixel processing. The processed pixel data is output to a raster analyzer.
    Type: Grant
    Filed: May 23, 2017
    Date of Patent: February 26, 2019
    Assignee: NVIDIA CORPORATION
    Inventors: John Erik Lindholm, Brett W. Coon, Stuart F. Oberman, Ming Y. Siu, Matthew P. Gerlach
  • Patent number: 10212406
    Abstract: A system and method for computational zoom generates a resulting image having two or more effective focal lengths. A first surface within a three-dimensional (3D) scene including a first and second set of 3D objects defined by 3D information is identified. The first and second sets of 3D objects are located within first and second depth ranges of the 3D scene, respectively. The first set of 3D objects is projected onto the first surface according to a first projection mapping to produce a first portion of image components. The second set of 3D objects is projected onto the first surface according to a second projection mapping to produce a second portion of image components. The resulting image comprising the first portion of image components and the second portion of image components is generated based on a camera projection from the first surface to a camera view plane.
    Type: Grant
    Filed: December 15, 2016
    Date of Patent: February 19, 2019
    Assignee: NVIDIA CORPORATION
    Inventors: Orazio Gallo, Jan Kautz, Abhishek Haridas Badki