Patents by Inventor Evgeny Nikitenko

Evgeny Nikitenko 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: 12106417
    Abstract: Incompatible graphics frameworks present a barrier to emulating applications of one operating system (guest OS) upon a computer system employing a different operating system (host OS) such as occurs with virtual machines. Accordingly, in order to address limitations of emulating guest OS graphic pipelines upon the host OS the inventors have established methodologies for cross-platform graphics pipeline emulation, thus enabling efficient implementations of cross-platform virtualization solutions, through the establishment of emulation keys to support generic and specific graphics pipelines together with caching sets of graphical pipelines for subsequent retrieval and execution.
    Type: Grant
    Filed: March 21, 2023
    Date of Patent: October 1, 2024
    Assignee: Parallels International GmbH
    Inventor: Evgeny Nikitenko
  • Patent number: 11763514
    Abstract: An example method of hardware-assisted graphics pipeline emulation comprises: computing, based on an input set of graphic primitives, a set of tessellation factors; computing, based on the input set of graphic primitives, a set of points specifying a plurality of patches; computing, based on the set of points, a tessellation count buffer; generating, based on the set of points and the tessellation count buffer, a tessellation offset buffer; performing, using the tessellation offset buffer, a tessellation setup stage; performing, by a graphics processing unit (GPU), a tessellation stage based on the set of tessellation factors, wherein the tessellation stage generates a plurality of output points corresponding to one or more patches of the plurality of patches; and computing, by a domain shader stage, a plurality of vertex positions defined by the plurality of output points.
    Type: Grant
    Filed: September 6, 2022
    Date of Patent: September 19, 2023
    Assignee: Parallels International GmbH
    Inventors: Evgeny Nikitenko, Alexey Ivanov, Nikolay Dobrovolskiy
  • Patent number: 11727526
    Abstract: Disclosed herein are systems and methods for detecting when geometry shaders output a constant amount of data and writing the data into an output stream buffer. In one aspect, an exemplary method comprises gathering information about a number of block executions associated with the received data, analyzing the gathered information to determine whether constant or variable amount of data is generated for at least one of: a stream output or a rasterization, and when the constant amount of data is generated for the stream output, writing the generated data directly into a stream output buffer, and when the constant amount of data is generated for the rasterization, writing the generated data into a rasterization buffer either directly or through a use of an intermediate index buffer.
    Type: Grant
    Filed: September 23, 2021
    Date of Patent: August 15, 2023
    Assignee: Parallels International GmbH
    Inventors: Evgeny Nikitenko, Alexey Ivanov, Nikolay Dobrovolskiy
  • Patent number: 11640689
    Abstract: Incompatible graphics frameworks present a barrier to emulating applications of one operating system (guest OS) upon a computer system employing a different operating system (host OS) such as occurs with virtual machines. Accordingly, in order to address limitations of emulating guest OS graphic pipelines upon the host OS the inventors have established methodologies for cross-platform graphics pipeline emulation, thus enabling efficient implementations of cross-platform virtualization solutions, through the establishment of emulation keys to support generic and specific graphics pipelines together with caching sets of graphical pipelines for subsequent retrieval and execution.
    Type: Grant
    Filed: March 26, 2021
    Date of Patent: May 2, 2023
    Assignee: Parallels International GmbH
    Inventor: Evgeny Nikitenko
  • Patent number: 11450056
    Abstract: An example method of hardware-assisted graphics pipeline emulation comprises: computing, based on an input set graphic primitives, a set of tessellation factors; computing, based on the input set graphic primitives, a set of points specifying a plurality of patches; computing, based on the set of points, a tessellation count buffer; generating, based on the set of points and the tessellation count buffer, a tessellation offset buffer; performing, using the tessellation offset buffer, a tessellation setup stage; performing, by a graphics processing unit (GPU), a tessellation stage based on the set of tessellation factors, wherein the tessellation stage generates a plurality of output points corresponding to one or more patches of the plurality of patches; and computing, by a domain shader stage, a plurality of vertex positions defined by the plurality of output points.
    Type: Grant
    Filed: May 17, 2021
    Date of Patent: September 20, 2022
    Assignee: Parallels International GMBH
    Inventors: Evgeny Nikitenko, Alexey Ivanov, Nikolay Dobrovolskiy
  • Patent number: 11417059
    Abstract: Disclosed herein are systems and methods for reading input data into a geometry shader by rebuilding an index buffer. In one aspect, an exemplary method comprises constructing T-vectors for one-element ranges of the index buffer by defining each T-vector as a 4-component vector, calculating T-vectors for ranges [0; i] for all vertices of the index buffer by prefix scanning, for each vertex and for each primitive featuring the vertex, determining if the primitive is complete, and for each complete primitive, calculating an offset in an output index buffer using a component of the T-vector used to indicate, for the vertex, a number of complete primitives inside the range and a component that indicates a number of vertices since a last primitive restart, and writing an index value in an output index buffer, and reading input data into the geometry shader in accordance with the written index values.
    Type: Grant
    Filed: January 14, 2021
    Date of Patent: August 16, 2022
    Assignee: Parallels International GmbH
    Inventors: Alexey Ivanov, Evgeny Nikitenko, Nikolay Dobrovolskiy
  • Patent number: 11189002
    Abstract: Disclosed herein are systems and methods for detecting when geometry shaders output a constant amount of data and writing the data into an output stream buffer. In one aspect, an exemplary method comprises gathering information about a number of block executions associated with the received data, analyzing the gathered information to determine whether constant or variable amount of data is generated for at least one of: a stream output or a rasterization, and when the constant amount of data is generated for the stream output, writing the generated data directly into a stream output buffer, and when the constant amount of data is generated for the rasterization, writing the generated data into a rasterization buffer either directly or through a use of an intermediate index buffer.
    Type: Grant
    Filed: July 24, 2019
    Date of Patent: November 30, 2021
    Assignee: Parallels International GmbH
    Inventors: Evgeny Nikitenko, Alexey Ivanov, Nikolay Dobrovolskiy
  • Patent number: 11055896
    Abstract: An example method of hardware-assisted graphics pipeline emulation comprises: computing, based on an input set graphic primitives, a set of tessellation factors; computing, based on the input set graphic primitives, a set of points specifying a plurality of patches; computing, based on the set of points, a tessellation count buffer; generating, based on the set of points and the tessellation count buffer, a tessellation offset buffer; performing, using the tessellation offset buffer, a tessellation setup stage; performing, by a graphics processing unit (GPU), a tessellation stage based on the set of tessellation factors, wherein the tessellation stage generates a plurality of output points corresponding to one or more patches of the plurality of patches; and computing, by a domain shader stage, a plurality of vertex positions defined by the plurality of output points.
    Type: Grant
    Filed: February 25, 2020
    Date of Patent: July 6, 2021
    Assignee: Parallels International GmbH
    Inventors: Evgeny Nikitenko, Alexey Ivanov, Nikolay Dobrovolskiy
  • Patent number: 11030792
    Abstract: Disclosed herein are systems and methods for packing stream outputs of a geometry shader into an output buffer. In one aspect, an exemplary method comprises generating, using vertices of primitives received from one or more geometry shaders, a stream output data together with an index buffer, where each absent vertex is replaced with a primitive restart, rebuilding the index buffer to a list format; and unwrapping the index data of the rebuilt index buffer to a packed buffer.
    Type: Grant
    Filed: May 22, 2019
    Date of Patent: June 8, 2021
    Assignee: Parallel International GmbH
    Inventors: Alexey Ivanov, Evgeny Nikitenko, Nikolay Dobrovolskiy
  • Patent number: 11004263
    Abstract: Disclosed herein are systems and methods for reading input data into a geometry shader by rebuilding an index buffer. In one aspect, an exemplary method comprises constructing T-vectors for one-element ranges of the index buffer by defining each T-vector as a 4-component vector, calculating T-vectors for ranges [0; i] for all vertices of the index buffer by prefix scanning, for each vertex and for each primitive featuring the vertex, determining if the primitive is complete, and for each complete primitive, calculating an offset in an output index buffer using a component of the T-vector used to indicate, for the vertex, a number of complete primitives inside the range and a component that indicates a number of vertices since a last primitive restart, and writing an index value in an output index buffer, and reading input data into the geometry shader in accordance with the written index values.
    Type: Grant
    Filed: May 22, 2019
    Date of Patent: May 11, 2021
    Assignee: Parallels International GmbH
    Inventors: Alexey Ivanov, Evgeny Nikitenko