Patents Assigned to Silicon Graphics
  • Patent number: 7370154
    Abstract: A method and apparatus for maintaining coherence information in multi-cache systems is described herein. In one embodiment, the apparatus includes an Ingrained Sharing Directory Cache (ISDC) to store state information about recent copies of local memory blocks. The ISDC is adapted to receive Ingrained Sharing Directory Storage (ISDS) requests and create ISDC entries from information presented by the ISDS. The apparatus also includes an ISDC pending queue to store pending ISDC operations.
    Type: Grant
    Filed: February 24, 2004
    Date of Patent: May 6, 2008
    Assignee: Silicon Graphics, Inc.
    Inventor: Tomasz Kaczynski
  • Patent number: 7362335
    Abstract: A system and method for rendering with an object proxy. In one embodiment, a method includes forming a set of view textures corresponding to a set of viewing directions; selecting a viewing direction for rendering; selecting at least two view textures from the formed set based on the selected viewing direction; and rendering the object proxy at the selected viewing direction. The rendering step includes applying texture from the selected view textures onto the selected object proxy. The view texture set forming step includes: calculating texture coordinates for the object proxy based on the level of obstruction at different portions of the object proxy and texture packing data; and drawing portions of the object based on the level of obstruction data for the object proxy and based on the texture packing data to obtain a view texture at the selected viewing direction.
    Type: Grant
    Filed: July 19, 2002
    Date of Patent: April 22, 2008
    Assignee: Silicon Graphics, Inc.
    Inventor: Radomir Mech
  • Patent number: 7358974
    Abstract: A method and system for minimizing an amount of data needed to test data against subarea boundaries in spatially composited digital video. Spatial compositing uses a graphics unit or pipeline to render a portion (subarea) of each overall frame of digital video images. This reduces the amount of data that each processor must act on and increases the rate at which an overall frame is rendered. Optimization of spatial compositing depends on balancing the processing load among the different pipelines. The processing load typically is direct function of the size of a given subarea and a function of the rendering complexity for objects within this subarea. Load balancing strives to measure these variables and adjust, from frame to frame, the number, sizes, and positions of the subareas. The cost of this approach is the necessity to communicate, in conjunction with each frame, the graphics data that will be rendered. Graphics data for a frame is composed of geometry chunks.
    Type: Grant
    Filed: January 29, 2002
    Date of Patent: April 15, 2008
    Assignee: Silicon Graphics, Inc.
    Inventors: David R. Blythe, Marc Schafer, Paul Jeffrey Ungar, David Yu
  • Patent number: 7356026
    Abstract: A method of node translation for communicating over virtual channels in a clustered multiprocessor system using connection descriptors (CDs), which specify the endpoint nodes for virtual connections. The system includes a local processing element node, a remote processing element node and a network interconnect therebetween for sending communications between the processing element nodes. The method includes assigning a CD to specify an endpoint node for a virtual connection, defining a local connection table (LCT) to be accessed with the CD to produce a system node identifier (SNID) of the endpoint node, generating a communication request including the CD, accessing the LCT using the CD of that communication request to produce the SNID for the endpoint node of the connection in response to that request, and sending a memory request to the endpoint node.
    Type: Grant
    Filed: December 14, 2001
    Date of Patent: April 8, 2008
    Assignee: Silicon Graphics, Inc.
    Inventors: Steven L. Scott, Chris Dickson, Steve Reinhardt
  • Publication number: 20080049030
    Abstract: A system, method, and computer program product are provided for remote rendering of computer graphics. The system includes a graphics application program resident at a remote server. The graphics application is invoked by a user or process located at a client. The invoked graphics application proceeds to issue graphics instructions. The graphics instructions are received by a remote rendering control system. Given that the client and server differ with respect to graphics context and image processing capability, the remote rendering control system modifies the graphics instructions in order to accommodate these differences. The modified graphics instructions are sent to graphics rendering resources, which produce one or more rendered images. Data representing the rendered images is written to one or more frame buffers. The remote rendering control system then reads this image data from the frame buffers. The image data is transmitted to the client for display or processing.
    Type: Application
    Filed: August 24, 2007
    Publication date: February 28, 2008
    Applicant: Silicon Graphics, Inc.
    Inventor: Phillip Keslin
  • Patent number: 7333516
    Abstract: The present invention provides an interface and method for synchronous data transfer between domains clocked at different frequencies. The interface includes a first latch for receiving data from a first domain clocked at one frequency when the first latch is selected and a second latch for receiving data from the first domain when the second latch is selected. A third latch is provided for transferring data from either the first latch or the second latch to the second domain when the second domain is clocked.
    Type: Grant
    Filed: July 20, 2000
    Date of Patent: February 19, 2008
    Assignee: Silicon Graphics, Inc.
    Inventors: Mark Ronald Sikkink, William A. Huffman, Vernon W. Swanson, Nan Ma, Randal S. Passint
  • Publication number: 20080040689
    Abstract: The present invention is a system that creates a volumetric display and a user controllable volumetric pointer within the volumetric display. The user can point by aiming a beam which is vector, planar or tangent based, positioning a device in three-dimensions in association with the display, touching a digitizing surface of the display enclosure or otherwise inputting position coordinates. The cursor can take a number of different forms including a ray, a point, a volume and a plane. The ray can include a ring, a bead, a segmented wand, a cone and a cylinder. The user designates an input position and the system maps the input position to a 3D cursor position within the volumetric display. The system also determines whether any object has been designated by the cursor by determining whether the object is within a region of influence of the cursor. The system also performs any function activated in association with the designation.
    Type: Application
    Filed: October 12, 2007
    Publication date: February 14, 2008
    Applicant: Silicon Graphics, Inc.
    Inventors: Ravin Balakrishnan, Gordon Kurtenbach, George Fitzmaurice
  • Patent number: 7330587
    Abstract: The present invention provides for a method of and apparatus for compressing and uncompressing image data. According to one embodiment of the present invention, the method of compressing a color cell comprises the steps of: defining at least four luminance levels of the color cell; generating a bitmask for the color cell, the bitmask having a plurality of entries each corresponding to a respective one of the pixels, each of the entries for storing data identifying one of the luminance levels associated with a corresponding one of the pixels; calculating a first average color of pixels associated with a first one of the luminance levels; calculating a second average color of pixels associated with a second one of the luminance levels; and storing the bitmask in association with the first average color and the second average color.
    Type: Grant
    Filed: October 1, 2003
    Date of Patent: February 12, 2008
    Assignee: Silicon Graphics, Inc.
    Inventors: Robert A. Drebin, David (Chi-Shung) Wang, Christopher J. Migdal
  • Patent number: 7327167
    Abstract: This document discusses, among other things, a circuit for selectively engaging an output section based on a received data signal. The output is driven to a high-impedance state in anticipation of a possible change in driving agent. An output section includes active transistor elements and a pre-driver.
    Type: Grant
    Filed: April 28, 2005
    Date of Patent: February 5, 2008
    Assignee: Silicon Graphics, Inc.
    Inventor: Rodney Ruesch
  • Publication number: 20080010284
    Abstract: A cluster of computer system nodes share direct read/write access to storage devices via a storage area network using a cluster filesystem. Access to files on the storage devices is arbitrated by the cluster filesystem using tokens. Upon detection of a change in location of the metadata server, client nodes waiting for a token are interrupted to check on the status of at least one of data and node availability.
    Type: Application
    Filed: April 16, 2007
    Publication date: January 10, 2008
    Applicant: SILICON GRAPHICS, INC.
    Inventor: Kenneth Beck
  • Publication number: 20080005196
    Abstract: A cluster of computer system nodes share direct read/write access to storage devices via a storage area network using a cluster filesystem. Version information about subsystems is acquired by a leader node when forming a cluster membership and distributed to all nodes in the cluster to enable proper messaging during operation.
    Type: Application
    Filed: April 16, 2007
    Publication date: January 3, 2008
    Applicant: SILICON GRAPHICS, INC.
    Inventor: Kenneth Beck
  • Patent number: 7302027
    Abstract: A system and method for distributing data in a system. The system comprises a control register logic circuits located at scattered locations in the system, where a location is defined as scattered if the propagation delay of data sent from the control register is more than approximately one clock period. The system also comprises one or more shift registers coupled to the control register and the logic circuits. A section of each shift register is placed in proximity to each logic circuit and data is shifted serially from the control register through the shift registers to the logic circuits. A synchronizer circuit is coupled to the shift registers to synchronize data arriving at each section of the shift registers with a shift control signal arriving at the same section of the shift register.
    Type: Grant
    Filed: January 31, 2003
    Date of Patent: November 27, 2007
    Assignee: Silicon Graphics, Inc.
    Inventors: David Zhang, Timothy S. Fu
  • Patent number: 7295212
    Abstract: Methods, systems, and computer program products for blending textures used to render computer generated images are provided. In an embodiment of the invention, a MIP-mapped mask texture is constructed. Each MIP-level of the MIP-mapped mask texture includes texels representative of different mask information. The MIP-mapped mask texture is sampled during rendering to obtain mask information. The obtained mask information is used to blend between textures. The invention is used to blend, for example, between multiple textures wherein, zero, one, or more of the textures are MIP-mapped and/or between different levels of one or more three-dimensional textures. In an embodiment, the most appropriate texture amongst multiple textures, each providing coverage at different resolutions, is selected for a fragment being rendered, thereby avoiding texture scintillation.
    Type: Grant
    Filed: April 30, 2003
    Date of Patent: November 13, 2007
    Assignee: Silicon Graphics, Inc.
    Inventor: Paolo Farinelli
  • Patent number: 7274368
    Abstract: A system, method, and computer program product are provided for remote rendering of computer graphics. The system includes a graphics application program resident at a remote server. The graphics application is invoked by a user or process located at a client. The invoked graphics application proceeds to issue graphics instructions. The graphics instructions are received by a remote rendering control system. Given that the client and server differ with respect to graphics context and image processing capability, the remote rendering control system modifies the graphics instructions in order to accommodate these differences. The modified graphics instructions are sent to graphics rendering resources, which produce one or more rendered images. Data representing the rendered images is written to one or more frame buffers. The remote rendering control system then reads this image data from the frame buffers. The image data is transmitted to the client for display or processing.
    Type: Grant
    Filed: July 31, 2000
    Date of Patent: September 25, 2007
    Assignee: Silicon Graphics, Inc.
    Inventor: Phillip C. Keslin
  • Publication number: 20070211053
    Abstract: The present invention is a system that grids original data, maps the data at the grid locations to height values at corresponding landscape image pixel locations and renders the landscape pixels into a three-dimensional (3D) landscape image. The landscape pixels can have arbitrary shapes and can be augmented with additional 3D information from the original data, such as an offset providing additional information, or generated from processing of the original data, such as to alert when a threshold is exceeded, or added for other purposes such as to point out a feature. The pixels can also convey additional information from the original data using other pixel characteristics such as texture, color, transparency, etc.
    Type: Application
    Filed: March 7, 2006
    Publication date: September 13, 2007
    Applicant: SILICON GRAPHICS, INC.
    Inventor: David Hughes
  • Publication number: 20070211065
    Abstract: This application describes a system that captures 3D geometry commands from a first 3D graphics process and stores them in a shared memory. A second 3D environment process creates a 3D display environment using a display and display hardware. A third process obtains the 3D commands and supplies them to the hardware to place 3D objects in the 3D environment. The result is a fused display environment where 3D objects are displayed along with other display elements. Input events in the environment are analyzed and mapped to the 3D graphics process or the environment where they affect corresponding processing.
    Type: Application
    Filed: March 7, 2006
    Publication date: September 13, 2007
    Applicant: SILICON GRAPHICS, INC.
    Inventors: William Feth, David Hughes, Michael Boccara
  • Publication number: 20070195085
    Abstract: A method is disclosed for culling an object database in a graphics processing system. In one embodiment, the method comprises encoding per-object parameters and culling parameters. The per-object parameters are encoded in texture format thereby creating at least one per-object texture containing the encoded per-object parameters. Next, a fragment program used in a fragment processor of the GPU is optionally updated. The updated fragment program embodies a culling operation. A polygon is then rendered, wherein the rendering step includes per-fragment operations. During the per-fragment operations, the updated fragment program is executed. The culling operation embodied therein (i) accesses the culling parameter, (ii) samples the per-object textures, and (iii) produces cull results for a set of database objects. In this fashion, the fragment processor in the GPU is leveraged to perform computationally intensive culling operations.
    Type: Application
    Filed: April 26, 2007
    Publication date: August 23, 2007
    Applicant: Silicon Graphics, Inc.
    Inventor: Paolo Farinelli
  • Publication number: 20070180217
    Abstract: A system that, at a process checkpoint, pauses the process to copy the system state for the process and then copies pages of the process in memory to disk storage while the process continues to run. When a write to a page by the process is to occur that requires a translation from a virtual address to a physical address the write is intercepted. The page that is being modified is duplicated and then the process is allowed to modify the page and continue. The duplicate page is then stored as part of the checkpoint copy.
    Type: Application
    Filed: January 27, 2006
    Publication date: August 2, 2007
    Applicant: Silicon Graphics, Inc.
    Inventors: Michael Raymond, Patrick Donlin
  • Patent number: 7248635
    Abstract: The present invention is directed toward a communications channel comprising a link level protocol, a driver, a receiver, and a canceller/equalizer. The link level protocol provides logic for DC-free signal encoding and recovery as well as supporting many features including CRC error detection and message resend to accommodate infrequent bit errors across the medium. The canceller/equalizer provides equalization for destabilized data signals and also provides simultaneous bi-directional data transfer. The receiver provides bit deskewing by removing synchronization error, or skewing, between data signals. The driver provides impedance controlling by monitoring the characteristics of the communications medium, like voltage or temperature, and providing a matching output impedance in the signal driver so that fewer distortions occur while the data travels across the communications medium.
    Type: Grant
    Filed: July 20, 2000
    Date of Patent: July 24, 2007
    Assignee: Silicon Graphics, Inc.
    Inventors: Michael R. Arneson, Terrance L. Bowman, Frank N. Cornett, John F. DeRyckere, Brian T. Hillert, Philip N. Jenkins, Nan Ma, Joseph M. Placek, Rodney Ruesch, Gregory M. Thorson
  • Patent number: 7249357
    Abstract: Apparatus, methods, data structures, and systems are provided for subdividing input data associated with a first software program into job quanta, wherein each job quantum is operable to be executed by a separate software program residing on a different processing element from the first software program. The first software program and the separate software program execute substantially in parallel and output data associated with the executions of the programs are assembled into a single coherent presentation or results data. Moreover, the software programs may be threaded or non-threaded.
    Type: Grant
    Filed: August 20, 2001
    Date of Patent: July 24, 2007
    Assignee: Silicon Graphics, Inc.
    Inventors: Joseph I. Landman, Haruna Nakamura Cofer, Roberto Gomperts, Dmitri Mikhailov