g-commerce: market formulations controlling resource

18
G-commerce: Market Formulations Controlling Resource Allocation on the Computational Grid Rich Wolski James S. Plank John Brevik Todd Bryan Department of Computer Science University of Tennessee Mathematics and Computer Science Department College of the Holy Cross University of Tennessee Technical Report UT-CS-00-450 http://www.cs.utk.edu/˜rich/publications/CS-00-450.ps.gz Abstract In this paper, we investigate G-commerce — computational economies for controlling resource allocation in Computational Grid settings. We de- fine hypothetical resource consumers (represent- ing users and Grid-aware applications) and re- source producers (representing resource owners who “sell” their resources to the Grid). We then measure the efficiency of resource allocation un- der two different market conditions: commodities markets and auctions. We compare both mar- ket strategies in terms of price stability, market equilibrium, consumer efficiency, and producer efficiency. Our results indicate that commodities markets are a better choice for controlling Grid resources than previously defined auction strate- gies. This work was supported, in part, by NSF grants EIA- 9975020, EIA-9975015, ACI-9876895. 1 Introduction With the proliferation of the Internet comes the possibility of aggregating vast collections of com- puters into large-scale computational platforms. A new computing paradigm known as the Com- putational Grid [15, 3] articulates a vision of dis- tributed computing in which applications “plug” into a “power grid” of computational resources when they execute, dynamically drawing what they need from the global supply. While a great deal of research concerning the software mecha- nisms that will be necessary to bring Computa- tional Grids to fruition is underway [3, 14, 18, 8, 4, 20, 19, 1, 28], little work has focused on the re- source control policies that are likely to succeed. In particular, almost all Grid resource allocation and scheduling and research espouses one of two paradigms: centralized omnipotent resource con- trol [16, 18, 24, 25] or localized application con- trol [9, 4, 2, 17]. The first is certainly not a scal- able solution and the second can lead to unsta-

Upload: others

Post on 19-Dec-2021

0 views

Category:

Documents


0 download

TRANSCRIPT

G-commerce: Mark et Formulations Controlling ResourceAllocation on the Computational Grid

�RichWolski

�JamesS.Plank

�JohnBrevik � ToddBryan

��Departmentof ComputerScience

Universityof Tennessee� MathematicsandComputerScienceDepartmentCollegeof theHoly Cross

Universityof TennesseeTechnicalReportUT-CS-00-450http://www.cs. ut k. edu /˜ ri ch /p ubl ic at io ns /CS- 00- 450 .p s. gz

Abstract

In this paper, we investigateG-commerce —computationaleconomiesfor controlling resourceallocationin ComputationalGrid settings.Wede-fine hypotheticalresource consumers (represent-ing users and Grid-aware applications)and re-source producers (representingresource ownerswho“sell” their resourcesto theGrid). We thenmeasure theefficiencyof resourceallocation un-der two differentmarket conditions:commoditiesmarkets and auctions. We compare both mar-ket strategies in termsof price stability, marketequilibrium, consumerefficiency, and producerefficiency. Our resultsindicatethat commoditiesmarketsare a betterchoice for controlling Gridresourcesthan previouslydefinedauctionstrate-gies.

�This work wassupported,in part,by NSFgrantsEIA-

9975020,EIA-9975015,ACI-9876895.

1 Intr oduction

With theproliferationof theInternetcomesthepossibilityof aggregatingvastcollectionsof com-putersinto large-scalecomputationalplatforms.A new computingparadigmknown asthe Com-putationalGrid [15, 3] articulatesa vision of dis-tributedcomputingin which applications“plug”into a “power grid” of computationalresourceswhen they execute, dynamically drawing whatthey needfrom the global supply. While a greatdealof researchconcerningthe softwaremecha-nismsthat will be necessaryto bring Computa-tional Grids to fruition is underway [3, 14, 18, 8,4, 20,19, 1, 28], little work hasfocusedonthere-sourcecontrolpoliciesthatarelikely to succeed.In particular, almostall Grid resourceallocationandschedulingandresearchespousesoneof twoparadigms:centralizedomnipotentresourcecon-trol [16, 18, 24, 25] or localizedapplicationcon-trol [9, 4, 2, 17]. Thefirst is certainlynot a scal-able solution and the secondcan lead to unsta-

ble resourceassignmentsas“Grid-aware” appli-cationsadaptto competefor resources.

In this paper, we investigateG-commerce —theproblemof dynamicresourceallocationontheGrid in termsof computationalmarketeconomiesin whichapplicationsmustbuy theresourcestheyusefrom resourcesuppliersusinganagreed-uponcurrency. Framingthe resourceallocationprob-lem in economicterms is attractive for severalreasons.First, resourceusageis not free. WhileburgeoningGrid systemsarewilling to make re-sourcesreadily available to early developersasa way of cultivating a usercommunity, resourcecosteventuallymustbe consideredif the Grid isto becomepervasive. Second,the dynamicsofGrid performanceresponseare, as of yet, diffi-cult to model. Application schedulerscanmakeresourceacquisitiondecisionsat machinespeedsin responseto theperceivedeffectsof contention.As resourceload fluctuates,applicationscanad-just their resourceusage,formingafeedbackcon-trol loop with a potentially non-linearresponse.By formulating Grid resourceusagein marketterms,we areableto draw upona large-bodyofanalytical researchfrom the field of economicsand apply it to the understandingof emergentGrid behavior. Last, if resourceownersareto beconvincedto federatetheir resourcesto theGrid,they mustbeableto accountfor therelativecostsandbenefitsof doingso.Any market formulationcarrieswith it aninherentnotionof relativeworthwhich canbeusedto quantify thecost-to-benefitratio for bothGrid usersandstake-holders.

While thereareanumberof differentplausibleG-commercemarket formulationsfor the Grid,we focus on two broad categories: commodi-ties markets andauctions. The overall goal ofthe ComputationalGrid is to allow applicationsto treat computational,network, andstoragere-sourcesas individual and interchangeablecom-modities, and not specific machines,networks,anddisk or tapesystems.ModelingtheGrid asacommoditiesmarket is thusa naturalchoice.Onthe otherhand,auctionsrequirelittle in the way

of global price information,andthey areeasytoimplementin a distributedsetting.Both typesofeconomieshavebeenstudiedasstrategiesfor dis-tributedresourcebrokering[11, 29, 21, 6, 7, 10].Our goal is to enhanceour deeperunderstandinghow theseeconomieswill fareasresourcebroker-ing mechanismsfor ComputationalGrids.

To investigateComputationalGrid settingsandG-commerceresourceallocation strategies, weevaluatecommoditiesmarketsandauctionswithrespectto four criteria:

1. Grid-widepricestability

2. Market equilibrium

3. Applicationefficiency

4. Resourceefficiency

