Towards a Micro-Economic Model for Resource Allocation in Grid Computing Systems Kumaran Subramoniam , Muthucumaru Maheswaran , and Michel Toulouse TRLabs Winnipeg 10-75 Scurfield Boulevard, Winnipeg, MB, Canada R3Y 1P6 Department of Computer Science University of Manitoba, Winnipeg, MB, Canada R3T 2N2 E-mail: kumaran, mahes @win.trlabs.ca, toulouse@cs.umanitoba.ca Abstract Due to the expected scale of the Grid computing sys- tems, we need to develop highly distributed and extensible resource allocation frameworks for such systems. Micro- economic principles such as auctioning and commodity market are two approaches that are being pursued by sev- eral researchers for the Grid resource allocation problem. In this paper, we use a commodity market based approach to allocate resources, where resources are classified into dif- ferent classes based on the hardware components, network connectivity, and operating system. In commodity market, the prices of the commodities (“resources”) are fixed using individual supply and demand functions. In this paper we have developed an algorithm to determine the price of the resource. The simulation results show the performance of the pricing algorithm used in the commodity market. Keywords: Individual resource, bundled resource, princi- ple commodity and tˆ atonnement process. 1. Introduction In a Grid computing system, the resources can be grouped into classes such as CPU cycles, disk space, mem- ory space, network bandwidth, and specialized processing power. In this paper, we describe a pricing algorithm which can be deployed in a Grid computing system. The prices vary with the demand and supply of the resource. Once the prices are fixed, the allocation process is performed by a scheduler based on a first-come first-serve policy. In a Grid computing system, the allocation process is complicated by the requirement for acquiring “bundled” re- sources, i.e., depending on the application, we may require the allocator to assign a collection of machines with the as- sociated interconnecting network. This bundled allocation is often referred to as the co-allocation in the Grid literature. In a commodity market, the co-allocation requirement may yield multiple prices for a resource. For example, depend- ing on which bundle the resource is included, it can fetch different prices. The determination of different prices and the quantities to be sold or traded at the different prices is a key function in a commodity market. This paper intro- duces a novel scheme for fixing the prices based on a price Proceedings of the 2002 IEEE Canadian Conference on Electrical & Computer Engineering 0-7802-xxxx-x/02/$ 10 c 2002 IEEE tˆ atonnement process. The price tˆ atonnement process varies the price of the individual and bundled resources until an equilibrium is reached. The ultimate supply of resources is determined using a greedy strategy that maximizes the revenue generated by the allocation process. The resource allocation process follows a hierarchical structure. The paper is organized as follows. Section 2 discusses about the work done related to the resource allocation sys- tem. In Section 3, we describe the architecture of the Grid computing system in which the pricing algorithm can be de- ployed. In Section 4, we discuss about the pricing algorithm that we have developed for resource allocation. In Section 5, we provide the simulation results that we have obtained for the pricing algorithm. 2. Related work In [WoP00], a commodity market is used for allocation of resources. There are a number of differences between the commodity market used in this paper and the commod- ity market used in [WoP00]. The first and the most im- portant difference is, in [WoP00] the bundled resources are not considered, i.e., the resources are sold only as individ- ual commodity. By not considering the bundled resource the advantage of resources connected within the same net- work are not properly used. The use of bundled resource is explained in Section 3. In our project, we are considering both individual and bundled resources, so the option for the clients is not restricted. In [WoP00], the resource alloca- tion scheme does not have any hierarchical structure, while in the resource allocation scheme used in our project, the resource allocation is done on a hierarchical structure. In [WoP00], the resources are sold as individual resource only, bundled resources are not considered for trading. By not considering the bundled resource, the variation of demand of one resource does not affect the other resource. In our project we consider bundled and individual resource, there- fore the variation of demand of a bundled resource affects the price of the bundled resource and also the price of the individual resource, and vise versa. In [ChW98], pricing of the resources is done using the price-tˆ atonnement process. In [ChW98], WALRAS algo- rithm is used for the price-tˆ atonnement process. In WAL- RAS algorithm, the interdependence of the resources are 1