Patents by Inventor Bart J.F. De Smet
Bart J.F. De Smet 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: 11960495Abstract: A data processing system that provides access to operator state information includes a plurality of operators that are configured to perform a computation with respect to data received from data sources. State information is associated with at least one of the plurality of operators. The data processing system also includes an object graph that comprises a representation of the computation, and that may dynamically change at runtime. The data processing system also includes an interface that provides access to the state information via the object graph. The data processing system also includes a query manager that is executable to process a graph query to retrieve the state information by traversing a plurality of nodes within the object graph. Temporal navigation is also supported. Thus, processing a graph query may involve navigating to a node in the object graph at a certain point in time.Type: GrantFiled: September 30, 2022Date of Patent: April 16, 2024Assignee: Microsoft Technology Licensing, LLCInventor: Bart J. F. De Smet
-
Publication number: 20230044884Abstract: A data processing system that provides access to operator state information includes a plurality of operators that are configured to perform a computation with respect to data received from data sources. State information is associated with at least one of the plurality of operators. The data processing system also includes an object graph that comprises a representation of the computation, and that may dynamically change at runtime. The data processing system also includes an interface that provides access to the state information via the object graph. The data processing system also includes a query manager that is executable to process a graph query to retrieve the state information by traversing a plurality of nodes within the object graph. Temporal navigation is also supported. Thus, processing a graph query may involve navigating to a node in the object graph at a certain point in time.Type: ApplicationFiled: September 30, 2022Publication date: February 9, 2023Inventor: Bart J.F. DE SMET
-
Patent number: 11461345Abstract: A data processing system that provides access to operator state information includes a plurality of operators that are configured to perform a computation with respect to data received from data sources. State information is associated with at least one of the plurality of operators. The data processing system also includes an object graph that comprises a representation of the computation, and that may dynamically change at runtime. The data processing system also includes an interface that provides access to the state information via the object graph. The data processing system also includes a query manager that is executable to process a graph query to retrieve the state information by traversing a plurality of nodes within the object graph. Temporal navigation is also supported. Thus, processing a graph query may involve navigating to a node in the object graph at a certain point in time.Type: GrantFiled: May 31, 2019Date of Patent: October 4, 2022Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventor: Bart J. F. De Smet
-
Publication number: 20210400121Abstract: Techniques for utilizing a metric tracking agent to track how resources are used to process a payload across different network boundaries are disclosed herein. A process that is to be performed on a payload within a boundary is identified. A metric tracking agent is also identified, where this metric tracking agent defines a scope of the process and is associated with a metric counter used to determine a metric value for the process. While the process is being performed in accordance with the defined scope, the metric value is calculated so as to reflect the resource usage expended by the network boundary and is logged by a log associated with the metric tracking agent. The metric tracking agent, which includes the metric value, is then provided to either a subsequent system boundary or to a metric store.Type: ApplicationFiled: September 2, 2021Publication date: December 23, 2021Inventor: Bart J.F. De Smet
-
Patent number: 11128731Abstract: Techniques for utilizing a metric tracking agent to track how resources are used to process a payload across different network boundaries are disclosed herein. A process that is to be performed on a payload within a boundary is identified. A metric tracking agent is also identified, where this metric tracking agent defines a scope of the process and is associated with a metric counter used to determine a metric value for the process. While the process is being performed in accordance with the defined scope, the metric value is calculated so as to reflect the resource usage expended by the network boundary and is logged by a log associated with the metric tracking agent. The metric tracking agent, which includes the metric value, is then provided to either a subsequent system boundary or to a metric store.Type: GrantFiled: January 24, 2019Date of Patent: September 21, 2021Assignee: Microsoft Technology Licensing, LLCInventor: Bart J. F. De Smet
-
Patent number: 10871950Abstract: Optimization opportunities are located and documented to enhance code translation by compilers or interpreters. An enhanced translator scans a program syntax graph, recognizes subgraph structures, and annotates nodes of the graph to document optimization characteristics of program code entities associated with the nodes. Subgraph structures and corresponding annotations may be maintained in an optimization catalog, distinct from any particular optimizable program. Optimizers improve program code translation based on the annotated syntax graph. Optimization characteristics may specify code purity in terms of execution value ranges and execution behaviors, e.g., side-effects, local or global variable usage, I/O, by-reference parameters, and which exceptions are possible. Subgraph structures may be identified using routine names, hash values, and templates with holes any constant will fill. Parent node characteristics may be inferred from characteristics of child nodes.Type: GrantFiled: May 16, 2019Date of Patent: December 22, 2020Assignee: Microsoft Technology Licensing, LLCInventor: Bart J. F. De Smet
-
Publication number: 20200379992Abstract: A data processing system that provides access to operator state information includes a plurality of operators that are configured to perform a computation with respect to data received from data sources. State information is associated with at least one of the plurality of operators. The data processing system also includes an object graph that comprises a representation of the computation, and that may dynamically change at runtime. The data processing system also includes an interface that provides access to the state information via the object graph. The data processing system also includes a query manager that is executable to process a graph query to retrieve the state information by traversing a plurality of nodes within the object graph. Temporal navigation is also supported. Thus, processing a graph query may involve navigating to a node in the object graph at a certain point in time.Type: ApplicationFiled: May 31, 2019Publication date: December 3, 2020Inventor: Bart J.F. DE SMET
-
Publication number: 20200364036Abstract: Optimization opportunities are located and documented to enhance code translation by compilers or interpreters. An enhanced translator scans a program syntax graph, recognizes subgraph structures, and annotates nodes of the graph to document optimization characteristics of program code entities associated with the nodes. Subgraph structures and corresponding annotations may be maintained in an optimization catalog, distinct from any particular optimizable program. Optimizers improve program code translation based on the annotated syntax graph. Optimization characteristics may specify code purity in terms of execution value ranges and execution behaviors, e.g., side-effects, local or global variable usage, I/O, by-reference parameters, and which exceptions are possible. Subgraph structures may be identified using routine names, hash values, and templates with holes any constant will fill. Parent node characteristics may be inferred from characteristics of child nodes.Type: ApplicationFiled: May 16, 2019Publication date: November 19, 2020Inventor: Bart J.F. DE SMET
-
Publication number: 20200244762Abstract: Techniques for utilizing a metric tracking agent to track how resources are used to process a payload across different network boundaries are disclosed herein. A process that is to be performed on a payload within a boundary is identified. A metric tracking agent is also identified, where this metric tracking agent defines a scope of the process and is associated with a metric counter used to determine a metric value for the process. While the process is being performed in accordance with the defined scope, the metric value is calculated so as to reflect the resource usage expended by the network boundary and is logged by a log associated with the metric tracking agent. The metric tracking agent, which includes the metric value, is then provided to either a subsequent system boundary or to a metric store.Type: ApplicationFiled: January 24, 2019Publication date: July 30, 2020Inventor: Bart J.F. De Smet
-
Patent number: 10574714Abstract: Stream-based programming models allow subscriber to observe a stream of stream items received from a source, such as event notifications and updates to observed data. Presented herein is a stream-based reactive programming platform that allows observers to discover sources and streams, and to specify queries applicable to sources that results in new streams, including conditions that apply to the properties of a federation of sources. Variations of the reactive programming platform include generating a new stream from a non-reactive data source; generating a graph of sources and observers; and providing a directory of discoverable elements respectively identified by uniform resource identifiers.Type: GrantFiled: June 25, 2014Date of Patent: February 25, 2020Assignee: Microsoft Technology Licensing, LLCInventors: Bart J. F. De Smet, Tihomir T. Tarnavski, Savas Parastatidis
-
Patent number: 10565110Abstract: Representative embodiments disclosed compress expressions so they utilize less physical storage. An expression is placed in a standard representation, such as an expression tree. The system utilizes one or more rules to identify portions of the expression that are likely to be common to other expressions. The common portions are extracted from the expression tree as a template and the remaining portions are hoisted from the expression as unique portions. If the template does not already reside in a cache, the template is stored in the cache. A cache reference is obtained for the template and combined with the unique portions to create a bundle that reduces storage requirements for the expression. The original expression is recovered by retrieving the template from the cache using the cache reference and placing the hoisted unique portions into their original locations in the template.Type: GrantFiled: August 2, 2016Date of Patent: February 18, 2020Assignee: Microsoft Technology Licensing, LLCInventors: Bart J. F. De Smet, Eric Anthony Rozell
-
Publication number: 20180039575Abstract: Representative embodiments disclosed compress expressions so they utilize less physical storage. An expression is placed in a standard representation, such as an expression tree. The system utilizes one or more rules to identify portions of the expression that are likely to be common to other expressions. The common portions are extracted from the expression tree as a template and the remaining portions are hoisted from the expression as unique portions. If the template does not already reside in a cache, the template is stored in the cache. A cache reference is obtained for the template and combined with the unique portions to create a bundle that reduces storage requirements for the expression. The original expression is recovered by retrieving the template from the cache using the cache reference and placing the hoisted unique portions into their original locations in the template.Type: ApplicationFiled: August 2, 2016Publication date: February 8, 2018Inventors: Bart J. F. De Smet, Eric Anthony Rozell
-
Patent number: 9781128Abstract: Systems and methods for providing client-side integration of apps and services is provided. An integration framework execution upon a computing device provides integration of various apps, applications, services, sensors and the like. Upon receiving a request for a service, the integration framework accesses a registry of a plurality of services of a respective plurality of providers registered with the integration framework. Each of the services is registered with the integration framework is associated with a trust level of a hierarchy of trust levels. The integration framework iteratively searches the registry for a provider of the requested service according to the hierarchy of trust levels, beginning with the most trusted level of the trust levels to the less trusted trust level until a provider of the requested service is found or until all levels of the hierarchy are searched without finding a provider of the requested service.Type: GrantFiled: December 15, 2016Date of Patent: October 3, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Saar Yahalom, Bart J. F. De Smet, Daniel Lee Massey, Douglas C. Burger, Blaise Hillary Aguera y Arcas
-
Patent number: 9760401Abstract: Systems and methods of a personal daemon, executing as a background process on a mobile computing device, for providing personal assistant to an associated user is presented. Also executing on the mobile computing device is a scheduling manager. The personal daemon executes one or more personal assistance actions on behalf of the associated user. The scheduling manager responds to events in support of the personal daemon. More particularly, in response to receiving an event the scheduling manager determines a set of apps that are responsive to the received event and from that set of apps, identifies at least a first subset of apps for execution on the mobile computing device. The scheduling manager receives feedback information regarding the usefulness of the executed apps of the first subset of apps and updates the associated score of each of the apps of the first subset of apps.Type: GrantFiled: November 14, 2015Date of Patent: September 12, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Douglas C. Burger, Daniel Lee Massey, Bart J. F. De Smet, Blaise Hilary Aguera y Arcas
-
Publication number: 20170099298Abstract: Systems and methods for providing client-side integration of apps and services is provided. An integration framework execution upon a computing device provides integration of various apps, applications, services, sensors and the like. Upon receiving a request for a service, the integration framework accesses a registry of a plurality of services of a respective plurality of providers registered with the integration framework. Each of the services is registered with the integration framework is associated with a trust level of a hierarchy of trust levels. The integration framework iteratively searches the registry for a provider of the requested service according to the hierarchy of trust levels, beginning with the most trusted level of the trust levels to the less trusted trust level until a provider of the requested service is found or until all levels of the hierarchy are searched without finding a provider of the requested service.Type: ApplicationFiled: December 15, 2016Publication date: April 6, 2017Inventors: Saar Yahalom, Bart J.F. De Smet, Daniel Lee Massey, Douglas C. Burger, Blaise Hillary Aguera y Arcas
-
Patent number: 9560055Abstract: Systems and methods for providing client-side integration of apps and services is provided. An integration framework execution upon a computing device provides integration of various apps, applications, services, sensors and the like. Upon receiving a request for a service, the integration framework accesses a registry of a plurality of services of a respective plurality of providers registered with the integration framework. Each of the services is registered with the integration framework is associated with a trust level of a hierarchy of trust levels. The integration framework iteratively searches the registry for a provider of the requested service according to the hierarchy of trust levels, beginning with the most trusted level of the trust levels to the less trusted trust level until a provider of the requested service is found or until all levels of the hierarchy are searched without finding a provider of the requested service.Type: GrantFiled: April 30, 2014Date of Patent: January 31, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Saar Yahalom, Bart J. F. De Smet, Daniel Lee Massey, Douglas C. Burger, Blaise Hilary Aguera y Arcas
-
Patent number: 9524323Abstract: Evaluating an expression tree. A method includes, at a first domain, accessing an expression tree. The expression tree comprises a plurality of nested expressions. The plurality of nested expressions spans a plurality of domains. The expressions in the expression tree are expressed in a common format in spite of the different expressions of the expression tree being intended to be evaluated by different domains. At the first domain, the method includes evaluating one or more references to local variables included in the plurality of nested expressions. The method further includes determining that one or more expressions in the plurality of expressions are to be evaluated by a different domain. The method further includes expanding the one or more expressions in the plurality of expressions to be evaluated by different domains to allow the one or more expressions to be evaluated by the different domain.Type: GrantFiled: September 5, 2012Date of Patent: December 20, 2016Assignee: Microsoft Technology Licensing, LLCInventors: Colin Joseph Meek, Bart J. F. De Smet, Henricus Johannes Maria Meijer, Alexander Douglas James, Balan Sethu Raman, Rafael de Jesús Fernández Moctezuma
-
Publication number: 20160147567Abstract: Systems and methods of a personal daemon, executing as a background process on a mobile computing device, for providing personal assistant to an associated user is presented. Also executing on the mobile computing device is a scheduling manager. The personal daemon executes one or more personal assistance actions on behalf of the associated user. The scheduling manager responds to events in support of the personal daemon. More particularly, in response to receiving an event the scheduling manager determines a set of apps that are responsive to the received event and from that set of apps, identifies at least a first subset of apps for execution on the mobile computing device. The scheduling manager receives feedback information regarding the usefulness of the executed apps of the first subset of apps and updates the associated score of each of the apps of the first subset of apps.Type: ApplicationFiled: November 14, 2015Publication date: May 26, 2016Applicant: Microsoft Technology Licensing, LLCInventors: Douglas C. Burger, Daniel Lee Massey, Bart J. F. De Smet, Blaise Hilary Aguera y Arcas
-
Publication number: 20150381679Abstract: Stream-based programming models allow subscriber to observe a stream of stream items received from a source, such as event notifications and updates to observed data. Presented herein is a stream-based reactive programming platform that allows observers to discover sources and streams, and to specify queries applicable to sources that results in new streams, including conditions that apply to the properties of a federation of sources. Variations of the reactive programming platform include generating a new stream from a non-reactive data source; generating a graph of sources and observers; and providing a directory of discoverable elements respectively identified by uniform resource identifiers.Type: ApplicationFiled: June 25, 2014Publication date: December 31, 2015Inventors: Bart J. F. De Smet, Tihomir T. Tarnavski, Savas Parastatidis
-
Patent number: 9218497Abstract: Systems and methods of a personal daemon, executing as a background process on a mobile computing device, for providing personal assistant to an associated user is presented. Also executing on the mobile computing device is a scheduling manager. The personal daemon executes one or more personal assistance actions on behalf of the associated user. The scheduling manager responds to events in support of the personal daemon. More particularly, in response to receiving an event the scheduling manager determines a set of apps that are responsive to the received event and from that set of apps, identifies at least a first subset of apps for execution on the mobile computing device. The scheduling manager receives feedback information regarding the usefulness of the executed apps of the first subset of apps and updates the associated score of each of the apps of the first subset of apps.Type: GrantFiled: April 30, 2014Date of Patent: December 22, 2015Assignee: Microsoft Technology Licensing, LLCInventors: Douglas C. Burger, Daniel Lee Massey, Bart J. F. De Smet, Blaise Hilary Aguera y Arcas