Patents by Inventor Navendu Jain

Navendu Jain 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: 8627123
    Abstract: One or more computers manage power consumption in a plurality of computers by repeatedly evaluating power consumption of pluralities of computers such that any given plurality of computers is evaluated by aggregating indicia of power consumption of the individual computers in the given plurality. The evaluation identifies or predicts pluralities of computers that are over-consuming power and identifies pluralities of computers that are under-consuming power. A first plurality of computers identified as over-consuming power are sent messages to instruct some of its comprising computers or virtual machines (VMs) to lower their computational workload. A second plurality of computers identified as under-consuming power are sent messages instructing the other computers to increase their computation workload.
    Type: Grant
    Filed: March 25, 2010
    Date of Patent: January 7, 2014
    Assignee: Microsoft Corporation
    Inventors: Navendu Jain, Aman Kansal
  • Publication number: 20140006861
    Abstract: The described implementations relate to processing of electronic data. One implementation is manifested as a system that can include an inference engine and at least one processing device configured to execute the inference engine. The inference engine can be configured to perform automated detection of concepts expressed in failure logs that include unstructured data. For example, the inference engine can analyze text of support tickets or diary entries relating to troubleshooting of an electronic network to obtain concepts identifying problems, actions, or activities. The inference engine can also be configured to generate output that reflects the identified concepts, e.g., via a visualization or queryable programming interface.
    Type: Application
    Filed: June 28, 2012
    Publication date: January 2, 2014
    Applicant: Microsoft Corporation
    Inventors: Navendu Jain, Rahul Potharaju
  • Publication number: 20140006862
    Abstract: The discussion relates to middlebox reliability. One example can apply event filters to a dataset of middlebox error reports to separate redundant middlebox error reports from a remainder of the middlebox error reports of the dataset. The example can categorize the remainder of the middlebox error reports of the dataset by middlebox device type. The example can also generate a graphical user interface that conveys past reliability and predicted future reliability for an individual model of an individual middlebox device type.
    Type: Application
    Filed: June 28, 2012
    Publication date: January 2, 2014
    Applicant: MICROSOFT CORPORATION
    Inventors: Navendu Jain, Rahul Potharaju
  • Publication number: 20130346227
    Abstract: Described are performance-based pricing models for pricing execution of a client job in a cloud service. Client-provided performance-related parameters are used to determine a price. The price may be a minimum bid price that is evaluated against a bid received from client bidder to accept or reject the bid. Alternatively, the price may be returned as a quote. For batch application-type jobs, performance parameters include a work volume parameter and a deadline or the like. For an interactive-type application job, example performance-related parameters may include an average load parameter, a peak load parameter, an acceptance rate parameter, a minimum capacity parameter, a maximum capacity parameter, and/or a time window parameter over which load is specified.
    Type: Application
    Filed: June 22, 2012
    Publication date: December 26, 2013
    Applicant: MICROSOFT CORPORATION
    Inventors: Navendu Jain, Ishai Menache
  • Publication number: 20130346572
    Abstract: There is provided a method and system for process migration in a data center network. The method includes selecting processes to be migrated from a number of overloaded servers within a data center network based on an overload status of each overloaded server. Additionally, the method includes selecting, for each selected process, one of a number of underloaded servers to which to migrate the selected process based on an underload status of each underloaded server, and based on a parameter of a network component by which the selected process is to be migrated. The method also includes migrating each selected process to the selected underloaded server such that a migration finishes within a specified budget.
    Type: Application
    Filed: June 25, 2012
    Publication date: December 26, 2013
    Applicant: Microsoft Corporation
    Inventors: Navendu Jain, Ishai Menache, F. Bruce Shepherd, Joseph (Seffi) Naor
  • Publication number: 20130246208
    Abstract: A method for adaptively allocating resources to a plurality of jobs. The method comprises selecting a first policy from a plurality of policies for a first job in the plurality of jobs by using a policy selection mechanism, allocating at least one resource to the first job in accordance with the first policy, and in response to completion of the first job, updating the policy selection mechanism to obtain an updated policy selection mechanism by using at least one processor. Updating the policy selection mechanism comprises evaluating the performance of the first policy with respect to the first job by calculating a value of a metric of utility for the first policy based on conditions associated with execution of the first job and updating the policy selection mechanism based on the calculated value and a delay of execution of the first job.
    Type: Application
    Filed: March 16, 2012
    Publication date: September 19, 2013
    Applicant: MICROSOFT CORPORATION
    Inventors: Navendu Jain, Ishai Menache, Ohad Shamir
  • Publication number: 20130232382
    Abstract: There is provided a method and system for determining an impact of failures in a data center network. The method includes identifying failures for the data center network based on data about the data center network and grouping the failures into failure event groups, wherein each failure event group includes related failures for a network element. The method also includes estimating the impact of the failures for each of the failure event groups by correlating the failures with traffic for the data center network.
    Type: Application
    Filed: March 1, 2012
    Publication date: September 5, 2013
    Applicant: MICROSOFT CORPORATION
    Inventors: Navendu Jain, Phillipa Gill
  • Publication number: 20130179371
    Abstract: A plurality of requests for execution of computing jobs on one or more devices that include a plurality of computing resources may be obtained, the one or more devices configured to flexibly allocate the plurality of computing resources, each of the computing jobs including job completion values representing a worth to a respective user that is associated with execution completion times of each respective computing job. The computing resources may be scheduled based on the job completion values associated with each respective computing job.
    Type: Application
    Filed: January 5, 2012
    Publication date: July 11, 2013
    Applicant: MICROSOFT CORPORATION
    Inventors: Navendu Jain, Ishai Menache, Joseph Naor, Jonathan Yaniv
  • Publication number: 20130151683
    Abstract: Methods and systems for load balancing in a cluster storage system are disclosed herein. The method includes identifying a source node within the cluster storage system from which to move a number of data objects, wherein the source node includes a node with a total load exceeding a threshold value. The method also includes selecting the data objects to move from the source node, wherein the data objects are chosen such that the total load of the source node no longer exceeds the threshold value. The method further includes determining a target node within the cluster storage system based on a proximity to the source node and the total load of the target node and moving the data objects from the source node to the target node.
    Type: Application
    Filed: December 13, 2011
    Publication date: June 13, 2013
    Applicant: Microsoft Corporation
    Inventors: Navendu Jain, Gae-won You
  • Publication number: 20130036424
    Abstract: A method for allocating a set of components of an application to a set of resource groups includes the following steps performed by a computer system. The set of resource groups is ordered based on respective failure measures and resource capacities associated with the resource groups. An importance value is assigned to each of the components. The importance value is associated with an affect of the component on an output of the application. The components are assigned to the resource groups based on the importance value of each component and the respective failure measures and resource capacities associated with the resource groups. The components with higher importance values are assigned to resource groups with lower failure measures and higher resource capacities. The application may be a partial fault tolerant (PFT) application that comprises PFT application components. The resource groups may comprise a heterogeneous set of resource groups (or clusters).
    Type: Application
    Filed: February 3, 2012
    Publication date: February 7, 2013
    Applicant: International Business Machines Corporation
    Inventors: Navendu Jain, Yoonho Park, Deepak S. Turaga, Chitra Venkatramani
  • Publication number: 20130007753
    Abstract: An elastic scaling cloud-hosted batch application system and method that performs automated elastic scaling of the number of compute instances used to process batch applications in a cloud computing environment. The system and method use automated elastic scaling to minimize job completion time and monetary cost of resources. Embodiments of the system and method use a workload-driven approach to estimate a work volume to be performed. This is based on task arrivals and job execution times. Given the work volume estimate, an adaptive controller dynamically adapts the number of compute instances to minimize the cost and completion time. Embodiments of the system and method also mitigate startup delays by computing a work volume in the near future and gradually starting up additional compute instances before they are needed. Embodiments of the system and method also ensure fairness among batch applications and concurrently executing jobs.
    Type: Application
    Filed: June 28, 2011
    Publication date: January 3, 2013
    Applicant: Microsoft Corporation
    Inventor: Navendu Jain
  • Publication number: 20120331113
    Abstract: A system for managing allocation of resources based on service level agreements between application owners and cloud operators. Under some service level agreements, the cloud operator may have responsibility for managing allocation of resources to the software application and may manage the allocation such that the software application executes within an agreed performance level. Operating a cloud computing platform according to such a service level agreement may alleviate for the application owners the complexities of managing allocation of resources and may provide greater flexibility to cloud operators in managing their cloud computing platforms.
    Type: Application
    Filed: June 27, 2011
    Publication date: December 27, 2012
    Applicant: Microsoft Corporation
    Inventors: Navendu Jain, Ishai Menache
  • Publication number: 20120330711
    Abstract: A system for managing allocation of resources based on service level agreements between application owners and cloud operators. Under some service level agreements, the cloud operator may have responsibility for managing allocation of resources to the software application and may manage the allocation such that the software application executes within an agreed performance level. Operating a cloud computing platform according to such a service level agreement may alleviate for the application owners the complexities of managing allocation of resources and may provide greater flexibility to cloud operators in managing their cloud computing platforms.
    Type: Application
    Filed: June 27, 2011
    Publication date: December 27, 2012
    Applicant: Microsoft Corporation
    Inventors: Navendu Jain, Ishai Menache
  • Patent number: 8225119
    Abstract: The described implementations relate to energy-aware server management. One implementation involves an adaptive control unit configured to manage energy usage in a server farm by transitioning individual servers between active and inactive states while maintaining response times for the server farm at a predefined level.
    Type: Grant
    Filed: February 23, 2009
    Date of Patent: July 17, 2012
    Assignee: Microsoft Corporation
    Inventors: Navendu Jain, Charles J. Williams, James Larus, Dan Reed
  • Publication number: 20120158447
    Abstract: This document describes techniques for pricing batch computing jobs based at least in part on temporally- or spatially-dependent costs. By so doing, prices offered to perform a batch computing job better reflect the costs to perform that batch computing job.
    Type: Application
    Filed: December 20, 2010
    Publication date: June 21, 2012
    Applicant: MICROSOFT CORPORATION
    Inventor: Navendu Jain
  • Publication number: 20120130554
    Abstract: This document describes techniques for dynamically placing computing jobs. These techniques enable reduced financial and/or energy costs to perform computing jobs at data centers.
    Type: Application
    Filed: November 22, 2010
    Publication date: May 24, 2012
    Applicant: MICROSOFT CORPORATION
    Inventors: Navendu Jain, Niv Buchbinder, Ishai Menache
  • Publication number: 20120109705
    Abstract: A data center system is described which includes multiple data centers powered by multiple power sources, including any combination of renewable power sources and on-grid utility power sources. The data center system also includes a management system for managing execution of computational tasks by moving data components associated with the computational tasks within the data center system, in lieu of, or in addition to, moving power itself. The movement of data components can involve performing pre-computation or delayed computation on data components within any data center, as well as moving data components between data centers. The management system also includes a price determination module for determining prices for performing the computational tasks based on different pricing models. The data center system also includes a “stripped down” architecture to complement its use in the above-summarized data-centric environment.
    Type: Application
    Filed: October 28, 2010
    Publication date: May 3, 2012
    Applicant: Microsoft Corporation
    Inventors: Christian L. Belady, James R. Larus, Danny A. Reed, Christian H. Borgs, Jennifer Tour Chayes, Ilan Lobel, Ishai Menache, Hamid Nazerzadeh, Navendu Jain
  • Patent number: 8112758
    Abstract: Techniques are disclosed for allocation of resources in a distributed computing system. For example, a method for allocating a set of one or more components of an application to a set of one or more resource groups includes the following steps performed by a computer system. The set of one or more resource groups is ordered based on respective failure measures and resource capacities associated with the one or more resource groups. An importance value is assigned to each of the one or more components, wherein the importance value is associated with an affect of the component on an output of the application. The one or more components are assigned to the one or more resource groups based on the importance value of each component and the respective failure measures and resource capacities associated with the one or more resource groups, wherein components with higher importance values are assigned to resource groups with lower failure measures and higher resource capacities.
    Type: Grant
    Filed: January 8, 2008
    Date of Patent: February 7, 2012
    Assignee: International Business Machines Corporation
    Inventors: Navendu Jain, Yoonho Park, Deepak S. Turaga, Chitra Venkatramani
  • Publication number: 20110320520
    Abstract: Optimization mechanism that dynamically splits the computation in an application (e.g., cloud), that is, which parts run on a client (e.g., mobile) and which parts run on servers in a datacenter. This optimization can be based on application characteristics, network connectivity (e.g., latency, bandwidth, etc.) between the client and the datacenter, power or energy available at the client, size of the application objects, load in the datacenter, security and privacy concerns (e.g., cannot share all data on the client with the datacenter), and other criteria, as desired.
    Type: Application
    Filed: June 23, 2010
    Publication date: December 29, 2011
    Applicant: MICROSOFT CORPORATION
    Inventor: Navendu Jain
  • Publication number: 20110282982
    Abstract: An optimization framework for hosting sites that dynamically places application instances across multiple hosting sites based on the energy cost and availability of energy at these sites, application SLAs (service level agreements), and cost of network bandwidth between sites, just to name a few. The framework leverages a global network of hosting sites, possibly co-located with renewable and non-renewable energy sources, to dynamically determine the best datacenter (site) suited to place application instances to handle incoming workload at a given point in time. Application instances can be moved between datacenters subject to energy availability and dynamic power pricing, for example, which can vary hourly in day-ahead markets and in a time span of minutes in realtime markets.
    Type: Application
    Filed: May 13, 2010
    Publication date: November 17, 2011
    Applicant: MICROSOFT CORPORATION
    Inventor: Navendu Jain