Neil Stratford, Richard Mortier, An Economic Approach to Adaptive Resource Management, Proc. HotOS 1999

(Summary by George Candea)

This paper sets out to build a system that solves the difficult problem of optimizing resource allocation in a system such that both global and local optima are achieved. The key is to count on applications adapting to resource availability conditions. In this context, the authors note that from among the two types of application adaptation (user-triggered and resource-triggered) they choose the latter.

The conventional approach of a centralized QoS manager is rejected on the basis of five drawbacks: it is hard to describe a general application model, some of the constraints needed for the global optimization problem are unknown or inherently incomplete, lack of scalability, lack of predictability due to co-scheduling artifacts, and the strong influence that (unknown) user inputs have on resource demand. The proposed architecture distributes the task of resource allocation and management both among applications and the resources themselves.

The system consists of applications and resource managers. A resource manager is like a broker that is in the business of selling resource contracts to applications; it aims to maximize its revenue. An application aims to maximize its own utility by cleverly buying and trading resource contracts. The money for all this is provided by user agents that implement a user-defined policy.

There are two types of contracts:

Contract renewal happens on various time scales: app - resource mgr. contracts are renegotiated on the order of 10s-100s of milliseconds and user agent - app contracts on the order of seconds. Scheduling is expected to be done on the order of single milliseconds. Contract pricing must satisfy three conditions: efficiency (since it happens often), promote system stability, and not have restricted time scales.

As of this paper's date, the authors had not implemented the system per se.