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: 11960750Abstract: 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: GrantFiled: December 8, 2022Date of Patent: April 16, 2024Assignee: Microsoft Technology Licensing, LLCInventors: Deepak Verma, Kesavan Shanmugam, Michael Gregory Montwill
-
Publication number: 20230095358Abstract: 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: ApplicationFiled: December 8, 2022Publication date: March 30, 2023Inventors: Deepak VERMA, Kesavan SHANMUGAM, Michael Gregory MONTWILL
-
Publication number: 20230029481Abstract: 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: ApplicationFiled: October 10, 2022Publication date: February 2, 2023Inventors: Jonathan Daniel KEECH, Kesavan SHANMUGAM, Simon CALVERT, Mark A. WILSON-THOMAS, Vivian Julia LIM
-
Patent number: 11537310Abstract: 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: GrantFiled: February 5, 2021Date of Patent: December 27, 2022Assignee: Microsoft Technology Licensing, LLCInventors: Deepak Verma, Kesavan Shanmugam, Michael Gregory Montwill
-
Patent number: 11475370Abstract: 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: GrantFiled: November 29, 2018Date of Patent: October 18, 2022Assignee: Microsoft Technology Licensing, LLCInventors: Jonathan Daniel Keech, Kesavan Shanmugam, Simon Calvert, Mark A. Wilson-Thomas, Vivian Julia Lim
-
Publication number: 20220253217Abstract: 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: ApplicationFiled: February 5, 2021Publication date: August 11, 2022Inventors: Deepak VERMA, Kesavan SHANMUGAM, Michael Gregory MONTWILL
-
Publication number: 20220198003Abstract: 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: ApplicationFiled: December 22, 2020Publication date: June 23, 2022Inventors: Jason R. SHAVER, Gabriel Pedro DE CASTRO, Kesavan SHANMUGAM, Yuval MAZOR
-
Publication number: 20200410390Abstract: 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: ApplicationFiled: June 26, 2019Publication date: December 31, 2020Inventors: SHENGYU FU, SIMON CALVERT, JONATHAN DANIEL KEECH, KESAVAN SHANMUGAM, NEELAKANTAN SUNDARESAN, MARK ALISTAIR WILSON-THOMAS
-
Patent number: 10846203Abstract: 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: GrantFiled: April 9, 2018Date of Patent: November 24, 2020Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: David Ellis Pugh, Srivatsn Narayanan, Kesavan Shanmugam, Guillaume Jenkins, Jason Ronald William Ramsay, Daniel Lebu, Alexandru Dima, Erich Gamma
-
Patent number: 10810109Abstract: 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: GrantFiled: January 24, 2018Date of Patent: October 20, 2020Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Kesavan Shanmugam, Srivatsn Narayanan, Jason Ronald William Ramsay, Erich Gamma, Dirk Baumer, Charles Eric Lantz, Jonathan Preston Carter, Simon Calvert
-
Patent number: 10754645Abstract: 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: GrantFiled: December 21, 2018Date of Patent: August 25, 2020Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Deborah Chen, Mark Wilson-Thomas, John S. Tilford, Simon Calvert, Kesavan Shanmugam
-
Patent number: 10725748Abstract: 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: GrantFiled: November 19, 2018Date of Patent: July 28, 2020Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Srivatsn Narayanan, Kesavan Shanmugam, Mark A. Wilson-Thomas, Vivian Julia Lim, Jonathan Daniel Keech, Shengyu Fu
-
Patent number: 10678675Abstract: 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: GrantFiled: January 24, 2018Date of Patent: June 9, 2020Assignee: Microsoft Technology Licensing, LLCInventors: Rodrigo Andres Varas Silva, Kesavan Shanmugam, Charles Eric Lantz, Jonathan Preston Carter, Simon Calvert, Erich Gamma, Andre Weinand
-
Publication number: 20200175423Abstract: 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: ApplicationFiled: November 29, 2018Publication date: June 4, 2020Inventors: Jonathan Daniel KEECH, Kesavan SHANMUGAM, Simon CALVERT, Mark A. WILSON-THOMAS, Vivian Julia LIM
-
Publication number: 20200159505Abstract: 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: ApplicationFiled: November 19, 2018Publication date: May 21, 2020Inventors: Srivatsn NARAYANAN, Kesavan SHANMUGAM, Mark A. WILSON-THOMAS, Vivian Julia LIM, Jonathan Daniel KEECH, Shengyu FU
-
Patent number: 10481879Abstract: 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: GrantFiled: March 30, 2018Date of Patent: November 19, 2019Assignee: Microsoft Technology Licensing, LLCInventors: 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: 20190339948Abstract: 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: ApplicationFiled: May 3, 2018Publication date: November 7, 2019Applicant: Microsoft Technology Licensing, LLCInventors: Ahmed Mohamed METWALLY, Kenneth Lawrence YOUNG, Kesavan SHANMUGAM
-
Patent number: 10459697Abstract: 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: GrantFiled: May 3, 2018Date of Patent: October 29, 2019Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Ahmed Mohamed Metwally, Kenneth Lawrence Young, Kesavan Shanmugam
-
Publication number: 20190272171Abstract: 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: ApplicationFiled: December 21, 2018Publication date: September 5, 2019Inventors: Deborah Chen, Mark Wilson-Thomas, John S. Tilford, Simon Calvert, Kesavan Shanmugam
-
Publication number: 20190243617Abstract: 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: ApplicationFiled: March 30, 2018Publication date: August 8, 2019Inventors: 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