Patents by Inventor Kesavan Shanmugam

Kesavan Shanmugam 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: 11960750
    Abstract: Replication of data from a primary computing system to a secondary computing system. The replication is single-threaded or multi-threaded depending on one or more characteristics of the data to be replicated. As an example, the characteristics could include the type of data being replicated and/or the variability on that data. Also, the multi-threading capabilities of the primary and secondary computing systems are determined. Then, based on the identified one or more characteristics of the data, the primary computing system decides whether to perform multi-threaded replication and the multi-threading parameters of the replication based on the one or more characteristics of that data, as well as on the multi-threading capabilities of the primary and secondary computing system.
    Type: Grant
    Filed: December 8, 2022
    Date of Patent: April 16, 2024
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Deepak Verma, Kesavan Shanmugam, Michael Gregory Montwill
  • Publication number: 20230095358
    Abstract: Replication of data from a primary computing system to a secondary computing system. The replication is single-threaded or multi-threaded depending on one or more characteristics of the data to be replicated. As an example, the characteristics could include the type of data being replicated and/or the variability on that data. Also, the multi-threading capabilities of the primary and secondary computing systems are determined. Then, based on the identified one or more characteristics of the data, the primary computing system decides whether to perform multi-threaded replication and the multi-threading parameters of the replication based on the one or more characteristics of that data, as well as on the multi-threading capabilities of the primary and secondary computing system.
    Type: Application
    Filed: December 8, 2022
    Publication date: March 30, 2023
    Inventors: Deepak VERMA, Kesavan SHANMUGAM, Michael Gregory MONTWILL
  • Publication number: 20230029481
    Abstract: Providing custom machine learning models to client computer systems. Multiple machine learning models are accessed. Client-specific data for multiple client computer systems are also accessed. For each of at least some of the client computer systems, performing the following actions: First, using the corresponding client-specific data for the corresponding client computer system to determine which subset of the multiple machine learning models is applicable to the corresponding client computer system. The subset of the multiple machine learning models includes more than one of the multiple machine learning models. Then, aggregating the determined subset of the multiple machine learning models to generate an aggregated subset of machine learning models that is customized to the corresponding client computer system.
    Type: Application
    Filed: October 10, 2022
    Publication date: February 2, 2023
    Inventors: Jonathan Daniel KEECH, Kesavan SHANMUGAM, Simon CALVERT, Mark A. WILSON-THOMAS, Vivian Julia LIM
  • Patent number: 11537310
    Abstract: Replication of data from a primary computing system to a secondary computing system. The replication is single-threaded or multi-threaded depending on one or more characteristics of the data to be replicated. As an example, the characteristics could include the type of data being replicated and/or the variability on that data. Also, the multi-threading capabilities of the primary and secondary computing systems are determined. Then, based on the identified one or more characteristics of the data, the primary computing system decides whether to perform multi-threaded replication and the multi-threading parameters of the replication based on the one or more characteristics of that data, as well as on the multi-threading capabilities of the primary and secondary computing system.
    Type: Grant
    Filed: February 5, 2021
    Date of Patent: December 27, 2022
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Deepak Verma, Kesavan Shanmugam, Michael Gregory Montwill
  • Patent number: 11475370
    Abstract: Providing custom machine learning models to client computer systems. Multiple machine learning models are accessed. Client-specific data for multiple client computer systems are also accessed. For each of at least some of the client computer systems, performing the following actions: First, using the corresponding client-specific data for the corresponding client computer system to determine which subset of the multiple machine learning models is applicable to the corresponding client computer system. The subset of the multiple machine learning models includes more than one of the multiple machine learning models. Then, aggregating the determined subset of the multiple machine learning models to generate an aggregated subset of machine learning models that is customized to the corresponding client computer system.
    Type: Grant
    Filed: November 29, 2018
    Date of Patent: October 18, 2022
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Jonathan Daniel Keech, Kesavan Shanmugam, Simon Calvert, Mark A. Wilson-Thomas, Vivian Julia Lim
  • Publication number: 20220253217
    Abstract: Replication of data from a primary computing system to a secondary computing system. The replication is single-threaded or multi-threaded depending on one or more characteristics of the data to be replicated. As an example, the characteristics could include the type of data being replicated and/or the variability on that data. Also, the multi-threading capabilities of the primary and secondary computing systems are determined. Then, based on the identified one or more characteristics of the data, the primary computing system decides whether to perform multi-threaded replication and the multi-threading parameters of the replication based on the one or more characteristics of that data, as well as on the multi-threading capabilities of the primary and secondary computing system.
    Type: Application
    Filed: February 5, 2021
    Publication date: August 11, 2022
    Inventors: Deepak VERMA, Kesavan SHANMUGAM, Michael Gregory MONTWILL
  • Publication number: 20220198003
    Abstract: Detecting whether or not an open source software package has functionality which is not described by the source code used to build the open source software package. To do so, in one embodiment, this is done by accessing source code used to build the open source software package. The open source software package is built from the source code. After the open source software package has been rebuilt, then it is computed whether or not the rebuilt package accomplishes the same functions as the open source software package. Finally, if the rebuilt package does not accomplish the same functions as the open source software package, an alert is raised.
    Type: Application
    Filed: December 22, 2020
    Publication date: June 23, 2022
    Inventors: Jason R. SHAVER, Gabriel Pedro DE CASTRO, Kesavan SHANMUGAM, Yuval MAZOR
  • Publication number: 20200410390
    Abstract: The behavior of a machine learning model and the training dataset used to train the model are monitored to determine when the accuracy of the model's predictions indicate that the model should be retrained. The retraining is determined from one or more precision metrics and a coverage metric that are generated during operation of the model. A precision metric measures the ability of the model to make predictions that are accepted by an inference system and the coverage metric measures the ability of the model to make predictions given a set of input features. In addition, changes made to the training dataset are analyzed and used as an indication of when the model should be retrained.
    Type: Application
    Filed: June 26, 2019
    Publication date: December 31, 2020
    Inventors: SHENGYU FU, SIMON CALVERT, JONATHAN DANIEL KEECH, KESAVAN SHANMUGAM, NEELAKANTAN SUNDARESAN, MARK ALISTAIR WILSON-THOMAS
  • Patent number: 10846203
    Abstract: Tracking edits executed against a file to ensure that the edits are monitored consistently so that language service requests are properly handled. Initially, a collaboration session is established. This collaboration session includes an owner and a participant computer system. Then, the owner computing system receives messages that are directed toward a file stored by the owner computer system. These messages include edits that are to be performed against the file and language service request(s). A file version is then assigned to a subset of these edits. As the subset of edits are executed against the file, the file's state changes. The file versions are published to both the participant computer system and to a language service running on the owner computer system. The language service uses the published file versions to track the edits that are being executed against the file and to respond to the language service request(s).
    Type: Grant
    Filed: April 9, 2018
    Date of Patent: November 24, 2020
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: David Ellis Pugh, Srivatsn Narayanan, Kesavan Shanmugam, Guillaume Jenkins, Jason Ronald William Ramsay, Daniel Lebu, Alexandru Dima, Erich Gamma
  • Patent number: 10810109
    Abstract: A collaboration session is provided in which an owner computer system and a participant computer system are both members. While working within this session, the participant computer system is provided access to a multi-file workspace that is stored locally on the owner computer system. The owner computer system receives a request from the participant computer system. The request is used to gain access to the owner computer system's language service. In response to this request, the owner computer system remotes its language service so that the language service is accessible to the participant computer system.
    Type: Grant
    Filed: January 24, 2018
    Date of Patent: October 20, 2020
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Kesavan Shanmugam, Srivatsn Narayanan, Jason Ronald William Ramsay, Erich Gamma, Dirk Baumer, Charles Eric Lantz, Jonathan Preston Carter, Simon Calvert
  • Patent number: 10754645
    Abstract: Improved techniques for asynchronously displaying the results of a codebase analysis service are provided herein. Initially, machine learning is applied to a corpus of model code. In doing so, a machine learning model is generated, where the model identifies coding practices that are included in the corpus of model code. After this model is generated, then the model is applied to a current codebase by comparing coding practices of the current codebase to the identified coding practices that were extracted, or rather identified, from the corpus of model code. Then, in response to detecting one or more differences between the current codebase's coding practices and the identified coding practices, where the differences satisfy a pre-determined difference threshold, a user interface is caused to display one or more insights. These insights beneficially provide additional detailed information describing the differences.
    Type: Grant
    Filed: December 21, 2018
    Date of Patent: August 25, 2020
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Deborah Chen, Mark Wilson-Thomas, John S. Tilford, Simon Calvert, Kesavan Shanmugam
  • Patent number: 10725748
    Abstract: Improving the results and process of machine learning service in computer program development. A client's codebase is accessed. A set of features are extracted from the client's codebase. One or more features from the set of features are then selected. Thereafter, at least one of the selected features is sent to a machine learning service that uses the received feature(s) to build custom model(s) for the client's computer system.
    Type: Grant
    Filed: November 19, 2018
    Date of Patent: July 28, 2020
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Srivatsn Narayanan, Kesavan Shanmugam, Mark A. Wilson-Thomas, Vivian Julia Lim, Jonathan Daniel Keech, Shengyu Fu
  • Patent number: 10678675
    Abstract: A collaboration session is provided in which an owner computer system and a participant computer system are both members. Within this collaboration session, both the owner and the participant computer systems are provided access to a multi-file workspace's build instance. Here, the multi-file workspace and the build instance are both stored locally on the owner computer system. Further, this workspace includes multiple files of source code. As a result, the build instance is a build of that source code. Various debug commands that are directed to the build instance may be received. Some of these commands originate from the owner computer system while others originate from the participant computer system. These debug commands are then multiplexed, and the build instance is executed in accordance with the multiplexed debug commands. As a result of executing the build instance, debugging data is generated.
    Type: Grant
    Filed: January 24, 2018
    Date of Patent: June 9, 2020
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Rodrigo Andres Varas Silva, Kesavan Shanmugam, Charles Eric Lantz, Jonathan Preston Carter, Simon Calvert, Erich Gamma, Andre Weinand
  • Publication number: 20200175423
    Abstract: Providing custom machine learning models to client computer systems. Multiple machine learning models are accessed. Client-specific data for multiple client computer systems are also accessed. For each of at least some of the client computer systems, performing the following actions: First, using the corresponding client-specific data for the corresponding client computer system to determine which subset of the multiple machine learning models is applicable to the corresponding client computer system. The subset of the multiple machine learning models includes more than one of the multiple machine learning models. Then, aggregating the determined subset of the multiple machine learning models to generate an aggregated subset of machine learning models that is customized to the corresponding client computer system.
    Type: Application
    Filed: November 29, 2018
    Publication date: June 4, 2020
    Inventors: Jonathan Daniel KEECH, Kesavan SHANMUGAM, Simon CALVERT, Mark A. WILSON-THOMAS, Vivian Julia LIM
  • Publication number: 20200159505
    Abstract: Improving the results and process of machine learning service in computer program development. A client's codebase is accessed. A set of features are extracted from the client's codebase. One or more features from the set of features are then selected. Thereafter, at least one of the selected features is sent to a machine learning service that uses the received feature(s) to build custom model(s) for the client's computer system.
    Type: Application
    Filed: November 19, 2018
    Publication date: May 21, 2020
    Inventors: Srivatsn NARAYANAN, Kesavan SHANMUGAM, Mark A. WILSON-THOMAS, Vivian Julia LIM, Jonathan Daniel KEECH, Shengyu FU
  • Patent number: 10481879
    Abstract: Improving how a codebase, which may include source code, related databases, test files, code history, and/or changes, is drafted, edited, debugged, or otherwise developed. Machine learning is performed on a model codebase to establish a machine learning model. When a change to a codebase occurs, the machine learning model may be applied to evaluate that change. A change context providing context for this change is accessed. An analyzer then analyzes the change using the machine learning model and at least a part of the change context to generate an analysis result. Some information about the result is rendered. After rendering that information, a determination regarding how a user responded to the information is performed, and a subsequent analysis is then modified based on the user's response.
    Type: Grant
    Filed: March 30, 2018
    Date of Patent: November 19, 2019
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Joshua Bates Stevens, John S. Tilford, Guillermo Serrato Castilla, Srivatsn Narayanan, Simon Calvert, Mark Alistair Wilson-Thomas, Deborah Chen, Miltiadis Allamanis, Marc Manuel Johannes Brockschmidt, Kesavan Shanmugam
  • Publication number: 20190339948
    Abstract: A computer device is provided that includes a display and a processor configured to execute an integrated development environment that includes code development tools, output for display on the display an editor window of the integrated development environment configured to present a code file and real-time mark-up of the code file, wherein the editor window includes a difference view mode that causes the editor window to emphasize a difference between the code file and a baseline code file. The processor is further configured to perform a function of one of the code development tools on the code file and present a result of the function in the editor window while in the difference view mode.
    Type: Application
    Filed: May 3, 2018
    Publication date: November 7, 2019
    Applicant: Microsoft Technology Licensing, LLC
    Inventors: Ahmed Mohamed METWALLY, Kenneth Lawrence YOUNG, Kesavan SHANMUGAM
  • Patent number: 10459697
    Abstract: A computer device is provided that includes a display and a processor configured to execute an integrated development environment that includes code development tools, output for display on the display an editor window of the integrated development environment configured to present a code file and real-time mark-up of the code file, wherein the editor window includes a difference view mode that causes the editor window to emphasize a difference between the code file and a baseline code file. The processor is further configured to perform a function of one of the code development tools on the code file and present a result of the function in the editor window while in the difference view mode.
    Type: Grant
    Filed: May 3, 2018
    Date of Patent: October 29, 2019
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Ahmed Mohamed Metwally, Kenneth Lawrence Young, Kesavan Shanmugam
  • Publication number: 20190272171
    Abstract: Improved techniques for asynchronously displaying the results of a codebase analysis service are provided herein. Initially, machine learning is applied to a corpus of model code. In doing so, a machine learning model is generated, where the model identifies coding practices that are included in the corpus of model code. After this model is generated, then the model is applied to a current codebase by comparing coding practices of the current codebase to the identified coding practices that were extracted, or rather identified, from the corpus of model code. Then, in response to detecting one or more differences between the current codebase's coding practices and the identified coding practices, where the differences satisfy a pre-determined difference threshold, a user interface is caused to display one or more insights. These insights beneficially provide additional detailed information describing the differences.
    Type: Application
    Filed: December 21, 2018
    Publication date: September 5, 2019
    Inventors: Deborah Chen, Mark Wilson-Thomas, John S. Tilford, Simon Calvert, Kesavan Shanmugam
  • Publication number: 20190243617
    Abstract: Improving how a codebase, which may include source code, related databases, test files, code history, and/or changes, is drafted, edited, debugged, or otherwise developed. Machine learning is performed on a model codebase to establish a machine learning model. When a change to a codebase occurs, the machine learning model may be applied to evaluate that change. A change context providing context for this change is accessed. An analyzer then analyzes the change using the machine learning model and at least a part of the change context to generate an analysis result. Some information about the result is rendered. After rendering that information, a determination regarding how a user responded to the information is performed, and a subsequent analysis is then modified based on the user's response.
    Type: Application
    Filed: March 30, 2018
    Publication date: August 8, 2019
    Inventors: Joshua Bates STEVENS, John S. TILFORD, Guillermo Serrato CASTILLA, Srivatsn NARAYANAN, Simon CALVERT, Mark Alistair WILSON-THOMAS, Deborah CHEN, Miltiadis ALLAMANIS, Marc Manuel Johannes BROCKSCHMIDT, Kesavan SHANMUGAM