Patents by Inventor Thomas A. Piazza

Thomas A. Piazza 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).

  • Publication number: 20170068619
    Abstract: In accordance with some embodiments, a scatter/gather memory approach may be enabled that is exposed or backed by system memory and uses conventional tags and addresses. Thus, such a technique may be more amenable to conventional software developers and their conventional techniques.
    Type: Application
    Filed: September 13, 2016
    Publication date: March 9, 2017
    Inventors: Altug Koker, Thomas A. Piazza, Murali Sundaresan
  • Publication number: 20160371879
    Abstract: In embodiments described herein, graphics hardware is described to reduce the number of wasted clock cycles expended during rasterization and performs coverage test iteration in a cache coherent manner. An exemplary embodiment comprises block selection logic to select an initial block of pixels associated with edges of a primitive and edge determination logic to analyze the initial block of pixels to determine a set of fully covered quadrants of the initial block of pixels and analyze a block of pixels adjacent to the initial block of pixels to determine whether the block of adjacent pixels is void.
    Type: Application
    Filed: June 18, 2015
    Publication date: December 22, 2016
    Inventors: Prasoonkumar Surti, Thomas Piazza, Abhishek R. Appu
  • Patent number: 9471492
    Abstract: In accordance with some embodiments, a scatter/gather memory approach may be enabled that is exposed or backed by system memory and uses conventional tags and addresses. Thus, such a technique may be more amenable to conventional software developers and their conventional techniques.
    Type: Grant
    Filed: May 31, 2013
    Date of Patent: October 18, 2016
    Assignee: Intel Corporation
    Inventors: Altug Koker, Thomas A. Piazza, Murali Sundaresan
  • Publication number: 20160284119
    Abstract: A group of buffers are connected via pointers as free-lists implemented in hardware, such that shader information and output processing information can be efficiently accessed by a multi-rate shader. A free-list storage picks the first available entry. The first free entry that gets allocated then becomes a pointer to another entry.
    Type: Application
    Filed: March 24, 2015
    Publication date: September 29, 2016
    Inventors: Prasoonkumar Surti, Thomas A. Piazza
  • Publication number: 20160275920
    Abstract: The introduction of an “out-of-memory” marker in the sorted tile geometry sequence for a tile may aid in handling out-of-memory frames. This marker allows hardware to continue rendering using the original data stream instead of the sorted data stream. This enables use of the original data stream allows the system to continue rendering without requiring any driver intervention. During the visibility generation/sorting phase, the number of memory pages required for storing the data for a rendering pass is continuously tracked. This tracking includes tracking the pages that are required even if the hardware had not run out-of-memory. This information can be monitored by a graphics driver and the driver can provide more memory pages for the system to work at full efficiency.
    Type: Application
    Filed: March 19, 2015
    Publication date: September 22, 2016
    Inventors: Michael Apodaca, Thomas A. Piazza, Bimal Poddar
  • Publication number: 20160189327
    Abstract: Systems and methods may provide a graphics processor that may identify operating conditions under which certain floating point instructions may utilize power to fewer hardware resources compared to when the instructions are executing under other operating conditions. The operating conditions may be determined by examining operands used in a given instruction, including the relative magnitudes of the operands and whether the operands may be taken as equal to certain defined values. The floating point instructions may include instructions for an addition operation, a multiplication operation, a compare operation, and/or a fused multiply-add operation.
    Type: Application
    Filed: December 26, 2014
    Publication date: June 30, 2016
    Inventors: SUBRAMANIAM MAIYURAN, SHUBH B. SHAH, ASHUTOSH GARG, JIN XU, THOMAS A. PIAZZA, JORGE F. GARCIA PABON, MICHAEL K. DWYER
  • Publication number: 20160180585
    Abstract: An apparatus and method are described for a high throughput rasterizer. For example, one embodiment of an apparatus comprises: block selection logic to select a plurality of pixel blocks associated with edges of a primitive, the plurality of pixel blocks selected based on the pixel blocks having samples which are both inside and outside of the primitive; and edge determination logic to analyze samples of the plurality of pixel blocks selected by the block selection logic and responsively generate data identifying each edge of the primitive; and final mask determination logic to combine the data identifying each edge and generate a final mask representing the primitive.
    Type: Application
    Filed: December 23, 2014
    Publication date: June 23, 2016
    Inventors: SUBRAMANIAM MAIYURAN, THOMAS A. PIAZZA, JORGE F. GARCIA PABON, SHUBH B. SHAH
  • Publication number: 20160092240
    Abstract: An apparatus and method for a SIMD structured branching. For example, one embodiment of a processor comprises: an execution unit having a plurality of channels to execute instructions; and a branch unit to process control flow instructions and to maintain a per channel count for each channel and a control instruction count for the control flow instructions, the branch unit to enable and disable the channels based at least on the per channel count.
    Type: Application
    Filed: September 26, 2014
    Publication date: March 31, 2016
    Inventors: Subramaniam MAIYURAN, Darin M. STARKEY, Thomas A. PIAZZA
  • Publication number: 20160086299
    Abstract: In position-only shading, two geometry pipes exist, a trimmed down version called the Cull Pipe and a full version called the Replay Pipe. Thus, the Cull Pipe executes the position shaders in parallel with the main application, but typically generates the critical results much faster as it fetches and shades only the position attribute of the vertices and avoids the rasterization as well as the rendering of pixels for the frame buffer. Furthermore, the Cull Pipe uses these critical results to compute visibility information for all the triangles whether they are culled or not. On the other hand, the Replay Pipe consumes the visibility information to skip the culled triangles and shades only the visible triangles that are finally passed to the rasterization phase. Together the two pipes can hide the long cull runs of discarded triangles and can complete the work faster in some embodiments.
    Type: Application
    Filed: September 24, 2014
    Publication date: March 24, 2016
    Inventors: Saurabh Sharma, Subramaniam Maiyuran, Thomas A. Piazza, Kalyan K. Bhiravabhatla, Peter L. Doyle, Paul A. Johnson, Bimal Poddar, Jon N. Hasselgren, Carl J. Munkberg, Tomas G. Akenine-Moller, Harri Syrja, Kevin Rogovin, Robert L. Farrell
  • Patent number: 9245324
    Abstract: Techniques related to graphics rendering including lossy color merge for multi-sampling anti-aliasing compression.
    Type: Grant
    Filed: May 23, 2013
    Date of Patent: January 26, 2016
    Assignee: INTEL CORPORATION
    Inventors: Tomas G. Akenine-Moller, Thomas A. Piazza, Prasoonkumar Surti
  • Patent number: 9235926
    Abstract: Various embodiments are generally directed to techniques for causing the storage of a color data value of a clear color to be deferred as rendered color data values are stored for samples. A device comprises a processor circuit and a storage to store instructions that cause the processor circuit to render a pixel from multiple samples taken of a three-dimensional model of an object, the pixel corresponding to a pixel sample data which comprises multiple color storage locations that are each identified by a numeric identifier, and which comprises multiple sample color indices that each correspond to a sample to point to at least one color storage location; and allocate color storage locations in an order selected to define a subset of possible combinations of binary index values among all of the sample color indices as invalid combinations. Other embodiments are described and claimed.
    Type: Grant
    Filed: December 24, 2012
    Date of Patent: January 12, 2016
    Assignee: INTEL CORPORATION
    Inventors: Prasoonkumar Surti, Thomas A. Piazza
  • Publication number: 20150287234
    Abstract: An apparatus may include a memory to store a set of triangle vertices in a triangle, a processor circuit coupled to the memory and a cache to cache a set of triangle vertex indices corresponding to triangle vertices most recently transmitted through a graphics pipeline. The apparatus may also include an autostrip vertex processing component operative on the processor circuit to receive from the memory the set of triangle vertices, compare an index for each vertex of the set of triangle vertices to determine matches to the set of cached triangle vertex indices, and shift a single vertex index into the cache, the single vertex index corresponding to a vertex miss in which a given vertex of the set of triangle vertices does not match any vertex index of the set of cached triangle vertex indices when exactly two matches to the set of cached triangle vertex indices are found.
    Type: Application
    Filed: June 16, 2015
    Publication date: October 8, 2015
    Applicant: INTEL CORPORATION
    Inventors: PETER L. DOYLE, THOMAS A. PIAZZA
  • Patent number: 9087392
    Abstract: An apparatus may include a memory to store a set of triangle vertices in a triangle, a processor circuit coupled to the memory and a cache to cache a set of triangle vertex indices corresponding to triangle vertices most recently transmitted through a graphics pipeline. The apparatus may also include an autostrip vertex processing component operative on the processor circuit to receive from the memory the set of triangle vertices, compare an index for each vertex of the set of triangle vertices to determine matches to the set of cached triangle vertex indices, and shift a single vertex index into the cache, the single vertex index corresponding to a vertex miss in which a given vertex of the set of triangle vertices does not match any vertex index of the set of cached triangle vertex indices when exactly two matches to the set of cached triangle vertex indices are found.
    Type: Grant
    Filed: September 26, 2012
    Date of Patent: July 21, 2015
    Assignee: INTEL CORPORATION
    Inventors: Peter L. Doyle, Thomas A. Piazza
  • Patent number: 9035960
    Abstract: A technique to enable information sharing among agents within different cache coherency domains. In one embodiment, a graphics device may use one or more caches used by one or more processing cores to store or read information, which may be accessed by one or more processing cores in a manner that does not affect programming and coherency rules pertaining to the graphics device.
    Type: Grant
    Filed: April 15, 2012
    Date of Patent: May 19, 2015
    Assignee: Intel Corporation
    Inventors: Zeev Offen, Ariel Berkovits, Thomas A. Piazza, Robert L. Farrell, Altug Koker, Opher Kahn
  • Patent number: 9035962
    Abstract: A technique to enable information sharing among agents within different cache coherency domains. In one embodiment, a graphics device may use one or more caches used by one or more processing cores to store or read information, which may be accessed by one or more processing cores in a manner that does not affect programming and coherency rules pertaining to the graphics device.
    Type: Grant
    Filed: March 15, 2013
    Date of Patent: May 19, 2015
    Assignee: Intel Corporation
    Inventors: Zeev Offen, Ariel Berkovits, Thomas A. Piazza, Robert L. Farrell, Altug Koker, Opher Kahn
  • Patent number: 9035959
    Abstract: A technique to enable information sharing among agents within different cache coherency domains. In one embodiment, a graphics device may use one or more caches used by one or more processing cores to store or read information, which may be accessed by one or more processing cores in a manner that does not affect programming and coherency rules pertaining to the graphics device.
    Type: Grant
    Filed: March 28, 2008
    Date of Patent: May 19, 2015
    Assignee: Intel Corporation
    Inventors: Zeev Offen, Ariel Berkovits, Thomas A. Piazza, Robert L. Farrell, Altug Koker, Opher Kahn
  • Patent number: 8914800
    Abstract: Multiple parallel passive threads of instructions coordinate access to shared resources using “active” and “proactive” semaphores. The active semaphores send messages to execution and/or control circuitry to cause the state of a thread to change. A thread can be placed in an inactive state by a thread scheduler in response to an unresolved dependency, which can be indicated by a semaphore. A thread state variable corresponding to the dependency is used to indicate that the thread is in inactive mode. When the dependency is resolved a message is passed to control circuitry causing the dependency variable to be cleared. In response to the cleared dependency variable the thread is placed in an active state. Execution can proceed on the threads in the active state. A proactive semaphore operates in a similar manner except that the semaphore is configured by the thread dispatcher before or after the thread is dispatched to the execution circuitry for execution.
    Type: Grant
    Filed: November 3, 2009
    Date of Patent: December 16, 2014
    Assignee: Intel Corporation
    Inventors: Hong Jiang, Thomas A. Piazza
  • Publication number: 20140359220
    Abstract: In accordance with some embodiments, a scatter/gather memory approach may be enabled that is exposed or backed by system memory and uses conventional tags and addresses. Thus, such a technique may be more amenable to conventional software developers and their conventional techniques.
    Type: Application
    Filed: May 31, 2013
    Publication date: December 4, 2014
    Inventors: Altug Koker, Thomas A. Piazza, Murali Sundaresan
  • Patent number: 8902915
    Abstract: A context-free (stateless) dataport may allow multiple processors to perform read and write operations on a shared memory. The operations may include, for example, structured data operations such as image and video operations. The dataport may perform addressing computations associated with block memory operations. Therefore, the dataport may be able, for example, to relieve the processors that it serves from this duty. The dataport may be accessed using a message interface that may be implemented in a standard and generalized manner and that may therefore be easily transportable between different types of processors.
    Type: Grant
    Filed: September 24, 2012
    Date of Patent: December 2, 2014
    Assignee: Intel Corporation
    Inventors: Dinakar Munagala, Hong Jiang, Bishara Shomar, Val Cook, Michael K. Dwyer, Thomas Piazza
  • Publication number: 20140347385
    Abstract: Techniques related to graphics rendering including lossy color merge for multi-sampling anti-aliasing compression are discussed.
    Type: Application
    Filed: May 23, 2013
    Publication date: November 27, 2014
    Inventors: Tomas G. Akenine-Moller, Thomas A. Piazza, Prasoonkumar Surti