Pricestability is critical to ensureschedulingsta-bility. If the price fluctuateswildly, applicationandresourceschedulersthat basetheir decisionsonthestateof theeconomywill follow suit, lead-ing to poor performance,and thereforeineffec-tivenessof theGrid asacomputationalinfrastruc-ture. Equilibrium measuresthe degreeto whichpricesare fair. If the overall market cannotbebroughtinto equilibrium, the relative expenseorworthof aparticulartransactioncannotbetrusted,andagainthe Grid is not doing its job. Applica-tion efficiency measureshow effective the Gridis as a computationalplatform. Resourceeffi-ciency measureshow well the Grid managesitsresources.Poor applicationand/or resourceef-ficiency will meanthat the Grid is not succeed-ing asa computationalinfrastructure. Thus,weusethesefour criteria to evaluatehow well eachG-commerceeconomyworksasthebasisfor re-sourceallocationin ComputationalGrids.

Theremainderof thispaperis organizedasfol-lows. In thenext section,we discussthespecificmarket formulationswe usein this study. Sec-tion 3 describesthe simulationmethodologyweuseandthe resultswe obtainfor differenthypo-thetical market parameterizations.In Section4weconcludeandpoint to futurework.

2

2 G-commerce— Mark et Economiesfor the Grid

In formulating a computationaleconomyforthe Grid, we make four assumptions.#1: Therelativeworth of a resource is determinedby itssupplyand the demandfor it. This assumptionis importantbecauseit rulesout pricing schemesthat are basedon arbitrarily decidedpriorities.For example,it is not possiblein aneconomyforan organizationto simply declarewhat the priceof its resourcesareandthendecreethat its userspay that price even if cheaper, betteralternativesare available. While thereare several plausiblescenariosin which suchDraconianpolicies areappropriate(e.g. usersare fundedto usea spe-cific machineaspart of their individual researchprojects),from theperspectiveof theGrid, there-sourceallocationproblemundertheseconditionshasbeensolved.

#2: Relativeworth, and not price, are deter-minedby supplyand demand. Supply and de-mandare functionsof price, and relative worthis determinedby someoptimizationfunctionoverthespaceof prices.For example,in thispaper, wewill considerthepriceto berepresentativeof rela-tiveworth at theprice-pointthatequalizessupplyanddemand– thatis,atmarketequilibrium.Con-versely, at a non-equilibriumprice-point(wheresupplydoesnotequaldemand),priceeitherover-statesor understatesrelativeworth.

#3: Wedonotrestrictthedefinitionof currencyor therulesgoverningits supply. If usersor appli-cationsaregiven currency from outsidethe sys-tem,wewouldexpectinflationarypricebehavior,but themarket will remainintact. Also, it is pos-sible to segregatecomputationalconsumersandproducers.In a “true” market, producersareex-pectedto spendtheir profits (somewhere)withintheeconomyeventually. While webelieveour re-sultsremainvalid for this morerestrictedcase,inthis work we modelproducersandconsumersasdisjointentities.

#4: Resource decisionsbasedon self-interestare inescapablein anyfederatedresourcesystem.If wearetosimulateacomputationaleconomywemustultimately hypothesizesupplyanddemandfunctions for our simulatedproducersand con-sumersrespectively. Individual supply and de-mandfunctionsare difficult to measureat best,particularlysincethereareno existing Computa-tional Grid economiesat present.Our admittedlyless-satisfactoryapproachis to definesupplyanddemandfunctionsthat representeachsimulatedproducerandconsumer’s “self-interest.” An in-dividual consumerbuys only if thepurchaseis a“gooddeal” for thatconsumer. Analogously, pro-ducerssell only whena saleis in their bestinter-est.

In the next section,Section2.1 we detail thespecific functions we investigate,but generallyour approachassumesthatindividualsactonly intheirown self-interest.

2.1 Producersand Consumers

To comparethe efficacy of commoditiesmar-kets and auctions as Grid resourceallocationschemes,we definea set of simulatedGrid re-sourceproducersandconsumersrepresentingre-source providers and applicationsrespectively.We thenusethe samesetof producersandcon-sumersto comparecommodityandauction-basedmarketsettings.

We simulatetwo differentcommodityproduc-ersin this study: CPUanddisk storage.That is,from the perspective of a resourcemarket, thereare two kinds of resourceswithin our simulatedGrids: CPUsanddisks. While theresultsshouldgeneralizeto includeavarietyothercommodities,networks presenta specialproblem. Our con-sumermodel is that an applicationmay requesta specifiedamountof CPUanddisk (theunitsofwhich we discussbelow) andthat theserequestsmaybeservicedby any provider regardlessof lo-cation or network connectivity. Since networklinks cannotbe combinedwith other resources

3

arbitrarily, they cannotbe modeledas separatecommodities. We believe that network costcanbe representedin terms of “shipping” costs inmore complicatedmarkets,but for the purposesof thisstudy, weconsidernetwork connectivity tobeuniform.

2.1.1 CPU Producer Model

In this study, a CPU representsa computationalenginewith a fixeddedicatedspeed.A CPUpro-duceragreesto sell to the Grid somenumberoffixed “shares”of the CPU it controls. The real-world scenariofor this modelis for CPUownersto agreeto hosta fixednumberof processesfromtheGrid in exchangefor Grid currency. Eachpro-cessgetsa fixed, pre-determinedfraction of thededicatedCPU speed,but the owner determineshow many fractionsor “slots” heor sheis willingto sell. For example,in our study, the fraction is10%soeachCPUproduceragreesto sell a fixednumber(lessthan 10) of 10%-sizedslots to theGrid. Whena job occupiesa CPU, it is guaran-teedto get 10% of the availablecycles for eachslot it consumes.EachCPU,however, differs inthetotal numberof slotsit is willing to sell.

To determinesupply at a given price-point,eachCPUcalculates����� � ������� � ������������������ !��"�#$��%&" (1)

