Patents by Inventor Kirill A. Dmitriev
Kirill A. Dmitriev 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: 10430915Abstract: One or more copy commands are scheduled for locating one or more pages of data in a local memory of a graphics processing unit (GPU) for more efficient access to the pages of data during rendering. A first processing unit that is coupled to a first GPU receives a notification that an access request count has reached a specified threshold. The first processing unit schedules a copy command to copy the first page of data to a first memory circuit of the first GPU from a second memory circuit of the second GPU. The copy command is included within a GPU command stream.Type: GrantFiled: January 24, 2018Date of Patent: October 1, 2019Assignee: NVIDIA CorporationInventors: Andrei Khodakovsky, Kirill A. Dmitriev, Rouslan L. Dimitrov, Tzyywei Hwang, Wishwesh Anil Gandhi, Lacky Vasant Shah
-
Patent number: 10402937Abstract: A method for rendering graphics frames allocates rendering work to multiple graphics processing units (GPUs) that are configured to allow access to pages of data stored in locally attached memory of a peer GPU. The method includes the steps of generating, by a first GPU coupled to a first memory circuit, one or more first memory access requests to render a first primitive for a first frame, where at least one of the first memory access requests targets a first page of data that physically resides within a second memory circuit coupled to a second GPU. The first GPU requests the first page of data through a first data link coupling the first GPU to the second GPU and a register circuit within the first GPU accumulates an access request count for the first page of data. The first GPU notifies a driver that the access request count has reached a specified threshold.Type: GrantFiled: December 28, 2017Date of Patent: September 3, 2019Assignee: NVIDIA CorporationInventors: Rouslan L. Dimitrov, Kirill A. Dmitriev, Andrei Khodakovsky, Tzyywei Hwang, Wishwesh Anil Gandhi, Lacky Vasant Shah
-
Publication number: 20190206018Abstract: One or more copy commands are scheduled for locating one or more pages of data in a local memory of a graphics processing unit (GPU) for more efficient access to the pages of data during rendering. A first processing unit that is coupled to a first GPU receives a notification that an access request count has reached a specified threshold. The first processing unit schedules a copy command to copy the first page of data to a first memory circuit of the first GPU from a second memory circuit of the second GPU. The copy command is included within a GPU command stream.Type: ApplicationFiled: January 24, 2018Publication date: July 4, 2019Inventors: Andrei Khodakovsky, Kirill A. Dmitriev, Rouslan L. Dimitrov, Tzyywei Hwang, Wishwesh Anil Gandhi, Lacky Vasant Shah
-
Publication number: 20190206023Abstract: A method for rendering graphics frames allocates rendering work to multiple graphics processing units (GPUs) that are configured to allow access to pages of data stored in locally attached memory of a peer GPU. The method includes the steps of generating, by a first GPU coupled to a first memory circuit, one or more first memory access requests to render a first primitive for a first frame, where at least one of the first memory access requests targets a first page of data that physically resides within a second memory circuit coupled to a second GPU. The first GPU requests the first page of data through a first data link coupling the first GPU to the second GPU and a register circuit within the first GPU accumulates an access request count for the first page of data. The first GPU notifies a driver that the access request count has reached a specified threshold.Type: ApplicationFiled: December 28, 2017Publication date: July 4, 2019Inventors: Rouslan L. Dimitrov, Kirill A. Dmitriev, Andrei Khodakovsky, Tzyywei Hwang, Wishwesh Anil Gandhi, Lacky Vasant Shah
-
Patent number: 9177413Abstract: A system, method, and computer program product are provided for generating unique primitive identifiers. A specified scope and geometry for a scene is received. A primitive identifier is generated for each primitive of a particular type, where each of the primitive identifiers is unique within the specified scope, and where the primitives are generated as the geometry for the 3D graphics scene is processed by a graphics processing unit. Different types may include patches, triangles, and vertices. The specified scope may be one of a frame, region, pixel, or draw call.Type: GrantFiled: June 26, 2013Date of Patent: November 3, 2015Assignee: NVIDIA CorporationInventors: Andrei S. Tatarinov, Yury Uralsky, Kirill A. Dmitriev
-
Patent number: 9153209Abstract: One embodiment of the present invention sets forth a technique for generating a displacement map. The technique involves receiving a normal map which includes one or more normal vectors associated with a texture map, processing the one or more normal vectors to a calculate one or more depth difference vectors associated with the texture map, and generating one or more rays associated with a first texel of the texture map. The technique further involves calculating, for each of the one or more rays, relative depths of each of the one or more other texels traversed by the ray based on each of the depth difference vectors that correspond with the one or more other texels traversed by the ray, determining a displacement value associated with the first texel based on the relative depths calculated for the one or more rays, and storing the displacement value in a displacement map.Type: GrantFiled: August 6, 2012Date of Patent: October 6, 2015Assignee: NVIDIA CorporationInventor: Kirill Dmitriev
-
Publication number: 20150002508Abstract: A system, method, and computer program product are provided for generating unique primitive identifiers. A specified scope and geometry for a scene is received. A primitive identifier is generated for each primitive of a particular type, where each of the primitive identifiers is unique within the specified scope, and where the primitives are generated as the geometry for the 3D graphics scene is processed by a graphics processing unit. Different types may include patches, triangles, and vertices. The specified scope may be one of a frame, region, pixel, or draw call.Type: ApplicationFiled: June 26, 2013Publication date: January 1, 2015Inventors: Andrei S. Tatarinov, Yury Uralsky, Kirill A. Dmitriev
-
Patent number: 8698802Abstract: One embodiment of the present invention sets forth technique for watertight tessellation in a displaced subdivision surface. A subdivision surface is represented as a novel parametric quad patch that is continuous with respect to position (C0) and partial derivatives (C1) along boundaries as well as interior regions. The novel parametric quad patch is referred to herein as a Hermite Gregory patch and comprises a Hermite patch augmented to include a pair of twist vector parameters per vertex. Each pair of twist vectors is combined into one twist vector during evaluation, according to weights based on proximity to parametric boundaries. Evaluation yields an approximation mesh comprising a position for each vertex and a corresponding normal vector for the vertex. Displacement is performed based on the approximation mesh and a displacement map to generate a displaced approximation mesh that is reflective of the displaced subdivision surface.Type: GrantFiled: October 5, 2010Date of Patent: April 15, 2014Assignee: Nvidia CorporationInventors: Henry Packard Moreton, Ignacio Castaño Aguado, Kirill Dmitriev
-
Publication number: 20140035940Abstract: One embodiment of the present invention sets forth a technique for generating a displacement map. The technique involves receiving a normal map which includes one or more normal vectors associated with a texture map, processing the one or more normal vectors to a calculate one or more depth difference vectors associated with the texture map, and generating one or more rays associated with a first texel of the texture map, where each of the one or more rays associated with the first texel traverses one or more other texels of the texture map.Type: ApplicationFiled: August 6, 2012Publication date: February 6, 2014Applicant: NVIDIA CORPORATIONInventor: Kirill DMITRIEV
-
Patent number: 8570324Abstract: One embodiment of the present invention sets forth technique for watertight evaluation of Gregory patches for Catmull-Clark subdivision surfaces. Each boundary of each patch within a subdivision surface is configured to be owned by one related patch. In general, a given patch may own specific control points for the patch, while certain other control points for the patch may need to be reconstructed because the control points are owned by an adjacent patch. For a given patch, each control point along to a shared boundary is consistently generated using reconstruction data available to the patch. The reconstruction data is generated from values associated with a patch that owns the shared boundary. Because numerically identical data is used to evaluate each patch at each boundary, the boundaries are watertight. One advantage of the present invention is that watertight evaluation may be achieved using similar computational effort versus conventional non-watertight evaluation techniques.Type: GrantFiled: June 30, 2010Date of Patent: October 29, 2013Assignee: NVIDIA CorporationInventors: Kirill Dmitriev, Henry Packard Moreton
-
Publication number: 20110085736Abstract: One embodiment of the present invention sets forth technique for watertight evaluation of Gregory patches for Catmull-Clark subdivision surfaces. Each boundary of each patch within a subdivision surface is configured to be owned by one related patch. In general, a given patch may own specific control points for the patch, while certain other control points for the patch may need to be reconstructed because the control points are owned by an adjacent patch. For a given patch, each control point along to a shared boundary is consistently generated using reconstruction data available to the patch. The reconstruction data is generated from values associated with a patch that owns the shared boundary. Because numerically identical data is used to evaluate each patch at each boundary, the boundaries are watertight. One advantage of the present invention is that watertight evaluation may be achieved using similar computational effort versus conventional non-watertight evaluation techniques.Type: ApplicationFiled: June 30, 2010Publication date: April 14, 2011Applicant: NVIDIA CorporationInventors: Kirill Dmitriev, Henry Packard Moreton
-
Publication number: 20110080405Abstract: One embodiment of the present invention sets forth technique for watertight tessellation in a displaced subdivision surface. A subdivision surface is represented as a novel parametric quad patch that is continuous with respect to position (C0) and partial derivatives (C1) along boundaries as well as interior regions. The novel parametric quad patch is referred to herein as a Hermite Gregory patch and comprises a Hermite patch augmented to include a pair of twist vector parameters per vertex. Each pair of twist vectors is combined into one twist vector during evaluation, according to weights based on proximity to parametric boundaries. Evaluation yields an approximation mesh comprising a position for each vertex and a corresponding normal vector for the vertex. Displacement is performed based on the approximation mesh and a displacement map to generate a displaced approximation mesh that is reflective of the displaced subdivision surface.Type: ApplicationFiled: October 5, 2010Publication date: April 7, 2011Inventors: Henry Packard Moreton, Ignacio Castaño Aguado, Kirill Dmitriev