Patent ID: 8473602
Filing Date: 2013-06-25
Classification: H04L

Abstract:
1. A method for processor and network resource management in a computing system, the method comprising: identifying a plurality of performance objectives for a plurality of applications that utilize network and processing resources and are running on a given computer in a computing system containing a plurality of computers each running a plurality of applications, each identified performance objective dependent upon utilization of the network and processing resources by the application and comprising a prescribed performance target for execution of the application and a prescribed allocation of central processing unit processing power among the plurality of applications running on the given computer; recording observations of utilization levels of the network and processing resources and associated realization levels for each performance objective over time during the execution of the applications, each observation comprising a sample point in a multi-dimensional space that comprises a separate dimension for each controllable processing resource and the utilization of that controllable processing resource, each allocatable network resource and the utilization of that allocatable network resource and each performance objective and the realization levels of that performance objective such that the utilization of controllable processing resources central processing unit power, disk space and main memory contained in the given computer and utilized by the applications and allocatable network resources communication bandwidth, communication buffer space, link bandwidth, network switching bandwidth, network interface buffer capacity, operating system buffer capacity, application buffer capacity, network switching buffer capacity and queueing order within the computing system and utilized by the plurality of applications and each one of the plurality of performance objectives and the realization of that performance objective are covered; using the recorded observations to determine a multi-dimensional function expressing a dependency within the multi-dimensional space between realization of the identified performance objectives and utilization of the network and processing resources by the applications; using the determined multi-dimensional function to identify a desired set of actions with regard to allocation of the network and processing resources to the applications that optimizes the identified performance objectives, the desired set of actions comprising increasing and decreasing the allocation of the network and processing resources among the applications; maintaining functions expressing utilization of processing resources by each application as a function of network resource allocation to that application; using the maintained functions to analyze network resource allocations proposed by the identified desired set of actions for potential effects on processing resource allocations and performance objectives; scaling the proposed network resource allocations based upon the potential effects; and implementing the desired set of actions with regard to the allocation of the network and processing resources and the scaling of the proposed network resource allocations.