Patents by Inventor Martin Stich
Martin Stich 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: 20240095083Abstract: Approaches for addressing issues associated with processing workloads that exhibit high divergence in execution and data access are provided. A plurality of workload items to be processed at least partially in parallel may be identified. Coherence information associated with the plurality of workload items may be determined. The plurality of workload items may be enqueued in a segmented queue. The plurality of workload items may be sorted based at least on a similarity of the coherence information. The sorted plurality of workload items may be stored to the queue. Using a set of processing units, the workload items in the queue may be processed at least partially in parallel according to an order of the sorting.Type: ApplicationFiled: February 27, 2023Publication date: March 21, 2024Inventors: Martin Stich, Rasmus Barringer, Robert Toth
-
Publication number: 20230360321Abstract: In various examples, shader bindings may be recorded in a shader binding table that includes shader records. Geometry of a 3D scene may be instantiated using object instances, and each may be associated with a respective set of the shader records using a location identifier of the set of shader records in memory. The set of shader records may represent shader bindings for an object instance under various predefined conditions. One or more of these predefined conditions may be implicit in the way the shader records are arranged in memory (e.g., indexed by ray type, by sub-geometry, etc.). For example, a section selector value (e.g., a section index) may be computed to locate and select a shader record based at least in part on a result of a ray tracing query (e.g., what sub-geometry was hit, what ray type was traced, etc.).Type: ApplicationFiled: July 17, 2023Publication date: November 9, 2023Inventors: Martin Stich, Ignacio Llamas, Steven Parker
-
Publication number: 20230305957Abstract: Various embodiments include techniques for managing cache memory in a computing system. The computing system includes a sectored cache memory that provides a mechanism for software applications to directly invalidate data items stored in the cache memory on a sector-by-sector basis, where a sector is smaller than a cache line. When all sectors in a cache line have been invalidated, the cache line is implicitly invalidated, freeing the cache line to be reallocated for other purposes. In cases where the data items to be invalidated can be aligned to sector boundaries, the disclosed techniques effectively use status indicators in the cache tag memory to track which sectors, and corresponding data items, have been invalidated by the software application. Thus, the disclosed techniques thereby enable a low-overhead solution for invalidating individual data items that are smaller than a cache line without additional tracking data structures or consuming additional memory transfer bandwidth.Type: ApplicationFiled: March 23, 2022Publication date: September 28, 2023Inventors: Michael FETTERMAN, Shirish GADRE, Steven James HEINRICH, Martin STICH, Liang YIN
-
Patent number: 11727632Abstract: In various examples, shader bindings may be recorded in a shader binding table that includes shader records. Geometry of a 3D scene may be instantiated using object instances, and each may be associated with a respective set of the shader records using a location identifier of the set of shader records in memory. The set of shader records may represent shader bindings for an object instance under various predefined conditions. One or more of these predefined conditions may be implicit in the way the shader records are arranged in memory (e.g., indexed by ray type, by sub-geometry, etc.). For example, a section selector value (e.g., a section index) may be computed to locate and select a shader record based at least in part on a result of a ray tracing query (e.g., what sub-geometry was hit, what ray type was traced, etc.).Type: GrantFiled: July 15, 2021Date of Patent: August 15, 2023Assignee: NVIDIA CorporationInventors: Martin Stich, Ignacio Llamas, Steven Parker
-
Patent number: 11474710Abstract: One aspect of the current disclosure provides a method for utilizing a plurality of memories associated with a plurality of devices in a computer system. The method includes: receiving an application-specific data set for executing a ray tracing application employing the devices; determining whether the data set is fully replicable in each memory; when the data set is not fully replicable in any of the memories, determining a maximum amount of the data set that is replicable in each memory while distributing a remaining amount of the data set across the memories; and identifying, based on application-specific information of the ray tracing application, a first subsection of the data set that corresponds to the maximum amount of the data set and a second subsection of the data set that corresponds to the remaining amount of the data set, wherein the first subsection is accessed more frequently than the second subsection.Type: GrantFiled: April 5, 2021Date of Patent: October 18, 2022Assignee: NVIDIA CorporationInventors: Steve Parker, Martin Stich, Konstantin Vostryakov
-
Publication number: 20210343072Abstract: In various examples, shader bindings may be recorded in a shader binding table that includes shader records. Geometry of a 3D scene may be instantiated using object instances, and each may be associated with a respective set of the shader records using a location identifier of the set of shader records in memory. The set of shader records may represent shader bindings for an object instance under various predefined conditions. One or more of these predefined conditions may be implicit in the way the shader records are arranged in memory (e.g., indexed by ray type, by sub-geometry, etc.). For example, a section selector value (e.g., a section index) may be computed to locate and select a shader record based at least in part on a result of a ray tracing query (e.g., what sub-geometry was hit, what ray type was traced, etc.).Type: ApplicationFiled: July 15, 2021Publication date: November 4, 2021Inventors: Martin Stich, Ignacio Llamas, Steven Parker
-
Publication number: 20210232325Abstract: One aspect of the current disclosure provides a method for utilizing a plurality of memories associated with a plurality of devices in a computer system. The method includes: receiving an application-specific data set for executing a ray tracing application employing the devices; determining whether the data set is fully replicable in each memory; when the data set is not fully replicable in any of the memories, determining a maximum amount of the data set that is replicable in each memory while distributing a remaining amount of the data set across the memories; and identifying, based on application-specific information of the ray tracing application, a first subsection of the data set that corresponds to the maximum amount of the data set and a second subsection of the data set that corresponds to the remaining amount of the data set, wherein the first subsection is accessed more frequently than the second subsection.Type: ApplicationFiled: April 5, 2021Publication date: July 29, 2021Inventors: Steve Parker, Martin Stich, Konstantin Vostryakov
-
Patent number: 11069129Abstract: In various examples, shader bindings may be recorded in a shader binding table that includes shader records. Geometry of a 3D scene may be instantiated using object instances, and each may be associated with a respective set of the shader records using a location identifier of the set of shader records in memory. The set of shader records may represent shader bindings for an object instance under various predefined conditions. One or more of these predefined conditions may be implicit in the way the shader records are arranged in memory (e.g., indexed by ray type, by sub-geometry, etc.). For example, a section selector value (e.g., a section index) may be computed to locate and select a shader record based at least in part on a result of a ray tracing query (e.g., what sub-geometry was hit, what ray type was traced, etc.).Type: GrantFiled: April 5, 2019Date of Patent: July 20, 2021Assignee: NVIDIA CorporationInventors: Martin Stich, Ignacio Llamas, Steven Parker
-
Patent number: 10996865Abstract: One aspect of the current disclosure provides a method for utilizing a plurality of memories associated with a plurality of devices in a computer system. The method includes: 1) receiving a data set for executing an application employing the devices; 2) determining whether the data set is larger than a storage capacity of any of the memories; and 3) when the data set is larger than the storage capacity of any of the memories, replicating a portion of the data set across the memories and distributing a remaining portion of the data set across at least some of the memories.Type: GrantFiled: April 6, 2017Date of Patent: May 4, 2021Assignee: Nvidia CorporationInventors: Steve Parker, Martin Stich, Konstantin Vostryakov
-
Publication number: 20190311531Abstract: In various examples, shader bindings may be recorded in a shader binding table that includes shader records. Geometry of a 3D scene may be instantiated using object instances, and each may be associated with a respective set of the shader records using a location identifier of the set of shader records in memory. The set of shader records may represent shader bindings for an object instance under various predefined conditions. One or more of these predefined conditions may be implicit in the way the shader records are arranged in memory (e.g., indexed by ray type, by sub-geometry, etc.). For example, a section selector value (e.g., a section index) may be computed to locate and select a shader record based at least in part on a result of a ray tracing query (e.g., what sub-geometry was hit, what ray type was traced, etc.).Type: ApplicationFiled: April 5, 2019Publication date: October 10, 2019Inventors: Martin Stich, Ignacio Llamas, Steven Parker
-
Publication number: 20190098380Abstract: A monitoring system can receive sensor measurements from a select sensor of a group of sensors. The sensor measurements are compared to group alert condition or an individual alert condition. Based on the comparison, an alert state can be identified and a user notified of the alert state. The system can automatically determine the individual alert condition, which can be uniquely associated with the select sensor and can be associated with a domain of time.Type: ApplicationFiled: November 13, 2018Publication date: March 28, 2019Inventors: Michael Primm, Richard Jefts, Martin Stich
-
Patent number: 10129611Abstract: A monitoring system can receive sensor measurements from a select sensor of a group of sensors. The sensor measurements are compared to group alert condition or an individual alert condition. Based on the comparison, an alert state can be identified and a user notified of the alert state. The system can automatically determine the individual alert condition, which can be uniquely associated with the select sensor and can be associated with a domain of time.Type: GrantFiled: September 27, 2014Date of Patent: November 13, 2018Assignee: RF CODE, INC.Inventors: Michael Primm, Richard Jefts, Martin Stich
-
Publication number: 20170300253Abstract: One aspect of the current disclosure provides a method for utilizing a plurality of memories associated with a plurality of devices in a computer system. The method includes: 1) receiving a data set for executing an application employing the devices; 2) determining whether the data set is larger than a storage capacity of any of the memories; and 3) when the data set is larger than the storage capacity of any of the memories, replicating a portion of the data set across the memories and distributing a remaining portion of the data set across at least some of the memories.Type: ApplicationFiled: April 6, 2017Publication date: October 19, 2017Inventors: Steve Parker, Martin Stich, Konstantin Vostryakov
-
Patent number: 9460546Abstract: A hierarchical structure for accelerating ray tracing operations in scene rendering includes a plurality of geometry objects, and a single acceleration structure constructed over the collective plurality of geometry objects. Each geometry object includes primitives of a predefined type, whereby primitives within the plurality of geometry objects collectively define a geometry included within a region of the scene which is to be rendered. The single acceleration structure is operable for accelerating ray tracing operations for the primitives included within the plurality of geometry objects, and is constructed over the plurality of the geometry objects without an intervening bounding volume representation of the plurality of primitives included within the geometry objects.Type: GrantFiled: March 30, 2011Date of Patent: October 4, 2016Assignee: NVIDIA CORPORATIONInventors: Martin Stich, Steven Parker, Heiko Friedrich, Andreas Dietrich
-
Patent number: 9430863Abstract: A system, method, and computer program product are provided for constructing a hierarchical acceleration data structure that supports ray tracing of motion blur. In use, scene description data associated with an image to be generated is received. Additionally, a hierarchical acceleration data structure for performing ray tracing on the scene description data is constructed, where the hierarchical acceleration data structure supports ray tracing of motion blur.Type: GrantFiled: October 27, 2011Date of Patent: August 30, 2016Assignee: NVIDIA CorporationInventors: Leonhard Grunschloss, Martin Stich, Sehera Nawaz, Alexander Keller
-
Publication number: 20160094898Abstract: A monitoring system can receive sensor measurements from a select sensor of a group of sensors. The sensor measurements are compared to group alert condition or an individual alert condition. Based on the comparison, an alert state can be identified and a user notified of the alert state. The system can automatically determine the individual alert condition, which can be uniquely associated with the select sensor and can be associated with a domain of time.Type: ApplicationFiled: September 27, 2014Publication date: March 31, 2016Inventors: Michael Primm, Richard Jefts, Martin Stich
-
Patent number: 8922550Abstract: A system and method for constructing a bounding volume hierarchical structure are disclosed. The method includes defining a parent node for the bounding volume hierarchical structure, the parent node including a parent node bounding volume enclosing a plurality of objects. A first cost is computed for performing an object partition of the parent node bounding volume to produce a first plurality of child node bounding volumes, and a second cost is also computed for performing a spatial partitioning of the parent node bounding volume to produce a second plurality of child node bounding volumes. The bounding volume hierarchical structure is constructed employing the second plurality of child node bounding volumes produced from the spatial partitioning of the parent node bounding volume if the second cost is lower than the first cost.Type: GrantFiled: May 22, 2013Date of Patent: December 30, 2014Assignee: NVIDIA CorporationInventor: Martin Stich
-
Publication number: 20140333669Abstract: A system, method, and computer program product for applying a motion blur filter to image data representing a graphical user interface is disclosed. The method includes the steps of generating image data representing a graphical user interface and applying a motion blur filter to at least a portion of the image data in one embodiment, the motion blur filter is applied to the image data by associating one or more motion vectors with the image data, and filtering a plurality of pixels in the image data based on the motion vectors.Type: ApplicationFiled: May 8, 2013Publication date: November 13, 2014Applicant: NVIDIA CorporationInventor: Martin Stich
-
Publication number: 20130249915Abstract: A system and method for constructing a bounding volume hierarchical structure are disclosed. The method includes defining a parent node for the bounding volume hierarchical structure, the parent node including a parent node bounding volume enclosing a plurality of objects. A first cost is computed for performing an object partition of the parent node bounding volume to produce a first plurality of child node bounding volumes, and a second cost is also computed for performing a spatial partitioning of the parent node bounding volume to produce a second plurality of child node bounding volumes. The bounding volume hierarchical structure is constructed employing the second plurality of child node bounding volumes produced from the spatial partitioning of the parent node bounding volume if the second cost is lower than the first cost.Type: ApplicationFiled: May 22, 2013Publication date: September 26, 2013Applicant: NVIDIA CorporationInventor: Martin Stich
-
Patent number: 8471845Abstract: A system and method for constructing a bounding volume hierarchical structure are disclosed. The method includes defining a parent node for the bounding volume hierarchical structure, the parent node including a parent node bounding volume enclosing a plurality of objects. A first cost is computed for performing an object partition of the parent node bounding volume to produce a first plurality of child node bounding volumes, and a second cost is also computed for performing a spatial partitioning of the parent node bounding volume to produce a second plurality of child node bounding volumes. The bounding volume hierarchical structure is constructed employing the second plurality of child node bounding volumes produced from the spatial partitioning of the parent node bounding volume if the second cost is lower than the first cost.Type: GrantFiled: July 31, 2009Date of Patent: June 25, 2013Assignee: NVIDIA CorporationInventor: Martin Stich