Patents by Inventor Marcus Fontoura
Marcus Fontoura 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).
-
Publication number: 20240037096Abstract: Systems and techniques are disclosed for generating entries for a searchable index based on rules generated by one or more machine-learned models. The index entries can include one or more tokens correlated with an outcome and an outcome probability. A subset of tokens can be identified based on the characteristics of an event. The index may be searched for outcomes and their respective probabilities that correspond to tokens that are similar to or match the subset of tokens based on the event.Type: ApplicationFiled: October 6, 2023Publication date: February 1, 2024Inventors: Jeremiah Harmsen, Tushar Deepak Chandra, Marcus Fontoura
-
Patent number: 11782915Abstract: Systems and techniques are disclosed for generating entries for a searchable index based on rules generated by one or more machine-learned models. The index entries can include one or more tokens correlated with an outcome and an outcome probability. A subset of tokens can be identified based on the characteristics of an event. The index may be searched for outcomes and their respective probabilities that correspond to tokens that are similar to or match the subset of tokens based on the event.Type: GrantFiled: November 30, 2020Date of Patent: October 10, 2023Assignee: Google LLCInventors: Jeremiah Harmsen, Tushar Deepak Chandra, Marcus Fontoura
-
Patent number: 11714686Abstract: Techniques of managing oversubscription of network resources are disclosed herein. In one embodiment, a method includes receiving resource utilization data of a virtual machine hosted on a server in a computing system. The virtual machine is configured to perform a task. The method also includes determining whether a temporal pattern of the resource utilization data associated with the virtual machine indicates one or more cycles of resource utilization as a function of time and in response to determining that the temporal pattern associated with the virtual machine indicates one or more cycles of resource utilization as a function of time, causing the virtual machine to migrate to another server that is not oversubscribed by virtual machines in the computing system.Type: GrantFiled: May 4, 2020Date of Patent: August 1, 2023Assignee: Microsoft Technology Licensing, LLCInventors: Ricardo Bianchini, William Clausen, Marcus Fontoura, Inigo Goiri, Yunqi Zhang
-
Publication number: 20210149890Abstract: Systems and techniques are disclosed for generating entries for a searchable index based on rules generated by one or more machine-learned models. The index entries can include one or more tokens correlated with an outcome and an outcome probability. A subset of tokens can be identified based on the characteristics of an event. The index may be searched for outcomes and their respective probabilities that correspond to tokens that are similar to or match the subset of tokens based on the event.Type: ApplicationFiled: November 30, 2020Publication date: May 20, 2021Inventors: Jeremiah Harmsen, Tushar Deepak Chandra, Marcus Fontoura
-
Patent number: 10853360Abstract: Systems and techniques are disclosed for generating entries for a searchable index based on rules generated by one or more machine-learned models. The index entries can include one or more tokens correlated with an outcome and an outcome probability. A subset of tokens can be identified based on the characteristics of an event. The index may be searched for outcomes and their respective probabilities that correspond to tokens that are similar to or match the subset of tokens based on the event.Type: GrantFiled: March 27, 2019Date of Patent: December 1, 2020Assignee: Google LLCInventors: Jeremiah Harmsen, Tushar Deepak Chandra, Marcus Fontoura
-
Patent number: 10768920Abstract: Software updates within one or more regions of a multi-tenant cloud are coordinated. Tenant vs. tenant conflicts, tenant vs. infrastructure provider conflicts, and conflicts between security and another priority are identified and resolved using a shared update coordinator, update priority specifications, and availability specifications. An infrastructure update request may be presented to tenants for approval. Postponed infrastructure updates may be prioritized higher. Preventing exploits of zero-day vulnerabilities may be prioritized over meeting availability targets. Updates may be merged to reduce downtime, even when the updates originate from independently controlled entities. Maximum downtime, minimum fault domains, minimum virtual machines, permitted update start times, and other availability criteria may be specified. Updates may be preempted, or allowed to complete, based on their relative priorities.Type: GrantFiled: June 15, 2016Date of Patent: September 8, 2020Assignee: Microsoft Technology Licensing, LLCInventors: Marcus Fontoura, Mark Russinovich, Yunus Mohammed, Pritesh Patwa, Avnish Kumar Chhabra, Ziv Rafalovich
-
Publication number: 20200264938Abstract: Techniques of managing oversubscription of network resources are disclosed herein. In one embodiment, a method includes receiving resource utilization data of a virtual machine hosted on a server in a computing system. The virtual machine is configured to perform a task. The method also includes determining whether a temporal pattern of the resource utilization data associated with the virtual machine indicates one or more cycles of resource utilization as a function of time and in response to determining that the temporal pattern associated with the virtual machine indicates one or more cycles of resource utilization as a function of time, causing the virtual machine to migrate to another server that is not oversubscribed by virtual machines in the computing system.Type: ApplicationFiled: May 4, 2020Publication date: August 20, 2020Inventors: Ricardo Bianchini, William Clausen, Marcus Fontoura, Inigo Goiri, Yunqi Zhang
-
Patent number: 10678603Abstract: Techniques of managing oversubscription of network resources are disclosed herein. In one embodiment, a method includes receiving resource utilization data of a virtual machine hosted on a server in a computing system. The virtual machine is configured to perform a task. The method also includes determining whether a temporal pattern of the resource utilization data associated with the virtual machine indicates one or more cycles of resource utilization as a function of time and in response to determining that the temporal pattern associated with the virtual machine indicates one or more cycles of resource utilization as a function of time, causing the virtual machine to migrate to another server that is not oversubscribed by virtual machines in the computing system.Type: GrantFiled: September 1, 2016Date of Patent: June 9, 2020Assignee: Microsoft Technology Licensing, LLCInventors: Ricardo Bianchini, William Clausen, Marcus Fontoura, Inigo Goiri, Yunqi Zhang
-
Publication number: 20190220460Abstract: Systems and techniques are disclosed for generating entries for a searchable index based on rules generated by one or more machine-learned models. The index entries can include one or more tokens correlated with an outcome and an outcome probability. A subset of tokens can be identified based on the characteristics of an event. The index may be searched for outcomes and their respective probabilities that correspond to tokens that are similar to or match the subset of tokens based on the event.Type: ApplicationFiled: March 27, 2019Publication date: July 18, 2019Inventors: Jeremiah Harmsen, Tushar Deepak Chandra, Marcus Fontoura
-
Patent number: 10255319Abstract: Systems and techniques are disclosed for generating entries for a searchable index based on rules generated by one or more machine-learned models. The index entries can include one or more tokens correlated with an outcome and an outcome probability. A subset of tokens can be identified based on the characteristics of an event. The index may be searched for outcomes and their respective probabilities that correspond to tokens that are similar to or match the subset of tokens based on the event.Type: GrantFiled: May 2, 2014Date of Patent: April 9, 2019Assignee: Google LLCInventors: Jeremiah Harmsen, Tushar Deepak Chandra, Marcus Fontoura
-
Patent number: 10153941Abstract: Certain embodiments of computing systems, devices, components, modules, routines, and processes for implementing distributed operational control in a computing fabric are described herein. In one embodiment, a method includes receiving, at a control cluster, a tenant request for a cloud-based computing service at the computing system. The method also includes creating an application configured to provide the requested cloud-based computing service based on the tenant request and pushing configuration data of the created application to the execution cluster to be executed at the execution cluster without further intervention from the control cluster.Type: GrantFiled: May 17, 2016Date of Patent: December 11, 2018Assignee: Microsoft Technology Licensing, LLCInventors: David Dion, James Johnson, Marcus Fontoura, Milan Vukosavljevic, Mark Russinovich, Gopal Kakivaya
-
Patent number: 10038753Abstract: Systems and methods include a distributed system that uses a declarative language to separate application logic from the network technology used to communicate. For example, in a system with a plurality of processing nodes, each processing node may include at least one processor, a networking layer for communicating with other processing nodes, and a memory storing instructions that, when executed by the at least one processor, cause the processing node to perform operations. The operations may include receiving a processing plan using the networking layer and analyzing the processing plan to determine a service to perform and a number of inputs anticipated for the service. The operations may also include performing the determined service. The processing plan defines a processing tree comprising a subset of the plurality of processing nodes, the processing tree having unidirectional communication from the root to a final level of the tree.Type: GrantFiled: December 4, 2017Date of Patent: July 31, 2018Assignee: Google LLCInventors: Michael Roger Marty, Nicholas Andrew Kidd, Marcus Fontoura, Charles Acknin
-
Publication number: 20180091607Abstract: Systems and methods include a distributed system that uses a declarative language to separate application logic from the network technology used to communicate. For example, in a system with a plurality of processing nodes, each processing node may include at least one processor, a networking layer for communicating with other processing nodes, and a memory storing instructions that, when executed by the at least one processor, cause the processing node to perform operations. The operations may include receiving a processing plan using the networking layer and analyzing the processing plan to determine a service to perform and a number of inputs anticipated for the service. The operations may also include performing the determined service. The processing plan defines a processing tree comprising a subset of the plurality of processing nodes, the processing tree having unidirectional communication from the root to a final level of the tree.Type: ApplicationFiled: December 4, 2017Publication date: March 29, 2018Inventors: Michael Roger Marty, Nicholas Andrew Kidd, Marcus Fontoura, Charles Acknin
-
Publication number: 20180060134Abstract: Techniques of managing oversubscription of network resources are disclosed herein. In one embodiment, a method includes receiving resource utilization data of a virtual machine hosted on a server in a computing system. The virtual machine is configured to perform a task. The method also includes determining whether a temporal pattern of the resource utilization data associated with the virtual machine indicates one or more cycles of resource utilization as a function of time and in response to determining that the temporal pattern associated with the virtual machine indicates one or more cycles of resource utilization as a function of time, causing the virtual machine to migrate to another server that is not oversubscribed by virtual machines in the computing system.Type: ApplicationFiled: September 1, 2016Publication date: March 1, 2018Inventors: Ricardo Bianchini, William Clausen, Marcus Fontoura, Inigo Goiri, Yunqi Zhang
-
Publication number: 20170364345Abstract: Software updates within one or more regions of a multi-tenant cloud are coordinated. Tenant vs. tenant conflicts, tenant vs. infrastructure provider conflicts, and conflicts between security and another priority are identified and resolved using a shared update coordinator, update priority specifications, and availability specifications. An infrastructure update request may be presented to tenants for approval. Postponed infrastructure updates may be prioritized higher. Preventing exploits of zero-day vulnerabilities may be prioritized over meeting availability targets. Updates may be merged to reduce downtime, even when the updates originate from independently controlled entities. Maximum downtime, minimum fault domains, minimum virtual machines, permitted update start times, and other availability criteria may be specified. Updates may be preempted, or allowed to complete, based on their relative priorities.Type: ApplicationFiled: June 15, 2016Publication date: December 21, 2017Inventors: Marcus FONTOURA, Mark RUSSINOVICH, Yunus MOHAMMED, Pritesh PATWA, Avnish Kumar CHHABRA, Ziv RAFALOVICH
-
Patent number: 9843641Abstract: Systems and methods include a distributed system that uses a declarative language to separate application logic from the network technology used to communicate. For example, in a system with a plurality of processing nodes, each processing node may include at least one processor, a networking layer for communicating with other processing nodes, and a memory storing instructions that, when executed by the at least one processor, cause the processing node to perform operations. The operations may include receiving a processing plan using the networking layer and analyzing the processing plan to determine a service to perform and a number of inputs anticipated for the service. The operations may also include performing the determined service. The processing plan defines a processing tree comprising a subset of the plurality of processing nodes, the processing tree having unidirectional communication from the root to a final level of the tree.Type: GrantFiled: November 18, 2016Date of Patent: December 12, 2017Assignee: Google LLCInventors: Michael Roger Marty, Nicholas Andrew Kidd, Marcus Fontoura, Charles Acknin
-
Publication number: 20170339008Abstract: Certain embodiments of computing systems, devices, components, modules, routines, and processes for implementing distributed operational control in a computing fabric are described herein. In one embodiment, a method includes receiving, at a control cluster, a tenant request for a cloud-based computing service at the computing system. The method also includes creating an application configured to provide the requested cloud-based computing service based on the tenant request and pushing configuration data of the created application to the execution cluster to be executed at the execution cluster without further intervention from the control cluster.Type: ApplicationFiled: May 17, 2016Publication date: November 23, 2017Inventors: David Dion, James Johnson, Marcus Fontoura, Milan Vukosavljevic, Mark Russinovich, Gopal Kakivaya
-
Publication number: 20170070583Abstract: Systems and methods include a distributed system that uses a declarative language to separate application logic from the network technology used to communicate. For example, in a system with a plurality of processing nodes, each processing node may include at least one processor, a networking layer for communicating with other processing nodes, and a memory storing instructions that, when executed by the at least one processor, cause the processing node to perform operations. The operations may include receiving a processing plan using the networking layer and analyzing the processing plan to determine a service to perform and a number of inputs anticipated for the service. The operations may also include performing the determined service. The processing plan defines a processing tree comprising a subset of the plurality of processing nodes, the processing tree having unidirectional communication from the root to a final level of the tree.Type: ApplicationFiled: November 18, 2016Publication date: March 9, 2017Inventors: Michael Roger Marty, Nicholas Andrew Kidd, Marcus Fontoura, Charles Acknin
-
Patent number: 9531842Abstract: Systems and methods include a distributed system that uses a declarative language to separate application logic from the network technology used to communicate. For example, in a system with a plurality of processing nodes, each processing node may include at least one processor, a networking layer for communicating with other processing nodes, and a memory storing instructions that, when executed by the at least one processor, cause the processing node to perform operations. The operations may include receiving a processing plan using the networking layer and analyzing the processing plan to determine a service to perform and a number of inputs anticipated for the service. The operations may also include performing the determined service. The processing plan defines a processing tree comprising a subset of the plurality of processing nodes, the processing tree having unidirectional communication from the root to a final level of the tree.Type: GrantFiled: September 24, 2015Date of Patent: December 27, 2016Assignee: Google Inc.Inventors: Michael Roger Marty, Nicholas Andrew Kidd, Marcus Fontoura, Charles Acknin
-
Patent number: 9501506Abstract: A hybrid-sharded index includes document-sharded posting lists and term-sharded posting lists. Implementations include systems and methods for updating a hybrid-sharded index. For example, a method may include receiving updates to the hybrid-sharded index and generating, at a first leaf node, replacement posting lists and change information for a respective second leaf node. The method may also include dividing the replacement posting lists into portions, a portion having associated change information and being associated with a respective one of the second leaf nodes and sending the portions to respective leaf nodes. At a particular leaf node of the second leaf nodes, the method includes merging a received portion into an updated posing list portion, swapping the updated posting list portion into memory. During the swap, the change information and the updated posting list portion are used to respond to a query with an older version of the hybrid-sharded index.Type: GrantFiled: December 16, 2013Date of Patent: November 22, 2016Assignee: Google Inc.Inventors: Marcus Fontoura, Daniel N. Meredith, Douglas Lee Taylor Rohde, Mahesh S. Palekar, Asim Shankar, Denis Murray Baylor, Zigmars Rasscevskis, Andras Csomai