Patents by Inventor Ming Benjamin Zhu

Ming Benjamin Zhu has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 7562186
    Abstract: Storage using resemblance of data segments is disclosed. It is determined that a new segment resembles a prior stored segment. The prior stored segment comprises a segment stored previously from any location in an input data stream. A delta between the new segment and the prior stored segment is determined. A representation of the new segment based at least in part on the delta is stored.
    Type: Grant
    Filed: April 11, 2006
    Date of Patent: July 14, 2009
    Assignee: Data Domain, Inc.
    Inventors: Kai Li, Ming Benjamin Zhu, Umesh Maheshwari, Zheng Yang
  • Publication number: 20080294660
    Abstract: Cluster storage is disclosed. A data stream or a data block is received. The data stream or the data block is broken into segments. For each segment, a cluster node is selected, and in the event that a similar segment to the segment is identified that is already managed by the selected cluster node, a reference to the similar segment and a delta between the similar segment and the segment is caused to be stored on the selected cluster node.
    Type: Application
    Filed: April 9, 2008
    Publication date: November 27, 2008
    Inventors: R. Hugo Patterson, Kai Li, Ming Benjamin Zhu, Sazzala Venkata Reddy, Umesh Maheshwari, Edward K. Lee
  • Publication number: 20080256326
    Abstract: Transmitting or storing subsegments is disclosed. A data stream or a data block is received and broken into a plurality of segments. For at least one segment, the segment is broken into a plurality of subsegments. A previously stored or transmitted segment similar to the at least one segment is identified. A fingerprint is computed for at least one subsegment. And, using the fingerprint for the at least one subsegment, determining whether the at least one subsegment is identical to a subsegment of the previously stored or transmitted segment without directly comparing the content of the at leas one subsegment with the content of the subsegment of the previously stored or transmitted segment.
    Type: Application
    Filed: May 18, 2007
    Publication date: October 16, 2008
    Inventors: R. Hugo Patterson, Ming Benjamin Zhu
  • Patent number: 7434015
    Abstract: A system and method are disclosed for providing efficient data storage. A data stream comprising a plurality of data segments is received. The system determines whether one of the plurality of data segments has been stored previously using a summary in a low latency memory; in the event that the data segment is determined not to have been stored previously, assigning an identifier to the data segment.
    Type: Grant
    Filed: October 16, 2007
    Date of Patent: October 7, 2008
    Inventors: Ming Benjamin Zhu, Kai Li, R. Hugo Patterson
  • Publication number: 20080183767
    Abstract: A system and method are disclosed for providing efficient data storage. A plurality of data segments is received in a data stream. The system determines whether a data segment has been stored previously in a low latency memory. In the event that the data segment is determined to have been stored previously, an identifier for the previously stored data segment is returned.
    Type: Application
    Filed: March 28, 2008
    Publication date: July 31, 2008
    Inventors: Ming Benjamin Zhu, Kai Li, R. Hugo Patterson
  • Publication number: 20080133835
    Abstract: A system and method are disclosed for providing efficient data storage. A data stream comprising a plurality of data segments is received. The system determines whether one of the plurality of data segments has been stored previously using a summary in a low latency memory; in the event that the data segment is determined not to have been stored previously, assigning an identifier to the data segment.
    Type: Application
    Filed: October 16, 2007
    Publication date: June 5, 2008
    Inventors: Ming Benjamin Zhu, Kai Li, R. Hugo Patterson
  • Patent number: 7373464
    Abstract: A method for storing data comprising is disclosed. The method comprises receiving a data stream comprising a plurality of data segments wherein each data segment is associated with an identifier. The method further determining using a subset of identifiers that are stored in a low latency memory whether a data segments has been previously stored and returning the identifier for the data segment in the event the data segment is determined to have been stored previously.
    Type: Grant
    Filed: May 24, 2005
    Date of Patent: May 13, 2008
    Assignee: Data Domain, Inc.
    Inventors: Ming Benjamin Zhu, Kai Li, R. Hugo Patterson
  • Publication number: 20080010322
    Abstract: File system replication includes determining whether one of a plurality of files included in an original file system has been updated since a previous replication, the file having a plurality of data segments, and in the event that the file has been updated, locating among the plurality of data segments a previously stored data segment that is newly referenced by the file, and that does not require replication.
    Type: Application
    Filed: July 6, 2006
    Publication date: January 10, 2008
    Inventors: Edward K. Lee, Ming Benjamin Zhu, Umesh Maheshwari, R. Hugo Patterson
  • Patent number: 7305532
    Abstract: A system and method are disclosed for providing efficient data storage. A data stream comprising a plurality of data segments is received. The system determines whether one of the plurality of data segments has been stored previously using a summary in a low latency memory; in the event that the data segment is determined not to have been stored previously, assigning an identifier to the data segment.
    Type: Grant
    Filed: April 11, 2006
    Date of Patent: December 4, 2007
    Assignee: Data Domain, Inc.
    Inventors: Ming Benjamin Zhu, Kai Li, R. Hugo Patterson
  • Patent number: 7102646
    Abstract: A memory system and methods of operating the same that drastically increase the efficiency in memory use and allocation in graphics systems. In a graphics system using a tiled architecture, instead of pre-allocating a fixed amount of memory for each tile, the invention dynamically allocates varying amounts of memory per tile depending on the demand. In one embodiment all or a portion of the available memory is divided into smaller pages that are preferably equal in size. Memory allocation is done by page based on the amount of memory required for a given tile.
    Type: Grant
    Filed: July 9, 2004
    Date of Patent: September 5, 2006
    Assignee: NVIDIA U.S. Investment Company
    Inventors: Oren Rubinstein, Ming Benjamin Zhu
  • Patent number: 7065619
    Abstract: A system and method are disclosed for providing efficient data storage. A data stream comprising a plurality of data segments is received. The system determines whether one of the plurality of data segments has been stored previously using a summary in a low latency memory; in the event that the data segment is determined not to have been stored previously, assigning an identifier to the data segment.
    Type: Grant
    Filed: December 20, 2002
    Date of Patent: June 20, 2006
    Assignee: Data Domain, Inc.
    Inventors: Ming Benjamin Zhu, Kai Li, R. Hugo Patterson
  • Patent number: 6928526
    Abstract: A system and method are disclosed for providing efficient data storage. A plurality of data segments is received in a data stream. The system determines whether a data segment has been stored previously in a low latency memory. In the event that the data segment is determined to have been stored previously, an identifier for the previously stored data segment is returned.
    Type: Grant
    Filed: December 20, 2002
    Date of Patent: August 9, 2005
    Assignee: DataDomain, Inc.
    Inventors: Ming Benjamin Zhu, Kai Li, R. Hugo Patterson
  • Patent number: 6856320
    Abstract: A memory system and methods of operating the same that drastically increase the efficiency in memory use and allocation in graphics systems. In a graphics system using a tiled architecture, instead of pre-allocating a fixed amount of memory for each tile, the invention dynamically allocates varying amounts of memory per tile depending on the demand. In one embodiment all or a portion of the available memory is divided into smaller pages that are preferably equal in size. Memory allocation is done by page based on the amount of memory required for a given tile.
    Type: Grant
    Filed: November 10, 2000
    Date of Patent: February 15, 2005
    Assignee: NVIDIA U.S. Investment Company
    Inventors: Oren Rubinstein, Ming Benjamin Zhu
  • Patent number: 6697063
    Abstract: A rendering pipeline system for a computer environment uses screen space tiling (SST) to eliminate the memory bandwidth bottleneck due to frame buffer access and performs screen space tiling efficiently, while avoiding the breaking up of primitives. The system also reduces the buffering size required by SST. High quality, full-scene anti-aliasing is easily achieved because only the on-chip multi-sample memory corresponding to a single tile of the screen is needed. The invention uses a double-z scheme that decouples the scan conversion/depth-buffer processing from the more general rasterization and shading processing through a scan/z engine. The scan/z engine externally appears as a fragment generator but internally resolves visibility and allows the rest of the rendering pipeline to perform setup for only visible primitives and shade only visible fragments.
    Type: Grant
    Filed: November 25, 1997
    Date of Patent: February 24, 2004
    Assignee: Nvidia U.S. Investment Company
    Inventor: Ming Benjamin Zhu
  • Patent number: 6657635
    Abstract: Methods and systems for optimizing graphics data processing employ various binning flush algorithms to optimize the utilization of binning memory in a graphics system. Binning flush algorithms provide for processing all geometry and commands binned up to the point the binning memory becomes unavailable, and storing and restoring all necessary intermediate data generated during the partial tile rendering.
    Type: Grant
    Filed: August 31, 2000
    Date of Patent: December 2, 2003
    Assignee: NVIDIA Corporation
    Inventors: Edward Hutchins, Ming Benjamin Zhu, Sanjay O. Gupta, Scott C. Heeschen, Benjamin J. Garlick
  • Patent number: 6535209
    Abstract: A computer graphics system splits vertex data into first and second streams and stores the streams in separate regions of memory. In a specific embodiment, the first stream includes positional data and the second stream includes non-positional color and texture data. A visibility subsystem uses only the first stream to perform visibility processing, thus reducing bandwidth requirement. The rendering system processes data from subsets, identified by the visibility subsystem, of both streams required to render the visible part of a scene.
    Type: Grant
    Filed: November 14, 2000
    Date of Patent: March 18, 2003
    Assignee: Nvidia US Investments Co.
    Inventors: Karim Abdalla, Oren Rubinstein, Ming Benjamin Zhu
  • Patent number: 6380935
    Abstract: A method performed in a graphics processor associates at least a portion (e.g. a triangle) of each primitive received from a CPU with each tile that is affected by the primitive (e.g. by storing the triangle in one or more tile-specific buffers, also called simply “tile buffer”). Moreover, the method stores packets that contain commands (also called “render commands”) for rendering the primitives (also called “command packets”) in a common buffer (called “broadcast buffer”), thereby to eliminate storage of the same commands in each tile buffer. The method repeats the just-described acts of associating primitives and storing command packets for each of a number of packets of primitives and commands that are generated by an application program for the display of a single frame. At a later time, the method uses the command packets from the broadcast buffer with primitives (or portions thereof) in each tile buffer tile, e.g. in one embodiment renders an image.
    Type: Grant
    Filed: March 17, 1999
    Date of Patent: April 30, 2002
    Assignee: Nvidia Corporation
    Inventors: Scott C. Heeschen, Ming Benjamin Zhu
  • Patent number: 6344852
    Abstract: A system and method implemented in hardware are provided to optimize rendering of a computer graphics image, which may be displayed in an image frame comprising a number of tiles. The system and method determine each tile in the image frame touched by a geometry (e.g., a triangle). Graphics data for the geometry is selectively stored into a separate, corresponding portion of memory for each tile touched by the geometry. The graphics data stored in each portion of memory can be readily accessed and used to render a portion of the image in the respective tile of the image frame.
    Type: Grant
    Filed: March 17, 1999
    Date of Patent: February 5, 2002
    Assignee: NVIDIA Corporation
    Inventors: Ming Benjamin Zhu, Scott C. Heeschen
  • Patent number: 6323860
    Abstract: A method performed in a graphics processor postpones the processing of one or more changes in render state until after one or more tiles that are affected by a primitive are identified (e.g. by use of a bounding box around the primitive to identify tiles within the bounding box, or by visiting an area enclosed by vertex tiles and edge tiles of the primitive to identify tiles covered by the primitive). The method may be performed by: storing value(s) of render state(s) on receipt, receiving one or more primitives affected by the render state(s), identifying from among a number of render state(s) whose values are being stored one or more render state(s) whose values have changed since last update to a tile covered by a received primitive, and associating with the covered tile the changed render states.
    Type: Grant
    Filed: March 17, 1999
    Date of Patent: November 27, 2001
    Assignee: Nvidia Corporation
    Inventors: Ming Benjamin Zhu, Scott C. Heeschen