Patents by Inventor Marcus Felipe Fontoura

Marcus Felipe 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).

  • Patent number: 10542085
    Abstract: A method and system for selecting servers for storage of replicas of a block of data is provided. The system selects a first server for storage of the data. The first server has a first processor utilization classification and a first reimaging rate classification. The system then selects a second server for storage of the data. The second server has a second processor utilization classification and a second reimaging rate classification. The system selects the second server so that the second processor utilization classification is different from the first processor utilization classification and the second reimaging rate classification is different from the first reimaging rate classification.
    Type: Grant
    Filed: June 22, 2016
    Date of Patent: January 21, 2020
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Ricardo Bianchini, Inigo Goiri Presa, Marcus Felipe Fontoura, Georgios Prekas
  • Publication number: 20200012526
    Abstract: A system receives a request to deploy a virtual machine on one of a plurality of nodes running a plurality of virtual machines in a cloud computing system. The system receives a predicted lifetime for the virtual machine and an indication of an average lifetime of virtual machines running on each of the plurality of nodes. The system allocates the virtual machine to a first node when a first policy of collocating virtual machines with similar lifetimes on a node is adopted and the predicted lifetime is within a predetermined range of the average lifetime of virtual machines running on the first node. The system allocates the virtual machine to a second node when a second policy of collocating virtual machines with dissimilar lifetimes on a node is adopted and the predicted lifetime is not within the predetermined range of the average lifetime of virtual machines running on the second node.
    Type: Application
    Filed: September 19, 2019
    Publication date: January 9, 2020
    Inventors: Ricardo BIANCHINI, Eli CORTEZ, Marcus Felipe FONTOURA, Anand BONDE
  • Patent number: 10423455
    Abstract: A system receives a request to deploy a virtual machine on one of a plurality of nodes running a plurality of virtual machines in a cloud computing system. The system receives a predicted lifetime for the virtual machine and an indication of an average lifetime of virtual machines running on each of the plurality of nodes. The system allocates the virtual machine to a first node when a first policy of collocating virtual machines with similar lifetimes on a node is adopted and the predicted lifetime is within a predetermined range of the average lifetime of virtual machines running on the first node. The system allocates the virtual machine to a second node when a second policy of collocating virtual machines with dissimilar lifetimes on a node is adopted and the predicted lifetime is not within the predetermined range of the average lifetime of virtual machines running on the second node.
    Type: Grant
    Filed: February 3, 2017
    Date of Patent: September 24, 2019
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Ricardo Bianchini, Eli Cortez, Marcus Felipe Fontoura, Anand Bonde
  • Publication number: 20190205157
    Abstract: A system receives a request to deploy a virtual machine on a node from a plurality of nodes running a plurality of virtual machines in a cloud computing system. The system selects one of the plurality of nodes having a hard disk drive (HDD) input output operations per second (IOPS) value less than an observed HDD IOPS value for the plurality of nodes running the plurality of virtual machines. The system receives a predicted HDD IOPS value for the virtual machine and determines a new HDD IOPS value for the selected node based on the HDD IOPS value for the selected node and the predicted HDD IOPS value for the virtual machine. The system instantiates the virtual machine on the selected node when the new HDD IOPS value for the selected node is less than or equal to the observed HDD IOPS value for the plurality of nodes.
    Type: Application
    Filed: March 8, 2019
    Publication date: July 4, 2019
    Inventors: Ricardo BIANCHINI, Eli CORTEZ, Marcus Felipe FONTOURA, Anand BONDE
  • Publication number: 20190163517
    Abstract: Various embodiments, methods, and systems for implementing a predictive rightsizing system are provided. Predicted rightsized deployment configurations are generated for virtual machine “VM” deployments having deployment configurations that are modified to predicted rightsized deployment configurations based on a prediction engine. In operation, a VM deployment, associated with a request to deploy one or more VMs on a node, is accessed at a predictive rightsizing controller. A predicted resource utilization for the VM deployment is generated at the prediction engine and accessed at the predictive rightsizing controller. The predicted resource utilization is generated based on a prediction engine that uses past behaviors and features associated with previous VM deployments. Based on the predicted resource utilization, a predicted rightsized deployment configuration is generated for the VM deployment.
    Type: Application
    Filed: August 28, 2018
    Publication date: May 30, 2019
    Inventors: Marcus Felipe FONTOURA, Ricardo Gouvea BIANCHINI, Girish BABLANI
  • Patent number: 10296367
    Abstract: A system receives a request to deploy a virtual machine on a node from a plurality of nodes running a plurality of virtual machines in a cloud computing system. The system selects one of the plurality of nodes having a hard disk drive (HDD) input output operations per second (IOPS) value less than an observed HDD IOPS value for the plurality of nodes running the plurality of virtual machines. The system receives a predicted HDD IOPS value for the virtual machine and determines a new HDD IOPS value for the selected node based on the HDD IOPS value for the selected node and the predicted HDD IOPS value for the virtual machine. The system instantiates the virtual machine on the selected node when the new HDD IOPS value for the selected node is less than or equal to the observed HDD IOPS value for the plurality of nodes.
    Type: Grant
    Filed: February 3, 2017
    Date of Patent: May 21, 2019
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Ricardo Bianchini, Eli Cortez, Marcus Felipe Fontoura, Anand Bonde
  • Patent number: 10261822
    Abstract: A system receives a request to deploy a virtual machine on a node from a plurality of nodes running a plurality of virtual machines in a cloud computing system. The system selects one of the plurality of nodes having a hard disk drive (HDD) input output operations per second (IOPS) value less than an observed HDD IOPS value for the plurality of nodes running the plurality of virtual machines. The system receives a predicted HDD IOPS value for the virtual machine and determines a new HDD IOPS value for the selected node based on the HDD IOPS value for the selected node and the predicted HDD IOPS value for the virtual machine. The system instantiates the virtual machine on the selected node when the new HDD IOPS value for the selected node is less than or equal to the observed HDD IOPS value for the plurality of nodes.
    Type: Grant
    Filed: February 3, 2017
    Date of Patent: April 16, 2019
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Ricardo Bianchini, Eli Cortez, Marcus Felipe Fontoura, Anand Bonde
  • Publication number: 20180260261
    Abstract: Various methods and systems for implementing an availability management system for implementing an availability management, in distributed computing systems, are provided. An availability management system implements an availability manager and an availability configuration interface to meet availability guarantees for tenant infrastructure. The availability management systems operates with availability zones, computing clusters, fault and upgrade domains to allocate and de-allocate virtual machine sets of virtual machine instances to a distributed computing system based on tenant-defined availability parameters. The availability manager is configured to: based on an availability profile, allocate the virtual machine sets across the availability zones using an allocation scheme.
    Type: Application
    Filed: March 7, 2017
    Publication date: September 13, 2018
    Inventors: YUNUS MOHAMMED, JUN WANG, MARCUS FELIPE FONTOURA, MARK EUGENE RUSSINOVICH, MOHAMMAD ZEESHAN SIDDIQUI, PRITESH PATWA, SEAN DAVID ZIMMERMAN, XIAOXIONG TIAN
  • Publication number: 20180260262
    Abstract: Various methods and systems for implementing an availability management system for implementing an availability management, in distributed computing systems, are provided. An availability management system implements an availability manager and an availability configuration interface to meet availability guarantees for tenant infrastructure. The availability management systems operates with availability zones, computing clusters, fault and upgrade domains to allocate and de-allocate virtual machine sets of virtual machine instances to a distributed computing system based on tenant-defined availability parameters. The availability configuration interface of the availability management system supports receiving availability parameters that are used to generate an availability profile.
    Type: Application
    Filed: March 7, 2017
    Publication date: September 13, 2018
    Inventors: YUNUS MOHAMMED, JUN WANG, MARCUS FELIPE FONTOURA, MARK EUGENE RUSSINOVICH, MOHAMMAD ZEESHAN SIDDIQUI, PRITESH PATWA, SEAN DAVID ZIMMERMAN, XIAOXIONG TIAN
  • Publication number: 20180262563
    Abstract: Various methods and systems for implementing an availability management system for implementing an availability management, in distributed computing systems, are provided. An availability management system implements an availability manager and an availability configuration interface to meet availability guarantees for tenant infrastructure. The availability management systems operates with availability zones, computing clusters, fault and upgrade domains to allocate and de-allocate virtual machine sets of virtual machine instances to a distributed computing system based on tenant-defined availability parameters. The availability parameters are used to generate an availability profile. The availability manager is configured to, based on an availability profile, allocate the virtual machine sets based an allocation scheme. The availability manager specifically performs scaling-out, scaling-in and rebalancing operations for allocating and de-allocating the virtual machine sets.
    Type: Application
    Filed: March 7, 2017
    Publication date: September 13, 2018
    Inventors: YUNUS MOHAMMED, JUN WANG, MARCUS FELIPE FONTOURA, MARK EUGENE RUSSINOVICH, MOHAMMAD ZEESHAN SIDDIQUI, PRITESH PATWA, SEAN DAVID ZIMMERMAN, XIAOXIONG TIAN
  • Publication number: 20180225137
    Abstract: A system receives a request to deploy a virtual machine on a node from a plurality of nodes running a plurality of virtual machines in a cloud computing system. The system selects one of the plurality of nodes having a hard disk drive (HDD) input output operations per second (IOPS) value less than an observed HDD IOPS value for the plurality of nodes running the plurality of virtual machines. The system receives a predicted HDD IOPS value for the virtual machine and determines a new HDD IOPS value for the selected node based on the HDD IOPS value for the selected node and the predicted HDD IOPS value for the virtual machine. The system instantiates the virtual machine on the selected node when the new HDD IOPS value for the selected node is less than or equal to the observed HDD IOPS value for the plurality of nodes.
    Type: Application
    Filed: February 3, 2017
    Publication date: August 9, 2018
    Inventors: Ricardo BIANCHINI, Eli Cortez, Marcus Felipe Fontoura, Anand Bonde
  • Publication number: 20180225149
    Abstract: A system receives a request to deploy a virtual machine on one of a plurality of nodes running a plurality of virtual machines in a cloud computing system. The system receives a predicted lifetime for the virtual machine and an indication of an average lifetime of virtual machines running on each of the plurality of nodes. The system allocates the virtual machine to a first node when a first policy of collocating virtual machines with similar lifetimes on a node is adopted and the predicted lifetime is within a predetermined range of the average lifetime of virtual machines running on the first node. The system allocates the virtual machine to a second node when a second policy of collocating virtual machines with dissimilar lifetimes on a node is adopted and the predicted lifetime is not within the predetermined range of the average lifetime of virtual machines running on the second node.
    Type: Application
    Filed: February 3, 2017
    Publication date: August 9, 2018
    Inventors: Ricardo BIANCHINI, Eli CORTEZ, Marcus Felipe FONTOURA, Anand BONDE
  • Publication number: 20170374144
    Abstract: A method and system for selecting servers for storage of replicas of a block of data is provided. The system selects a first server for storage of the data. The first server has a first processor utilization classification and a first reimaging rate classification. The system then selects a second server for storage of the data. The second server has a second processor utilization classification and a second reimaging rate classification. The system selects the second server so that the second processor utilization classification is different from the first processor utilization classification and the second reimaging rate classification is different from the first reimaging rate classification.
    Type: Application
    Filed: June 22, 2016
    Publication date: December 28, 2017
    Inventors: Ricardo Bianchini, Inigo Goiri Presa, Marcus Felipe Fontoura, Georgios Prekas
  • Publication number: 20140310100
    Abstract: Advertising is used to generate awareness of commercial Internet web sites. To greatly simplify the marketing of a commercial Internet web site, the automatic creation of an advertising campaign would be desirable. A method of automatically creating an Internet web site may be performed by first crawling through the Internet web site to identify products and services offered by the Internet web site. Information about the identified products and services is stored. The system then creates advertisements for the identified products and services. The advertisements may include images, text, a link to the web page where the product or service was found, and keywords associated with the product or service. The automatically created advertisements may then be placed into an advertisement pool for use with advertising supported web sites. The automatic Internet advertisement campaign creations system of the present invention may be used to create free trial advertisement campaigns for potential advertising clients.
    Type: Application
    Filed: June 27, 2014
    Publication date: October 16, 2014
    Applicant: Yahoo! Inc.
    Inventors: Andrei Zary Broder, Marcus Felipe Fontoura, Vanja Josifovski
  • Patent number: 8688521
    Abstract: A system and method to facilitate matching of content to advertising information in a network are described. A request for advertising information is received over a network, the advertising information to be displayed for a user entity in association with content information within a web page requested by the user entity. Advertising information related to one or more themes of the content information on the web page is further determined, the themes representing subject matter contextually related to the content information. Advertisements are further selected from the advertising information based on keywords and metadata stored within the web page and based on a set of predetermined parameters stored within the data storage module. The selected advertisements are further ranked to obtain a ranked list of advertisements.
    Type: Grant
    Filed: July 20, 2007
    Date of Patent: April 1, 2014
    Assignee: Yahoo! Inc.
    Inventors: Andrei Zary Broder, Marcus Felipe Fontoura, Vanja Josifovski, Lance Alan Riedel
  • Patent number: 8666819
    Abstract: A system and method to facilitate classification and storage of events in a network are described. An event and associated content information are received from an entity over a network. The content information is further analyzed to determine one or more themes representing subject matter related to the content information. The event is further classified according to the themes into one or more corresponding categories. Finally, the event is stored into one or more corresponding databases of a data storage module according to the one or more corresponding categories.
    Type: Grant
    Filed: July 20, 2007
    Date of Patent: March 4, 2014
    Assignee: Yahoo! Overture
    Inventors: Andrei Zary Broder, Marcus Felipe Fontoura, Vanja Josifovski, Lance Alan Riedel
  • Patent number: 8650265
    Abstract: The World Wide Web portion of the Internet is largely supported by advertising. To deliver the most effective advertising, a system for dynamically creating customized advertisements is introduced. The behavior and any demographic information known about web viewers is used to select an advertising template that will be used to create an advertisement. The advertisement template comprises an incomplete advertisement with certain missing information along with identifiers for functions that may be used to complete the advertisement. In one embodiment, the functions may specify how the advertiser associated with the advertisement template may be contacted with the demographic information known about the user in order to fill in the missing portions of advertisement template. For example, the advertisement may concern flights to Hawaii and the advertiser may fill in the price of a flight to Hawaii based upon being provided with the user's location. The complete advertisement may then be displayed to the user.
    Type: Grant
    Filed: February 20, 2007
    Date of Patent: February 11, 2014
    Assignee: Yahoo! Inc.
    Inventors: Andrei Zary Broder, Marcus Felipe Fontoura, Vanja Josifovski
  • Patent number: 8346759
    Abstract: Provided are a system and article of manufacture for searching documents for ranges of numeric values. A number of posting lists is generated, wherein each posting list is associated with a range of consecutive values within the set of values and includes document identifiers for documents including at least one value within the range of consecutive values associated with the posting list, and wherein each document identifier is associated with one value in the set of values included in the document identified by the document identifier. The generated posting lists are stored. A query on a query range of values within the set of values is received and a determination is made of a minimum number of posting lists associated with consecutive values that together include the query range of values. The determined posting lists are merged.
    Type: Grant
    Filed: August 6, 2008
    Date of Patent: January 1, 2013
    Assignee: International Business Machines Corporation
    Inventors: Marcus Felipe Fontoura, Ronny Lempel, Runping Qi, Jason Yeong Zien
  • Patent number: 8271498
    Abstract: Provided are a method, system, and article of manufacture for searching documents for ranges of numeric values. Document identifiers for documents are accessed, wherein the documents include at least one value that is a member of a set of values. A number of posting lists are generated. Each posting list is associated with a range of consecutive values within the set of values and includes document identifiers for documents including at least one value within the range of consecutive values associated with the posting list, and wherein each document identifier is associated with one value in the set of values included in the document identified by the document identifier. The generated posting lists are stored, wherein the posting lists are used to process a query on a range of values within the set of values.
    Type: Grant
    Filed: August 12, 2008
    Date of Patent: September 18, 2012
    Assignee: International Business Machines Corporation
    Inventors: Marcus Felipe Fontoura, Ronny Lempel, Runping Qi, Jason Yeong Zien
  • Publication number: 20120096016
    Abstract: Provided are a method, system, and article of manufacture for searching documents for ranges of numeric values. Document identifiers for documents are accessed, wherein the documents include at least one value that is a member of a set of values. A number of posting lists are generated. Each posting list is associated with a range of consecutive values within the set of values and includes document identifiers for documents including at least one value within the range of consecutive values associated with the posting list, and wherein each document identifier is associated with one value in the set of values included in the document identified by the document identifier. The generated posting lists are stored, wherein the posting lists are used to process a query on a range of values within the set of values.
    Type: Application
    Filed: December 22, 2011
    Publication date: April 19, 2012
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Marcus Felipe Fontoura, Ronny Lempel, Runping Qi, Jason Yeong Zien