Patents by Inventor Harikrishna Menon Ajith Kumar
Harikrishna Menon Ajith Kumar 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: 10902548Abstract: Developers receive automatically designated property change events which caused invalidation of a rendered frame. Some embodiments control display invalidation in part by identifying higher-level frame bounding events in an execution trace, and applying at least one display invalidation constituency filter to lower-level thread events within a frame creation period, thereby obtaining a display invalidation constituency sequence of one or more display invalidation events. The sequence may include a layout property change event and/or a render property change event which invalidated the frame. An initial part of the sequence is designated as a display frame creation cause. Displayed frame invalidation is controlled by altering the display invalidation constituency, e.g., by manual or automated layout/render property change event elimination or event sequence location change, by a reduction in computational resource usage (e.g.Type: GrantFiled: October 24, 2018Date of Patent: January 26, 2021Assignee: Microsoft Technology Licensing, LLCInventors: Harikrishna Menon Ajith Kumar, Pankaj Kachrulal Sarda, Carlos Pessoa, David William Shoots, Steven Brix Kirbach
-
Patent number: 10339032Abstract: Technologies are disclosed for providing developers with rule output indicating that issues are or may be present in the code they are developing. Such rule output can include or be accompanied by guidelines and/or best practices structured to aid developers in becoming aware of and resolving the issues. In one example, this involves identifying the issues, making available a mechanism of further investigating the issues, and providing best practices and/or recommended solutions for the issues. Finally, the technologies disclosed may automate application of the recommended solutions. The notifications and accompanying guidance/automation and the like can be provided at design-time, compile-time, and/or run-time with the notifications and accompanying guidance/automation integrated into editors, compilers, debuggers, and other development environment tools providing true real-time and in situ development experience.Type: GrantFiled: May 30, 2016Date of Patent: July 2, 2019Assignee: Microsoft Technology Licensing, LLDInventors: Steven Kirbach, Christophe Philippona, Harikrishna Menon Ajith Kumar, Unnikrishnan Ravindranathan, Daniel Zilcsak, David William Shoots, Fabian Toader
-
Publication number: 20190057485Abstract: Developers receive automatically designated property change events which caused invalidation of a rendered frame. Some embodiments control display invalidation in part by identifying higher-level frame bounding events in an execution trace, and applying at least one display invalidation constituency filter to lower-level thread events within a frame creation period, thereby obtaining a display invalidation constituency sequence of one or more display invalidation events. The sequence may include a layout property change event and/or a render property change event which invalidated the frame. An initial part of the sequence is designated as a display frame creation cause. Displayed frame invalidation is controlled by altering the display invalidation constituency, e.g., by manual or automated layout/render property change event elimination or event sequence location change, by a reduction in computational resource usage (e.g.Type: ApplicationFiled: October 24, 2018Publication date: February 21, 2019Inventors: Harikrishna Menon Ajith Kumar, Pankaj Kachrulal Sarda, Carlos Pessoa, David William Shoots, Steven Brix Kirbach
-
Patent number: 10185643Abstract: Embodiments profile usage of memory and other resource. Stack traces have lifespans, resource impacts, and constituent call chains. Aggregation unifies shared call chains and sums resource impacts after assigning traces to snapshot sets based on trace lifespans and user-defined snapshot request timestamps. Traces are assigned using either active aggregation or precursor aggregation. Traces spanning a snapshot request may be split. A sampled resource trace lifespan begins when the resource is sampled and ends at the next snapshot request. An allocated resource trace lifespan begins when a portion of the resource is allocated and ends when the allocated portion is freed. Resource portions not yet freed are implicitly freed when program execution ends. Call chain interval resource impact aggregation performed with multiple snapshot requests and stack trace sets creates snapshot aggregations.Type: GrantFiled: October 7, 2015Date of Patent: January 22, 2019Assignee: Microsoft Technology Licensing, LLCInventors: Harikrishna Menon Ajith Kumar, Max Williams Brister, Ahmad Khalifa Eesa Ahmad, David W. Shoots
-
Patent number: 10147158Abstract: Developers receive automatically designated property change events which caused invalidation of a rendered frame. Some embodiments control display invalidation in part by identifying higher-level frame bounding events in an execution trace, and applying at least one display invalidation constituency filter to lower-level thread events within a frame creation period, thereby obtaining a display invalidation constituency sequence of one or more display invalidation events. The sequence may include a layout property change event and/or a render property change event which invalidated the frame. An initial part of the sequence is designated as a display frame creation cause. Displayed frame invalidation is controlled by altering the display invalidation constituency, e.g., by manual or automated layout/render property change event elimination or event sequence location change, by a reduction in computational resource usage (e.g.Type: GrantFiled: December 13, 2014Date of Patent: December 4, 2018Assignee: Microsoft Technology Licensing, LLCInventors: Harikrishna Menon Ajith Kumar, Pankaj Kachrulal Sarda, Carlos Pessoa, David William Shoots, Steven Brix Kirbach
-
Publication number: 20170286275Abstract: Technologies are disclosed for providing developers with rule output indicating that issues are or may be present in the code they are developing. Such rule output can include or be accompanied by guidelines and/or best practices structured to aid developers in becoming aware of and resolving the issues. In one example, this involves identifying the issues, making available a mechanism of further investigating the issues, and providing best practices and/or recommended solutions for the issues. Finally, the technologies disclosed may automate application of the recommended solutions. The notifications and accompanying guidance/automation and the like can be provided at design-time, compile-time, and/or run-time with the notifications and accompanying guidance/automation integrated into editors, compilers, debuggers, and other development environment tools providing true real-time and in situ development experience.Type: ApplicationFiled: May 30, 2016Publication date: October 5, 2017Inventors: Steven Kirbach, Christophe Philippona, Harikrishna Menon Ajith Kumar, Unni Ravindranathan, Daniel Zilcsak, David William Shoots, Fabian Toader
-
Patent number: 9703670Abstract: A performance state machine is controlled in part by identifying notifications from an execution trace of an application program, through rapid automatic comparison of trace events to notification events for notification categories. Some notification categories include application startup, page outline load, page data load start, page data load finish, page to page transition, application input, window size change, media query, binding update, page background task start, page background task finish, developer-defined scenario start, and developer-defined scenario finish. Notifications may reflect heuristics such as the time from startup to first frame submission. A state is placed in the performance state machine for each identified notification, with aggregate application performance data for each transition between identified notifications.Type: GrantFiled: January 6, 2015Date of Patent: July 11, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Harikrishna Menon Ajith Kumar, Pankaj Kachrulal Sarda, Carlos Pessoa, David William Shoots
-
Publication number: 20160196198Abstract: A performance state machine is controlled in part by identifying notifications from an execution trace of an application program, through rapid automatic comparison of trace events to notification events for notification categories. Some notification categories include application startup, page outline load, page data load start, page data load finish, page to page transition, application input, window size change, media query, binding update, page background task start, page background task finish, developer-defined scenario start, and developer-defined scenario finish. Notifications may reflect heuristics such as the time from startup to first frame submission. A state is placed in the performance state machine for each identified notification, with aggregate application performance data for each transition between identified notifications.Type: ApplicationFiled: January 6, 2015Publication date: July 7, 2016Inventors: Harikrishna Menon Ajith Kumar, Pankaj Kachrulal Sarda, Carlos Pessoa, David William Shoots
-
Publication number: 20160171640Abstract: Developers receive automatically designated property change events which caused invalidation of a rendered frame. Some embodiments control display invalidation in part by identifying higher-level frame bounding events in an execution trace, and applying at least one display invalidation constituency filter to lower-level thread events within a frame creation period, thereby obtaining a display invalidation constituency sequence of one or more display invalidation events. The sequence may include a layout property change event and/or a render property change event which invalidated the frame. An initial part of the sequence is designated as a display frame creation cause. Displayed frame invalidation is controlled by altering the display invalidation constituency, e.g., by manual or automated layout/render property change event elimination or event sequence location change, by a reduction in computational resource usage (e.g.Type: ApplicationFiled: December 13, 2014Publication date: June 16, 2016Inventors: Harikrishna Menon Ajith Kumar, Pankaj Kachrulal Sarda, Carlos Pessoa, David William Shoots, Steven Brix Kirbach
-
Publication number: 20160026556Abstract: Embodiments profile usage of memory and other resource. Stack traces have lifespans, resource impacts, and constituent call chains. Aggregation unifies shared call chains and sums resource impacts after assigning traces to snapshot sets based on trace lifespans and user-defined snapshot request timestamps. Traces are assigned using either active aggregation or precursor aggregation. Traces spanning a snapshot request may be split. A sampled resource trace lifespan begins when the resource is sampled and ends at the next snapshot request. An allocated resource trace lifespan begins when a portion of the resource is allocated and ends when the allocated portion is freed. Resource portions not yet freed are implicitly freed when program execution ends. Call chain interval resource impact aggregation performed with multiple snapshot requests and stack trace sets creates snapshot aggregations.Type: ApplicationFiled: October 7, 2015Publication date: January 28, 2016Inventors: Harikrishna Menon AJITH KUMAR, Max Williams BRISTER, Ahmad Khalifa Eesa AHMAD, David W. SHOOTS
-
Patent number: 9183116Abstract: Embodiments profile usage of memory and other resources. Stack traces have lifespans, resource impacts, and constituent call chains. Aggregation unifies shared call chains and sums resource impacts after assigning traces to snapshot sets based on trace lifespans and user-defined snapshot request timestamps. Traces are assigned using either active aggregation or precursor aggregation. Traces spanning a snapshot request may be split. A sampled resource trace lifespan begins when the resource is sampled and ends at the next snapshot request. An allocated resource trace lifespan begins when a portion of the resource is allocated and ends when the allocated portion is freed. Resource portions not yet freed are implicitly freed when program execution ends. Call chain interval resource impact aggregation performed with multiple snapshot requests and stack trace sets creates snapshot aggregations.Type: GrantFiled: April 23, 2014Date of Patent: November 10, 2015Assignee: Microsoft Technology Licensing, LLCInventors: Harikrishna Menon Ajith Kumar, Max Williams Brister, Ahmad Khalifa Eesa Ahmad, David W. Shoots
-
Publication number: 20150309915Abstract: Embodiments profile usage of memory and other resource. Stack traces have lifespans, resource impacts, and constituent call chains. Aggregation unifies shared call chains and sums resource impacts after assigning traces to snapshot sets based on trace lifespans and user-defined snapshot request timestamps. Traces are assigned using either active aggregation or precursor aggregation. Traces spanning a snapshot request may be split. A sampled resource trace lifespan begins when the resource is sampled and ends at the next snapshot request. An allocated resource trace lifespan begins when a portion of the resource is allocated and ends when the allocated portion is freed. Resource portions not yet freed are implicitly freed when program execution ends. Call chain interval resource impact aggregation performed with multiple snapshot requests and stack trace sets creates snapshot aggregations.Type: ApplicationFiled: April 23, 2014Publication date: October 29, 2015Applicant: Microsoft CorporationInventors: Harikrishna Menon AJITH KUMAR, Max Williams BRISTER, Ahmad Khalifa Eesa AHMAD, David W. SHOOTS
-
Patent number: 9021428Abstract: Tools and techniques support troubleshooting live application visuals, including transient markup expression issues in XAML or HTML. A LADRT module supports troubleshooting without pausing application execution to help inspect and modify visual construct properties, and to identify and alter source code pertaining to a selected visual construct. Changes are serialized back to the application program source code and reflected in real time in the executing application, without a rebuild. Markup annotation preserves pre-evaluation versions of markup expressions for binding, static resource identification, and custom purposes. Markup annotation also correlates visual constructs and source code. The LADRT module operates independently of debuggers, and may autoload with the application. Program project and source code changes are not required for troubleshooting capability.Type: GrantFiled: May 29, 2013Date of Patent: April 28, 2015Assignee: Microsoft Technology Licensing, LLCInventors: Harikrishna Menon Ajith Kumar, Kenneth Lawrence Young, Unnikrishnan Ravindranathan, Christian Schormann
-
Publication number: 20140359573Abstract: Tools and techniques support troubleshooting live application visuals, including transient markup expression issues in XAML or HTML. A LADRT module supports troubleshooting without pausing application execution to help inspect and modify visual construct properties, and to identify and alter source code pertaining to a selected visual construct. Changes are serialized back to the application program source code and reflected in real time in the executing application, without a rebuild. Markup annotation preserves pre-evaluation versions of markup expressions for binding, static resource identification, and custom purposes. Markup annotation also correlates visual constructs and source code. The LADRT module operates independently of debuggers, and may autoload with the application. Program project and source code changes are not required for troubleshooting capability.Type: ApplicationFiled: May 29, 2013Publication date: December 4, 2014Applicant: Microsoft CorporationInventors: Harikrishna Menon Ajith Kumar, Kenneth Lawrence Young, Unnikrishnan Ravindranathan, Christian Schormann