where '�(�) (�*,+-( is the total amountof Grid cur-rency (heretoforeto bereferredto as$G which ispronounced“Grid bucks”), *,./ is an increment-ing clock, and 0�12.4350 is the total numberof pro-cessslots the CPU owner is willing to support.The 67(489* :�'<;>=�( valueis theaverage$Gpertimeunit per slot the CPU hasmadefrom selling tothe Grid. In our study, CPU producerswill onlysell if thecurrentpriceof a CPUslot exceedsthe67(489* :?'<;>=�( value,andwhenthey sell, they sellall unoccupiedslots.Thatis, theCPUwill sellallof its availableslotswith it will turn a profit (perslot)with respectto theaverageprofit over time.

2.1.2 Disk Producer Model

The modelwe usefor a disk produceris similarto that for the CPU producer, except that diskssell somenumberof fixed-sized“files” that ap-plicationsmayusefor storage.The 67(489* :�';@=�(calculationfor diskfiles is�����< � ������� � ������������������ !���A���B���C�2%>D (2)

where=�8�:�8E=�;F3HG is thetotalnumberof filesadiskproduceris willing to sell to theGrid. If thecur-rentpricefor afile is greaterthanthe 67(489* :�'<;>=�( ,adiskproducerwill sell all of its availablefiles.

Note that the resolutionof CPU slotsandfilesizesis variable.It is possibleto makeaCPUslotspanthe durationof a singleclock cycle, andadiskfile beasinglebyte.Sinceourmarketstrans-actbusinessat thecommoditylevel, however, wehypothesizethat any real implementationfor theGrid will needto work with larger-scaleaggrega-tions of resourcesfor reasonsof efficiency. Forthesimulationsdescribedin Section3 we choosevaluesfor theseaggregationsthat we believe re-flectamarket formulationthatis currentlyimple-mentable.

2.1.3 Consumersand Jobs

Consumersexpresstheir needsto the market inthe form of jobs. Eachjob specifiesboth a sizeand an occupancy durationfor eachresourcetobe consumed.Eachconsumeralsosportsa bud-getof $G that it canuseto pay for the resourcesneededby its jobs.Consumersaregivenaninitialbudgetanda periodicallowance,but they arenotallowedto hold$Goverfrom oneperioduntil thenext. Thismethodof budgetrefreshis inspiredbytheallocationpoliciescurrentlyin useat theNSFPartnershipsfor AdvancedComputationalInfras-tructure(PACIs). At thesecenters,allocationsareperishable.

Whenaconsumerwishesto purchaseresourcesfor a job, it declaresthe size of the requestforeachcommodity, but not theduration.Our modelis that job durationsarerelatively long, andthat

4

producersallow consumersoccupancy withoutknowing for how long theoccupancy will last.Atthe time a produceragreesto sell to a consumer,a price is fixed that will be charged to the con-sumerfor eachsimulatedtime unit until the jobcompletes.

For example,considera consumerwishing tobuy aCPUslot for 100minutesandadiskfile for300minutesto serviceaparticularjob. If thecon-sumerwishesto buy eachfor aparticularprice,itdeclaresto the market a demandof 1 CPU slotand1 disk slot, but doesnot reveal the 100 and300 minutedurations.A CPU producerwishingto sell at the CPU price agreesto acceptthe jobuntil thejob completes(asdoesthediskproducerfor thediskjob). Oncethesalesaretransacted,theconsumer’sbudgetis decrementedby theagreed-uponpriceeverysimulatedminute,andeachpro-ducer’s revenueaccountis incrementedby thesameamount.If thejob completes,theCPUpro-ducerwill haveaccrued100timestheCPUprice,thediskproducerwill haveaccrued300timesthedisk price, and the consumer’s budgetwill havebeendecrementedby the sum of 100 times theCPUpriceand300timesthediskprice.

In definingthis methodof conductingresourcetransactions,wemakeseveralassumptions.First,we assumethat in anactualGrid settingresourceproducersor supplierswill commitsomefractionof their resourcesto theGrid, andthat fraction isslowly changing. Oncecommitted,the fraction“belongs” to the Grid so producersarenot con-cernedwith occupancy. They are concerned,inour models,with profit andthey only sell if it isprofitableon the average. By including time inthesupplyfunctions,producersconsiderpastoc-cupancy (in termsof profit) whendecidingto sell.We arealsoassumingthatneitherconsumersnorproducersaremaliciousandthatbothhonortheircommitments. In practice,this requirementas-suredlymaybedifficult to enforce.If consumersandproducersmustagreeto usesecureauthenti-cationmethodsandsystemprovided libraries togain accessto Grid resources,then it shouldbe

possible.

2.1.4 ConsumerDemand

Theconsumerdemandfunctionis morecomplexthan the CPU and disk supply functions. Con-sumersmustpurchaseenoughCPU anddisk re-sourcesfor eachjob they wishto run. If they can-not satisfytherequestfor only onetype, they donot expressdemandfor theother. That is, thede-mandfunctionsfor CPU and disks are stronglycorrelated(althoughthesupplyfunctionsarenot).This relationshipbetweensupply and demandfunctionsconstitutesthe mostdifficult of marketconditions. Most market systemsmake weakerassumptionsabout the differencein correlation.By addressingthemoredifficult case,we believeour work morecloselyresembleswhatcanbere-alizedin practice.

To determinetheir demandat a given price,eachconsumerfirst calculatestheaveragerateatwhich it would have spent$G for the jobs it hasrunsofar if it hadbeenchargedthecurrentprice.It thencomputeshow many $G it canspendpersimulatedtime unit until thenext budgetrefresh.Thatis, it computes�<��I �4�%&� � JLK %>��%@�<# M����N K�O � ������� K ���� (3)�A������PC#Q� �4�%&� � �4���R�����2?I PS��T4I���%U ����V�����"�WYX7��� !Z (4)

where 3S.43S8E1 /[.�'�\ K is the total amount ofwork performed so far using commodity ; ,:�';@=�( K is the current price for commodity ; ,'<(�6789;>*,;F*^] _�+^`a]B(�3 is theamountleft to spendbe-fore thebudgetrefresh,'<(�b^'<(�0�c is thebudgetre-fresh time, and *d.�/ is the currenttime. When=�8�:�8E_�12( '�8a3S( is greaterthanor equalto 89)E] '<8a3S( ,aconsumerwill expressdemand.

Unlike our supplyfunctions,theconsumerde-mandfunction doesnot considerpastprice per-formancedirectlywhendeterminingdemand.In-stead,consumersusing this function act oppor-tunisticallybasedon themoney they have left tospendandwhenthey will receivemore.They use

5

pastbehavior only asan indicationof how muchwork they expectto introduceandbuy whentheybelievethey canafford to sustainthis rate.

Consumers,in our simulations,generateworkasafunctionof time. Wearbitrarilyfix somesim-ulatedperiodto bea “simulatedday.” At thebe-ginningof eachday, every consumergeneratesarandomnumberof jobs. By doing so, we hopeto model the diurnal userbehavior that is typi-cal in large-scalecomputationalsettings. In ad-dition, eachconsumercangeneratea singlenewjob every time stepwith a pre-determinedproba-bility. Consumersmaintaina queueof jobswait-ing for servicebeforethey areacceptedby pro-ducers.Whencalculatingdemand,they compute89)9] '�8a3S( and =�84:�8 _�12( '�8a3S( anddemandasmanyjobsfrom this queueasthey canafford.

To summarize,for our G-commercesimula-tions:e All entitiesexceptthe market-maker act in-

dividually in their respectiveself-interests.e Producersconsiderlong-termprofit andpastperformancewhendecidingto sell.e Consumersaregivenperiodicbudgetreplen-ishmentsandspendopportunistically.e Consumersintroducework loadsin bulk atthebeginningof eachsimulatedday, andran-domly throughouttheday.

We believe that this combinationof characteris-ticscapturesareasonablesetof producerandcon-sumertraitsin realGrid settings.

2.2 CommoditiesMark ets

In a real-world commoditiesmarket, a singletype of commodityis exchangedin a centrallo-cation. An importantfeatureof thecommoditiesmarket is thatthegoodsbroughtto market by thevarioussuppliersareregardedasinterchangeable,marketpriceis publicly agreeduponfor thecom-modity regardedasa whole, and all buyersand

sellersdecidewhether(andhow much)to buy orsell at this price. Contrastthis typeof commercewith onebaseduponauctions,whereineachbuyerandselleractsindependentlyandcontractsto buyor sell at apriceagreeduponprivately.

Since the goal of a computationalGrid is toprovideuserswith resourceswithout regardto theparticularsupplier, it seemsverynaturalto modela Grid economyusingcommoditiesmarkets. Todoso,werequireapricingmethodologythatpro-ducesa systemof priceadjustmentswhich bringabout market equilibrium (i.e. equalizessupplyanddemand).

2.2.1 Dynamic Pricing in CommoditiesMar -kets

Froma theoreticalstandpoint,a market economyis a systeminvolving producers,consumers,sev-eral commodities,andsupplyanddemandfunc-tions for eachcommoditywhich aredeterminedby the setof market pricesfor the variouscom-modities. (For the exact formulation of the as-sumptionsmadein amarketeconomy, seeDebreu[13].)

A uniqueequilibriumpriceis guaranteedto ex-ist in this framework by a theoremof Debreu([13], Chapter5), the proof of which is non-constructive and involves topological methods.Since Debreu’s result, there have beenvariousattemptsto formulaterules for price adjustmentwhichcanbeguaranteedto produceasequenceofpriceswhich convergeson theequilibriumprice.Most notably, a variationof Walras’ tatonnement(“groping”; cf [31]), in which eachprice is ad-justedindividually in responseto its own excessdemand,canbe shown to converge to economicequilibrium,but only undertherestrictivehypoth-esisof “gross substitutability.” By definition, amarket economyexhibits grosssubstitutabilityifthedemandfor any goodis non-decreasingin theprice of any othergood; that is, if an increaseinprice for good ; , all otherpricesremainingcon-stant,never causesthedemandfor good fag&fihj ; ,

6

to decrease.Grosssubstitutabilityis not presentin our market. For example,an increasein theprice of CPU leadsto a decreasein demandforCPU, which will also lead to a decreasein de-mandfor disk, sinceCPU and disk are usedinconjunctionwith oneanother. (A real-world ex-ample might be livestockand feed corn, sincea higher price of cattle meansfewer cattle pur-chased,which in turn lessensthe needfor feedcorn.)

In [27], Smaleproduceda meansfor provingthe existenceof equilibrium which alsoentailsaschemefor priceadjustmentswhich reachesit:

If commoditypricesarerepresentedasa price

vector k j lmmmmn :,o:�p...:?qrSsssst , where: K standsfor theprice

of the ;�uwv commodity, we can defineexcessde-mandx�y for the f9uwv commodityasthedemandmi-nus the supply. As defined, x�y may be positiveor negative;negativeexcessdemandcanbeinter-pretedsimply asexcesssupply. We assumethatthemarketsfor thesecommoditiesmaybe inter-related,so thateach x�y is a function of all of theprices: K , thatis, of thevector k . Smale’s theoremsaysgiven a market consistingof * interrelatedcommoditieswith price vector k andassociatedexcessdemandvector z-{2k}| j z j anequilibriumpoint with k�~ suchthat z-{�k�~�| j � exists [33].Moreover, for any value of k , we can form the*���* matrixof partialderivatives��� {2k}| j���� x K� :EyE���Thenfor any valueof � which hasthesamesignasthedeterminantof

��� {�k�| , we canobtaineco-nomic equilibrium by alwaysobeying the differ-entialequation��� {�k�| `9k`a3 j�� ��z-{2k}| � (5)

2.2.2 Price Adjustment Schemes

Herein we examine the resultsof using severalprice adjustmentschemesin simulatedcomputa-tional market economies.Smale’s methodis notpossibleto usedirectly for a numberof reasons.First, any actualeconomyis inherentlydiscrete,sothepartialderivativesin equation5 do not ex-ist, strictly speaking.Second,giventhebehaviorof theproducersandconsumersdescribedabove,therearethresholdpricesfor eachagentthatbringaboutsuddenradicalchangesin behavior, sothata reasonablemodelfor excessdemandfunctionswould involve sizeablejump discontinuities.Fi-nally, the assumptionsin Smale’s modelarethatsupply and demandare functions of price onlyandindependentof time,whereasin practicetherearea numberof waysfor supplyanddemandtochangeover time for agivenpricevector.

Observe that taking � j � and applying theEuler discretizationat positive integer valuesof3 reducesthis processto the Newton-Raphsonmethodfor solving z-{�k�| j � ; for this reason,Smalerefersto this processas“global Newton.”

Implementing Smale’s method: As observedabove,obtainingthepartialderivativesnecessaryto carryoutSmale’sprocessin anactualeconomyis impossible;however, within the framework ofour simulatedeconomy, we areableto get goodapproximationsfor the partialsat a given pricevector by polling the producersand consumers.Startingwith a price vector, we find their pref-erencesat pricevectorsobtainedby fixing all butonepriceandvaryingtheremainingpriceslightly,thusachieving a “secant-line”approximationforeachcommodity separately;we then substitutetheseapproximationsfor thevaluesof thepartialderivatives in the matrix

��� {2k}| , discretizewithrespectto time, solve Equation 5 for the incre-ment `9k to getour new price vector, anditerate.Wewill refer, convenientlybut somewhatinaccu-rately, to this priceadjustmentschemeasSmale’smethod.

7

The First Bank of � : The drawback to theaboveschemeis thatit reliesonpolling aggregatesupplyanddemandrepeatedlyto obtainthe par-tial derivatives of the excessdemandfunctions.In practice,we do not wish to assumethat suchpolling informationwill beavailable.

A theoretically attractive way to circumventthis difficulty is to approximateeachexcessde-mandfunction x K by a polynomialin :,o�g>:�p�g ����� g>:?qwhich fits recentprice and excessdemandvec-tors and to use the partial derivatives of thesepolynomialsin Equation 5. In simulations,thismethoddoesnot,in general,producepriceswhichapproachequilibrium. The First Bank of G isa price adjustmentschemewhich both is prac-ticable and gives good results; this schemein-volves the using tatonnement(seeabove) untilpricesget“close” to equilibrium,in thesensethatexcessdemandshave sufficiently small absolutevalue,andthenusingthepolynomialmethodfor“fine tuning.” Thus,theFirst Bankof G approx-imatesSmale’s methodbut is implementableinreal-world Grid settingssinceit hypothesizesex-cessdemandfunctionsandneednotpoll themar-ket for them. Our experienceis that fairly high-degreepolynomialsarerequiredto captureexcessdemandbehavior with the sharpdiscontinuitiesdecriedabove. For all simulationsdescribedinSection3, weuseadegree17polynomial.

2.3 Auctions

Auctionshave beenextensively studiedas re-sourceallocationstrategies for distributed com-puting systems. In a typical auction system(e.g. [11, 29, 21, 6]), resourceproducers(typi-cally CPU producers)auction themselves usinga centralizedauctioneerandsealed-bid,second-priceauctions.That is, consumersplaceonebidwith theauctioneer, andin eachauction,thecon-sumerwith the highestbid receivesthe resourceat thepriceof thesecond-highestbidder. This isequivalentto “just” outbiddingthesecond-highestbidder in an open,multi-roundauction,anden-

couragesconsumersto bid what the resourceisworth to them(see[6] for further descriptionofauctionvariants).

Whenconsumerssimply desireonecommod-ity, for exampleCPUsin Popcorn[21], auctionsprovideaconvenient,straightforwardmechanismfor clearing the marketplace. However, the as-sumptionsof a Grid Computing infrastructureposea few difficulties to this model. First, whenanapplication(theconsumerin aGridComputingscenario)desiresmultiple commodities,it mustplacesimultaneousbidsin multiple auctions,andmayonly be successfulin a few of these.Whenthis happens,it mustexpendcurrency on the re-sourcesthat it hasobtainedwhile it waits to ob-tain the others. This is expenditureis wasteful,andthe uncertainnatureof auctionsmay leadtoinefficiency for bothproducersandconsumers.

Second,while a commoditiesmarket presentsanapplicationwith a resource’sworth in termsofits price, thus allowing the applicationto makemeaningfulschedulingdecisions,an auction ismoreunreliablein termsof both pricing andtheability to obtaina resource,andmaythereforere-sult in poorschedulingdecisionsandmoreineffi-ciency for consumers.

To gain a better understandingof how auc-tions fare in comparisonto commoditiesmar-kets,weimplementthefollowingsimulationof anauction-basedresourceallocationmechanismforcomputationalgrids. At eachtime step,CPUanddisk producerssubmittheir unusedCPUandfileslots to a CPU anda disk auctioneer. Theseareaccompaniedby a minimumsellingprice,whichis the averageprofit per slot, asdetailedin Sec-tion 2.1.1 above. Consumersuse the demandfunction as describedin Section2.1.3 to definetheir bid prices,andaslong asthey have moneyto bid on a job, anda job for which to bid, theybid oneachcommodityneededby theiroldestun-commencedjob.

Once the auctioneershave received all bidsresourcesubmissionsfor a time step, they cy-cle throughall the commoditiesin a randomor-

8

der, performingone auctionper commodity. Ineachauction,the highest-biddingconsumergetsthe commodity if the bid price is greaterthanthe commodity’s minimum price. If there is asecond-highestbidderwhosepriceis greaterthanthe commodity’s minimum price, then the pricefor the transactionis the second-highestbidder’sprice. If thereis no suchsecond-highestbidder,then the price of the commodity is the averageof the commodity’s minimum selling price andtheconsumer’s bid price. Whena consumerandcommodityhavebeenmatched,thecommodityisremoved from the auctioneer’s list of commodi-ties, as is the consumer’s bid. At that point, theconsumercan submit anotherbid to that or anyotherauction,if desired.Thisoccurswhenacon-sumerhasobtainedall commoditiesfor its old-estuncommencedjob, andhasanotherjob to run.Auctionsaretransactedin this mannerfor everycommodity, andthis processis repeatedat everytimestep.

Notethatthisstructuringof theauctionsmeansthateachconsumermayhave at mostonejob forwhich it is currentlybidding. Whenit obtainsallthe resourcesfor that job, it immediatelystartsbiddingon its next job. Whena time stepexpiresandall auctionsfor thattimestephavebeencom-pleted, there may be several consumerswhosejobshave someresourcesallocatedandsomeun-allocated,asaresultof failedbidding.Thesecon-sumershave to pay for their allocatedresourceswhile they wait to startbidding in the next timestep.

While theauctionsdeterminetransactionpricesbasedon individual bids, thesupplyanddemandfunctionsusedby the producersand consumersto set ask and bid price are the samefunctionswe usein the commoditiesmarket formulations.Thus,we can comparethe market behavior andindividual producerand consumerbehavior inbothauctionandcommoditymarket settings.

3 Simulations and Results

We comparecommoditiesmarkets and auc-tions using the producersand consumersde-scribedin Section2.1 in two overall market set-tings. In thefirst, which we termunder-demand,producersare capableof supportingenoughde-mand to serviceall of the jobs consumerscanafford. Recall that our markets do not includeresale components. Consumersdo not makemoney. Instead,$Garegivento themperiodicallymuch the in the sameway that PACIs dole outmachine-timeallocations. Similarly, producersdonotspendmoney. Oncegathered,it is hoarded.Theunder-demandcasecorrespondsto aworkingGrid economyin which the allocationscorrectlymatchthe availableresources.That is, whentherate that $G are allocatedto consumersroughlymatchestherateat which they introducework tothe Grid. In the over-demandcase,consumerswish to buy moreresourcethanis available.Thatis, they generatework fastenoughto keepall pro-ducersalmostcompletelybusytherebycreatingawork back-log.

Table1 completelydescribestheinvariantsim-ulation parameterswe chosefor both cases.Forall ranges(e.g.slotsper CPU),uniform pseudo-randomnumberswere drawn from betweenthegivenextrema.For theunder-demandsimulation,we defined �4�a� consumersto usethe �4��� CPUsanddisks,whereeachconsumersubmitteda ran-domnumberof jobs(between� and �4�a� ) ateveryday-break,andhada10%chanceof submittinganew job every time unit. Theover-demandsimu-lation specified� �a� of thesameconsumers,withall otherparametersheldconstant.

Usingoursimulatedmarkets,wewishto inves-tigatethreequestionswith respectto commoditiesmarketsandauctions.

1. Do the theoretical results from Smale’swork [26] apply to plausibleGrid simula-tions?

2. Can we approximateSmale’s methodwith

9

CPUs 100disks 100CPUslotsperCPU [2 .. 10]diskfilesperdisk [1 .. 15]CPUjob length [1 .. 60] timeunitsdisk job length [1 .. 60] timeunitssimulatedday 1440timeunitsallowanceperiod [1 .. 10] daysjobssubmittedat day-break [1 .. 100]new job probability 10%allowance �4��� $GBankof G PolynomialDegree 17� factor .01

Table 1. Invariant sim ulation parameter s forthis stud y

onethat is practically implementable?

3. Are auctions or commodities marketsa better choice for Grid computationaleconomies?

Question(1) is importantbecauseif Smale’s re-sultsapply, they dictatethatanequilibriumprice-point mustexist (in a commoditymarket formu-lation), andthey provide a methodologyfor find-ing those prices that make up the price-point.Assumingthe answerto question(1) is affirma-tive, we alsowish to explore methodologiesthatachieveor approximateSmale’sresults,but whichare implementablein real Grid settings. Lastly,recentwork in Grid economies[1, 16, 24] andmuchprevious work in computationaleconomicsettings[12, 22, 5, 30] hascenteredon auctionsasthe appropriatemarket formulation. We wishto investigatequestion(3) to determinewhethercommoditiesmarketsareabetter, or at leastplau-siblealternative.

3.1 Mark et Conditions

Figure 1 shows the CPU and disk prices forSmale’s methodin our simulatedGrid economy

over �4� g �a��� timeunits.Thediurnalnatureof con-

0�

2000�

4000�

6000�

8000�

10000�

Time (s)

0

100

200

300

400

500

Pric

e�

Figure 1. Smale’s prices for the under -demand case . Solid line is CPU price ,’ anddotted line is disk price in $G

sumerjob submissionis evident from the pricefluctuations. Every 1440 “minutes” eachcon-sumer generatesbetween1 and 100 new jobscausingdemandand prices to spike. However,Smale’s method is able to find an equilibriumprice for both commoditiesquickly, as is evi-dencedin Figure2. Noticethattheexcessdemandspikes in conjunctionwith the diurnal load, butis quickly broughtto zeroby the pricing shownin Figure1 whereit hoversuntil the next cycle.Figure 3 shows excessdemandfor disk duringthesimulationperiod.Again,market equilibriumis quickly achieved despitethe cyclic and non-smoothaggregatesupply and demandfunctionsimplementedby theproducersandconsumers.

In Figure 4 we show the pricing determinedby our engineeringapproximation to Smale’smethod— theFirst Bankof G TheFirst BankofG pricing closelyapproximatesthe theoreticallyachievable resultsgeneratedby Smale’s methodin our simulatedenvironment. However, TheBank doesnot requirepolling to determinethe

10

0�

2000�

4000�

6000�

8000�

10000�

Time (s)

0

1000

2000

3000

4000

5000

Exc

ess

Dem

and

Figure 2. Smale’s CPU excess demand for theunder -demand case . The units are CPU slots.

partial derivatives for the aggregate supply anddemandfunctions. Instead,it usesan iterativepolynomial approximationthat it derives fromsimpleobservationsof purchasingandconsump-tion. As such,it is possibleto implementtheFirstBank of G for use in a real Grid setting. Fig-ures5 and 6 show excessdemandmeasuresgen-eratedby First Bank of G pricing over thesimu-latedperiod. While theexcessdemandsfor bothcommoditiesarenot astightly controlledaswithSmale’smethod,theFirstBankof G keepspricesverynearequilibrium.

Thepricingdeterminedby auctionsis quitedif-ferent, however, as depictedin Figures7 and 8(we show CPU anddisk price separatelyastheyarealmostidenticalandobscurethe graphwhenoverlayed). In the figure, we show the averagepricepaidby all consumersfor CPUduringeachauctionround. We usethe averageprice for allauctionsas being representative of the “global”market price. Eventhoughthis priceis smoothedas an average(someconsumerspay more andsomepay lessduring eachtime step), it showsconsiderablymorevariancepricessetby thecom-moditiesmarket. Thespikesin workloadarenot

0�

2000�

4000�

6000�

8000�

10000�

Time (s)

0

1000

2000

3000

4000

5000

Exc

ess

Dem

and

Figure 3. Smale’s disk excess demand for theunder -demand case . The units are sim ulatedfile units.

reflectedin the price, and the varianceseemstoincrease(i.e. thepricebecomeslessstable)overtime. Furthermore,diskpricingis virtually identi-cal. Disk resourcesaremoreplentiful in outsimu-lationssodiskpricesshouldbelower in ahealthyeconomy. The auctionfails to capturethis rela-tionship, but the commoditiesmarket (both the-oretically an practically) correctly determinesahigherpricefor thescarceresource.

Excessdemandfor anauctionis moredifficultto measuresince pricesare negotiatedbetweenindividual buyersandsellers. As an approxima-tion, we considerthesumof unsatisfiedbidsandthe numberof auctionsthat did not make a saleasa measureof market equilibrium. Under thisassumption,the market is in equilibrium whenall bidsaresatisfied(demandis satisfied)andallauctionedgoodsare sold (supply is exhausted).Any surplusgoodsor unsatisfiedbids are “ex-cess.” While is doesnot make senseto assignasignto thesesurpluses(surplussupply, for exam-ple, may not be undemandedsupply) in the waythatwecanwith aggregatesupplyanddemandina commoditymarket, in absolutevaluethis mea-

11

0�

2000�

4000�

6000�

8000�

10000�

Time (s)

0

100

200

300

400

500

Pric

e

Figure 4. First Bank of G prices for the under -demand case . Solid line is CPU price ,’ anddotted line is disk price in $G

surecapturesdistancefrom equilibrium. Hencewe termit absoluteexcessdemand.

In Figure9 weshow thismeasureof excessde-mandfor CPUsin the under-demandedauction.Figure10showsthesamedataasin Figure5 fromtheFirstBankof G, but in absolutevalue. Whilethe First bank of G shows more variancein ab-soluteexcessdemand,it achievesequilibrium attimes. Conversely, the auction setsprices thatnever satisfy the market. Strangely, the auctioncomesclosestto equilibriumwhendemandspikesat eachday-break.We areworking to understandthis behavior andwill reporton it aspart of ourfutureendeavors.

From thesegraphswe concludethat Smale’smethodis appropriatefor modelinghypotheticalGrid market and that the First Bank of G is areasonable(andimplementable)approximationofthis method.Theseresultsaresomewhatsurpris-ing given the discreteandsharplychangingsup-ply anddemandfunctionsusedby our producersandconsumers.Smale’s proofsassumecontinu-ousfunctionsandreadilyavailablepartialderiva-tives. We alsonotethat auctioneering,while at-

0�

2000�

4000�

6000�

8000�

10000�

Time (s)

0

1000

2000

3000

4000

5000

Exc

ess

Dem

and

Figure 5. First Bank of G CPU excess demandfor the under -demand case . The units areCPU slots.

tractive from animplementationstandpoint,doesnot producestablepricing or market equilibrium.If Grid resourceallocationdecisionsarebasedonauctions,they will sharethis instability andlackof fairness. Conversely, a commoditiesmarketformulation,at leastin simulation,performsbet-ter from the standpointof the Grid as a whole.Theseresultsagreewith thosereportedin [30]which indicatethat auctionsarelocally advanta-geous,but mayexhibit volatileemergentbehaviorsystemwide.

For the over-demandedmarket case,we in-creasedthe numberof consumersto 500 leavingall otherparametersfixed. Theresultswe similarpromptingusto omit their bulk in favor of space,with oneexception. Figure11 shows thepricinginformation using Smale’s methodfor the over-demandmarket, andFigure12 shows the pricesdeterminedby the First Bank of G. Note thatSmale’smethoddeterminesahigherpricefor diskthanCPUandthattheFirstBankof G (whichcor-rectly identifiesthe CPU as the more expensivecommodity)choosesa significantlyhigherpricefor CPU, but a lower price for disk. While it

12

0�

2000�

4000�

6000�

8000�

10000�

Time (s)

0

1000

2000

3000

4000

5000

Exc

ess

Dem

and

Figure 6. First Bank of G disk excess demandfor the under -demand case . The units aresim ulated file units.

seemsthatonemethodor theotherasdetermineda non-equilibriumprice, excessdemandgraphs(Figures13and 14) for CPUshow thatthey botharecenteredon market equilibrium. While it isdifficult to readfrom the graphs(we usea uni-form scaleso that all graphsin this study of acertaintypemaybecompared),themeanexcessdemandfor the datashown in Figure13 is ��� ��� ,andthetheFirst Bankof G datain Figure14, themeanexcessdemandis �a� ��  . Bothof thesevaluesarenearenoughto zeroto show equilibrium,webelieve, but the price inversionis difficult to ex-plain. We conjecturethatSmale’s method,whichreliesuponprobingthemarket to observe partialderivatives,becomesinsensitive to price fluctua-tion nearmarket saturation.That is, in the over-demandcase,smallpricechangesto do not yieldmeaningfulchangesin excessdemand(the de-mandis constantandhigh) so partial derivativesmaynot beobserved. TheFirst Bankof G, how-ever, usestatonnementwhenexcessdemandex-ceedsapre-specifiedthresholdcausingit to drivetheprice in the“right” direction. TheFirst Bankof G, then,will continueto raisethe price until

0�

2000�

4000�

6000�

8000�

10000�

Time (s)

0

100

200

300

400

500

Pric

e�

Figure 7. Auction prices for the under -demand case, average CPU price onl y, in $G

demandis extinguished.It is worth noting,how-ever, that neithermethodcentersexcessdemandfar from zeroandmarket equilibrium.

3.2 Efficiency

While commodities markets using Smale’smethodof pricedeterminationappearto offer bet-ter theoreticalandsimulatedeconomicproperties(equilibriumandpricestability) thanauctionsdo,we also wish to considerthe effect of the twopricing schemeson producerandconsumereffi-ciency. To do so,we reportthe averagepercent-ageof timeeachresourceis occupiedasautiliza-tion metricfor suppliers,andtheaveragenumberof jobs/minuteeachconsumerwasable to com-pleteasa consumermetric. Table2 summarizesthesevaluesfor boththeover- andunder-demandcases.

In termsof efficiency, Smale’s methodis bestandtheFirst Bankof G achievesalmostthesameresults.Both aresignificantlybetterthantheauc-tion in all metricsexcept disk utilization in theover-demandedcase.SinceCPUsarethe scarceresource,diskpricemayfluctuatethroughasmall

13

efficiency metric underdemand overdemand

Smaleconsumerjobs/min 0.14j/m 0.05j/mB of G consumerjobs/min 0.13j/m 0.04j/mauctionconsumerjobs/min 0.07j/m 0.03j/m

SmaleCPU utilization% 60.7% 98.2%B of G CPU utilization% 60.4% 93.9%auctionCPU utilization% 35.2% 85.5%

Smaledisk utilization% 54.7% 88.3%B of G disk utilization% 54.3% 84.6%auctiondisk utilization% 37.6% 85.1%

Table 2. Consumer and Producer efficiencies

0�

2000�

4000�

6000�

8000�

10000�

Time (s)

0

100

200

300

400

500

Pric

e

Figure 8. Auction prices for the under -demand case, average disk price onl y, in $G

rangewithout consequencewhen lack of CPUsupplythrottlesthesystem.Theauctionseemstoachieveslightly betterdiskutilizationundertheseconditions.In general,however, Smale’s methodandtheFirst Bankof G approximationbothout-performtheauctionin thesimulatedGrid setting.

4 Conclusionsand Futur e Work

In this paper, we investigateG-commerce—computationaleconomiesfor controllingresource

0�

2000�

4000�

6000�

8000�

10000�

Time (s)

0

1000

2000

3000

4000

5000

Abs

olut

e E

xces

s D

eman

d

¡

Figure 9. Auction absolute excess demand forCPU in the under -demand case . The units areCPU slots.

allocationComputationalGrid settings. We de-fine hypotheticalresourceconsumers(represent-ing usersand Grid-aware applications)and re-sourceproducers(representingresourceownerswho “sell” their resourcesto the Grid). Whiletherearean infinite numberof waysto representindividual resourcesupplyanddemandin simu-lated setting,and noneare completelyaccurate,we have identifieda setof traits that we believearerealistic.

14

0�

2000�

4000�

6000�

8000�

10000�

Time (s)

0

1000

2000

3000

4000

5000

Abs

olut

e E

xces

s D

eman

d

¡

Figure 10. First Bank of G absolute excessdemand for CPU in the under -demand case .The units are CPU slots.

e All entitiesexceptthe market-maker act in-dividually in their respectiveself-interests.e Producersconsiderlong-termprofit andpastperformancewhendecidingto sell.e Consumersaregivenperiodicbudgetreplen-ishmentsandspendopportunistically.e Consumersintroducework loadsin bulk atthebeginningof eachsimulatedday, andran-domly throughouttheday.

Using simulated consumersand producersobeying these constraints,we investigate twomarket strategies for setting prices: commodi-ties markets and auctions. Commoditiesmar-kets are a natural choice given the fundamen-tal tenetsof the Grid [15]. Auctions, however,aresimpleto implementandwidely studied.Weareinterestedin which methodologyis mostap-propriatefor Grid settings. To investigatethisquestion,we examinethe overall price stability,marketequilibrium,producerefficiency,andcon-sumerefficiency achieved by three methodsinsimulation. The first implementsthe theoretical

0�

2000�

4000�

6000�

8000�

10000�

Time (s)

0

100

200

300

400

500

Pric

e�

Figure 11. Smale’s CPU and disk prices for theover-demand case . Solid line is CPU price ,dotted line is disk price , and The units are$G.

work of Smale[26] which describeshow to ad-just prices in a commoditiesmarket to achieveequilibrium. It is viable in simulation,but im-practicalin the “real-world” asit relieson beingableto poll reliably producersandconsumersforsupply anddemandinformation. Often they donot know, or will not saywhattheir responseto agivenpricewill be.Thesecondmethod(TheFirstBank of G) is an implementableapproximationto Smale’s method. It usesa large-degreepoly-nomial to approximateexcessdemandfunctionsinsteadof polling making it parameterizablebyobservedmarket behavior only. Lastly, we simu-lateauctionsin thestylethathasbeeninvestigatedpreviously.

Our resultsshow that Smale’s resultshold forour simulatedGrid environment, despitebadlybehaved excessdemandfunctions, and that theFirstBankof G achievesresultsonly slightly lessdesirable. In all cases,auctionsare an inferiorchoice.

As part of our future work, we plan two par-allel thrusts.First, we areexploring thespaceof

15

0�

2000�

4000�

6000�

8000�

10000�

Time (s)

0

100

200

300

400

500

Pric

e

Figure 12. First Bank of G CPU and disk pricesfor the over-demand case . Solid line is CPUprice , dotted line is disk price , and The unitsare $G.

plausibleG-commerceformulations.Our goal isto identify andtest,in simulation,differentpossi-ble economiesfor theGrid. Secondly, we plantoconstructa working versionof the First Bank ofG. Our previouswork with theNetwork WeatherService[32, 34] andIBP [23] leavesus with theinfrastructurenecessaryto build alargescalesup-ply anddemandinformationrepository. UsingtheFirst Bankof G, we cangeneratepricesbasedon“li ve” supplyanddemandinformation.

References

[1] D. Abramson,J. Giddy, I. Foster, andL. Kotler.High PerformanceParametric Modeling withNimrod/G: Killer Application for the GlobalGrid ? In Proceedingsof the InternationalParallel andDistributedProcessingSymposium,May 2000.

[2] O. Arndt, B. Freisleben, T. Kielmann, andF. Thilo. Schedulingparallel applicationsinnetworks of mixed uniprocessor/multiprocessorworkstations.In Proceedingsof ISCA11thCon-

0�

2000�

4000�

6000�

8000�

10000�

Time (s)

0

1000

2000

3000

4000

5000

Exc

ess

Dem

and

Figure 13. Smale’s CPU excess demand forthe over-demand case . The units are CPUslots.

ferenceon Parallel andDistributedComputing,September1998.

[3] F. Berman,A. Chien, K. Cooper, J. Dongarra,I. Foster, L. J. Dennis Gannon,K. Kennedy,C. Kesselman,D. Reed, L. Torczon, , andR. Wolski. The gradsproject: Software sup-port for high-level grid applicationdevelopment.TechnicalReport Rice COMPTR00-355,RiceUniversity, February2000.

[4] F. Berman,R. Wolski, S. Figueira, J. Schopf,and G. Shao. Application level schedulingondistributedheterogeneousnetworks.In Proceed-ingsof Supercomputing1996, 1996.

[5] J. Bredin, D. Kotz, andD. Rus. Market-basedResourceControl for Mobile Agents. Techni-cal ReportPCS-TR97-326,DartmouthCollege,ComputerScience,Hanover, NH, Nov. 1997.

[6] J.Bredin,D. Kotz,andD. Rus.Market-basedre-sourcecontrol for mobileagents.In SecondIn-ternationalConferenceon AutonomousAgents,pages197–204.ACM Press,May 1998.

[7] J. Bredin, D. Kotz, andD. Rus. Utility drivenmobile-agentscheduling. Technical ReportPCS-TR98-331,DartmouthCollege, ComputerScience,Hanover, NH, October1998.

16

0�

2000�

4000�

6000�

8000�

10000�

Time (s)

0

1000

2000

3000

4000

5000

Abs

olut

e E

xces

s D

eman

d

¡

Figure 14. First Bank of G CPU excess de-mand for the over-demand case . The unitsare CPU slots.

[8] H. Casanova andJ.Dongarra.NetSolve: A Net-work Server for SolvingComputationalScienceProblems. TheInternationalJournal of Super-computerApplicationsand High PerformanceComputing, 1997.

[9] H. Casanova, G. Obertelli, F. Bermand, andR. Wolski. TheAppLeSParameterSweepTem-plate: User-Level Middleware for the Grid. InProceedingsof SC00, November2000. to ap-pear.

[10] J.Q. ChengandM. P. Wellman. TheWALRASalgorithm: A convergentdistributed implemen-tationof generalequilibriumoutcomes.Compu-tational Economics, 12:1–24,1998.

[11] B. Chun and D. E. Culler. Market-basedproportional resource sharing for clus-ters. Millenium Project ResearchReport,http://www.cs.be rk el ey .e du/ ˜b nc /papers/market.pd f , Sep1999.

[12] B. N. ChunandD. E. Culler. Market-basedpro-portional resourcesharingfor clusters. Mille-nium ProjectResearchReport,Sep.1999.

[13] G. Debreu. Theoryof Value. Yale UniversityPress,1959.

[14] I. Fosterand C. Kesselman.Globus: A meta-computinginfrastructuretoolkit. InternationalJournalof SupercomputerApplications, 1997.

[15] I. FosterandC. Kesselman.TheGrid: Blueprintfor a New ComputingInfrastructure. MorganKaufmannPublishers,Inc., 1998.

[16] I. Foster, A. Roy, and L. Winkler. A qualityof servicearchitecturethat combinesresourcereservation andapplicationadaptation.In Pro-ceedingsof TERENA NetworkingConference,2000. to appear.

[17] J.GehrinfandA. Reinfeld. Mars- a frameworkfor minimizing thejob executiontime in ameta-computingenvironment. Proceedingsof Futuregeneral ComputerSystems, 1996.

[18] A. S.Grimshaw, W. A. Wulf, J.C. French,A. C.Weaver, andP. F. Reynolds. Legion: The nextlogical step toward a nationwidevirtual com-puter. TechnicalReportCS-94-21,UniversityofVirginia,1994.

[19] J. M. M. Ferris,M. Mesnier. Neosandcondor:Solving optimization problemsover the inter-net. TechnicalReport ANL/MCS-P708-0398,Argonne National Laboratory, March 1998.http://www- fp. mcs.a nl .g ov /o tc/Guide/TechRepo rt s/ ind ex .h tml .

[20] H. Nakada,H. Takagi, S. Matsuoka,U. Na-gashima,M. Sato, and S. Sekiguchi. Utiliz-ing themetaserverarchitecturein theninf globalcomputingsystem. In High-PerformanceCom-puting and Networking’98, LNCS1401, pages607–616,1998.

[21] N. Nisan,S. London,O. Regev, andN. Camiel.Globally distributedcomputationover theInter-net— thePOPCORNproject. In InternationalConferenceon DistributedComputingSystems,1998.

[22] N. N. Ori Regev. Thepopcornmarket- anonlinemarket for computationalresources.First Inter-nationalConferenceOn InformationandCom-putation Economies.CharlestonSC, 1998. Toappear.

[23] J. Plank, M. Beck, and W. Elwasif. IBP: Theinternetbackplaneprotocol. TechnicalReportUT-CS-99-426,Universityof Tennessee,1999.

[24] B. Rajkumar. Ecogrid home pagehttp://www.css e. monas h. edu.au/˜rajkumar/e co gr id/ in dex. ht ml .

17

[25] B. Rajkumar. economygrid home pagehttp://www.compu ti ngport als .org/projects/eco nomyManager .x ml .html .

[26] S.Smale.Dynamicsin generalequilibriumthe-ory. AmericanEconomicReview, 66(2):284–294,May 1976.

[27] S. Smale. Convergent processof price adjust-mentandglobalnewtonmethods.Contributionsto EconomicAnalysis, 105:191–205,1977.

[28] T. TannenbaumandM. Litzkow. Thecondordis-tributedprocessingsystem.Dr. DobbsJournal,February1995.

[29] C. A. Waldspurger, T. Hogg,B. Huberman,J.O.Kephart,andS.Stornetta.Spawn: A distributedcomputationaleconomy. IEEE TransactionsonSoftware Engineering, 18(2):103–117,February1992.

[30] C. A. Waldspurger, T. Hogg, B. A. Huberman,J. O. Kephart, and W. S. Stornetta. Spawn:A distributed computationaleconomy. IEEETrans.onSoftwareEngineering, 18(2):103–117,February1992.

[31] L. Walras.Elementsof pure economics;or, Thetheoryof socialwealth. Allen andUnwin, 1954.

[32] R. Wolski. Dynamically forecastingnetworkperformanceusingthenetwork weatherservice.Cluster Computing, 1998. also available fromhttp://www.cs.utk.edu/ rich/publications/nws-tr.ps.gz.

[33] R. Wolski, J.Plank,andJ.Brevik. g-commerce– building computationalmarketplacesfor thecomputationalgrid. TechnicalReportUT-CS-00-439,Universityof Tennessee,April 2000.

[34] R. Wolski, N. Spring, and J. Hayes. Thenetwork weatherservice:A distributedresourceperformancefore castingservicefor metacom-puting. Future Generation ComputerSystems,15(5-6):757–768,October1999. availablefromhttp://www.cs.ut k. edu/ ˜r ich /p ubli ca tio ns /n ws-arch.ps.gz .

18